fofilter
Prev | Orchestra Opcodes and Operators | Next

## fofilter

fofilter — Formant filter.

## Description

Fofilter generates a stream of overlapping sinewave grains, when fed with a pulse train. Each grain is the impulse response of a combination of two BP filters. The grains are defined by their attack time (determining the skirtwidth of the formant region at -60dB) and decay time (-6dB bandwidth). Overlapping will occur when 1/freq < decay, but, unlike FOF, there is no upper limit on the number of overlaps. The original idea for this opcode came from J McCartney's formlet class in SuperCollider, but this is possibly implemented differently(?).

## Syntax

    asig fofilter ain, kcf, kris, kdec[, istor]

## Initialization

istor --initial disposition of internal data space. Since filtering incorporates a feedback loop of previous output, the initial status of the storage space used is significant. A zero value will clear the space; a non-zero value will allow previous information to remain. The default value is 0.

## Performance

asig -- input signal.

kcf -- filter centre frequency

kris -- impulse response attack time (secs).

kdec -- impulse response decay time (secs).

## Examples

Here is an example of the fofilter opcode. It uses the file fofilter.csd.

Example 278. Example of the fofilter opcode.

See the sections Real-time Audio and Command Line Flags for more information on using command line flags.

    <CsoundSynthesizer>
    <CsOptions>
    ; Select audio/midi flags here according to platform
    -odac     ;;;realtime audio out
    ;-iadc    ;;;uncomment -iadc if realtime audio input is needed too
    ; For Non-realtime ouput leave only the line below:
    ; -o fofilter.wav -W ;;; for file output any platform
    </CsOptions>
    <CsInstruments>

    sr = 44100
    ksmps = 32
    nchnls = 2
    0dbfs  = 1

    instr 1

    kfe  expseg 10, p3*0.9, 180, p3*0.1, 175
    kenv linen .1, 0.05, p3, 0.05
    asig buzz  kenv, kfe, sr/(2*kfe), 1
    afil fofilter asig, 900, 0.007, 0.04
         outs  afil, afil

    endin
    </CsInstruments>
    <CsScore>
    ; sine wave
    f 1 0 16384 10 1

    i 1 0 10
    e
    </CsScore>
    </CsoundSynthesizer>

## Credits

Author: Victor Lazzarini
January 2005

New plugin in version 5

Prev | Up | Next
fof2 | Home | fog