linux: shared memory interface - link with librt
[supercollider.git] / HelpSource / Classes / BufDelayN.schelp
blobc30b036ff3b4b448bd766d6626166caae0807e11
1 class:: BufDelayN
2 summary:: Buffer based simple delay line with no interpolation.
3 related:: Classes/BufDelayC, Classes/BufDelayL, Classes/DelayN
4 categories::  UGens>Delays>Buffer
7 Description::
9 Simple delay line with no interpolation which uses a buffer for its
10 internal memory. See also  link::Classes/BufDelayL::  which uses linear
11 interpolation, and  link::Classes/BufDelayC::  which uses cubic
12 interpolation. Cubic interpolation is more computationally expensive
13 than linear, but more accurate.
16 classmethods::
18 method::ar, kr
20 argument::buf
21 Buffer number.
23 argument::in
24 The input signal.
26 argument::delaytime
27 Delay time in seconds.
29 discussion::
30 Warning:: For reasons of efficiency, the effective buffer size is limited to the previous power of two. So, if 44100 samples are allocated, the maximum delay would be 32768 samples.
33 Examples::
35 code::
37 // allocate buffer
38 b = Buffer.alloc(s,44100,1);
41 // Dust randomly triggers Decay to create an exponential
42 // decay envelope for the WhiteNoise input source
44 z = Decay.ar(Dust.ar(1,0.5), 0.3, WhiteNoise.ar);
45 BufDelayN.ar(b.bufnum, z, 0.2, 1, z); // input is mixed with delay via the add input
46 }.play