BufCombN buffer based comb delay line with no interpolation
BufCombN.ar(buf, in, delaytime, decaytime, mul, add)
BufCombN.kr(buf, in, delaytime, decaytime, mul, add)
Comb delay line with no interpolation which uses a buffer for its internal memory. See also [BufCombL] which uses linear interpolation, and BufCombC which uses cubic interpolation. Cubic interpolation is more computationally expensive than linear, but more accurate.
See also CombN.
buf - buffer number.
in - the input signal.
delaytime - delay time in seconds.
decaytime - time for the echoes to decay by 60 decibels. If this time is negative then the feedback
coefficient will be negative, thus emphasizing only odd harmonics at an octave lower.
// These examples compare the variants, so that you can hear the difference in interpolation
// allocate buffer
b = Buffer.alloc(s,44100,1);
// Comb used as a resonator. The resonant fundamental is equal to
// reciprocal of the delay time.
{ BufCombN.ar(b, WhiteNoise.ar(0.01), XLine.kr(0.0001, 0.01, 20), 0.2) }.play;
{ BufCombL.ar(b, WhiteNoise.ar(0.01), XLine.kr(0.0001, 0.01, 20), 0.2) }.play;
{ BufCombC.ar(b, WhiteNoise.ar(0.01), XLine.kr(0.0001, 0.01, 20), 0.2) }.play;
// with negative feedback:
{ BufCombN.ar(b, WhiteNoise.ar(0.01), XLine.kr(0.0001, 0.01, 20), -0.2) }.play;
{ BufCombL.ar(b, WhiteNoise.ar(0.01), XLine.kr(0.0001, 0.01, 20), -0.2) }.play;
{ BufCombC.ar(b, WhiteNoise.ar(0.01), XLine.kr(0.0001, 0.01, 20), -0.2) }.play;
// used as an echo.
{ BufCombN.ar(b, Decay.ar(Dust.ar(1,0.5), 0.2, WhiteNoise.ar), 0.2, 3) }.play;