resonx
Emulates a stack of filters using the reson opcode.
resonx passes the input through a series of reson filters. All layers use the same center frequency, bandwidth, and scaling mode. More layers give a sharper combined response.
Syntax
Initialization
inumlayer (optional) -- number of elements in the filter stack. Default value is 4.
iscl (optional, default=0) -- scaling mode for each layer, as in reson. A value of 1 gives each layer a peak gain of 1. A value of 2 gives each layer an RMS gain of 1 for white-noise input; this does not make the combined filter's RMS gain equal to 1. A value of 0 applies no scaling. Use balance if you need to adjust the final output level.
iskip (optional, default=0) -- 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.
xcf -- center frequency of each layer in Hz, at control or audio rate.
xbw -- bandwidth of each layer in Hz, at control or audio rate. This is the difference between that layer's upper and lower half-power frequencies. The combined filter has a narrower bandwidth when it contains more than one layer.
At each sample, every layer uses the same current xcf and xbw values. Either parameter can be audio-rate while the other is control-rate.
Examples
Here is an example of the resonx opcode. It uses the file resonx.csd.
See also
Standard Filters: Resonant Low-pass filters
Credits
Author: Gabriel Maldonado (adapted by John ffitch)
Italy
New in Csound version 3.49
Audio rate parameters introduced in version 6.02
November 2013.