Simple delay line with no interpolation which uses a buffer for its internal
memory.
Warning: For reasons of efficiency, the effective buffer size is the
allocated size rounded down to the next power of two. For example, if 44100
samples are allocated, the maximum delay would be 32768 samples. Also note that
the buffer must be monophonic.
Examples
// Random white-noise decay// allocate bufferval b = Buffer.alloc(s, (0.2 * s.sampleRate).toInt.nextPowerOfTwo, 1)
// Dust randomly triggers Decay to create an exponential// decay envelope for the WhiteNoise input source.// We apply a slight filter to the delayed signal// so it is easier to distinguish
play {
val z = Decay.ar(Dust.ar(1) * 0.5, 0.3) * WhiteNoise.ar
LPF.ar(BufDelayN.ar(b.id, z, 0.2), 8000) + z // input is mixed with delay
}
b.free() // do this after the synth has ended
Simple delay line with no interpolation which uses a buffer for its internal memory.
Warning: For reasons of efficiency, the effective buffer size is the allocated size rounded down to the next power of two. For example, if 44100 samples are allocated, the maximum delay would be 32768 samples. Also note that the buffer must be monophonic.
Examples
BufDelayC
BufDelayL