class library: SynthDef - lazy implementation of removeUGen
[supercollider.git] / HelpSource / Classes / BBandStop.schelp
blob6b0da3156f68cb8a51a1cc3b10788d405508570c
1 class:: BBandStop
2 summary:: Band reject filter
3 categories:: UGens>Filters>BEQSuite
4 related:: Classes/SOS, Classes/BLowPass, Classes/BLowPass4, Classes/BHiPass, Classes/BHiPass4, Classes/BPeakEQ, Classes/BLowShelf, Classes/BHiShelf, Classes/BBandPass, Classes/BAllPass
6 description::
7 The B equalization suite is based on the Second Order Section (link::Classes/SOS::) biquad UGen.
9 note::
10 Biquad coefficient calculations imply certain amount of CPU overhead. These plugin UGens contain optimizations such that the coefficients get updated only when there has been a change to one of the filter's parameters. This can cause spikes in CPU performance and should be considered when using several of these units.
13 classmethods::
15 method:: ar
16 argument:: in
17 input signal to be processed.
18 argument:: freq
19 center frequency.
20 argument:: bw
21 the bandwidth in octaves between -3 dB frequencies.
23 examples::
24 code::
25 s.boot;
27 z = {
28 BBandStop.ar(
29         SoundIn.ar([0,1]),
30         MouseX.kr(20, 20000, \exponential),
31         MouseY.kr(0.0, 10.0, \linear), // bw
32         0.5); // mul
33 }.play)
34 z.release;
37 z = {
38 BBandStop.ar(
39         WhiteNoise.ar ! 2,
40         MouseX.kr(20, 20000, \exponential),
41         MouseY.kr(0.0, 10.0, \linear), // bw
42         0.1); // mul
43 }.play)
44 z.release;
47 z = { // drill...
48 BBandStop.ar(
49         SinOsc.ar(1000) ! 2,
50         MouseX.kr(800, 1200, \exponential),
51         MouseY.kr(0.0, 10.0, \linear), // bw
52         0.1); // mul
53 }.play)
54 z.release;
57 z = { // nada
58 BBandStop.ar(
59         SinOsc.ar(1000) ! 2,
60         1000,
61         MouseY.kr(0.0, 10.0, \linear), // bw
62         0.5); // mul
63 }.play)
64 z.release;