onepole~
Description
The onepole~ object implements the simplest of IIR filters, providing a 6dB per octave attenuation. This filter is very efficient and useful for gently rolling off harsh high end and for smoothing out control signals.
Examples

Discussion
The standard difference equation for this filter is
y(n) = a_{0} x(n) + b_{1} y(n-1)
Where
b_{1} = 1 - a_{0}
which can be factored down to
y(n) = y(n-1) + a_{0}[ x(n) - y(n-1) ]
As the value of the a_{0} coefficient is lowered (b_{1} increases) the input will be increasingly smoothed and the effective cutoff frequency (f_c) lowered. Calculating the a_0 coefficient from the f_c cutoff frequency is performed with the equation
a_{0} = sin(f_c * (pi/nyquist))
where f_s is the sampling frequency and f_c the cutoff frequency expressed in Hertz. onepole~ is a more efficient implementation of a biquad~ object with the following coefficients:
a_{0} &= a_{0}
a_{1} &= 0
a_{2} &= 0
b_{1} &= -b_{1}
b_{2} &= 0
Note the sign flip for b_{1} as biquad uses flipped signs for the feedback coefficients.
Arguments
center-frequency [float]
Sets the center frequency for the filter, as described above.
Hz/linear/radians [symbol]
Using the symbols
, , or for an optional second argument sets the frequency input mode. The default mode is Hz (which is the same as providing no mode argument). Using the argument sets the frequency input mode to linear (0 - 1). Using the argument sets the frequency input mode to radians (0 - 1).Attributes
Common Box Attributes
Messages
int
Arguments
float
Arguments
Hz
clear
linear
radians
signal
In right inlet: A signal can be used to set the frequency for the filter, with the same effect as a float. If a signal is connected to this inlet, its value is sampled once every signal vector.
Output
signal
The filtered signal.
See Also
Name | Description |
---|---|
Sound Processing Techniques | Sound Processing Techniques |
biquad~ | |
comb~ | |
cross~ | |
lores~ | |
reson~ | |
svf~ | |
Audio Filtering | Audio Filtering |