DELAY
DELAY is a simple, regenerating delay instrument.
It has parameters for regeneration (amount of feedback) and for ring-down time, so that the delay decays naturally.
Syntax:
makegen(1, 24, 1000, t0, a0, t1, a1) /* amplitude envelope in time/amplitude pairs */
DELAY(outskip, inskip, duration, amplitude, delaytime, regeneration, ringdown, inchan, spread) /* regeneration should be less than 1 */
in comment form:
/* DELAY: regenerating delay instrument
*
* p0 = output start time
* p1 = input start time
* p2 = input duration
* p3 = amplitude multiplier
* p4 = delay time
* p5 = regeneration multiplier (< 1.0!)
* p6 = ring-down duration
* p7 = input channel number
* p8 = stereo spread (0.0-1.0)
* assumes function slot 1 is the amplitude envelope
*/
An example score:
rtsetparams(44100, 2)
load("DELAY")
rtinput("/sndgr/bob.dole.mono")
makegen(1, 24, 1000, 0,0, 0.5,1, 3.5,1, 7,0)
DELAY(0, 0, 7, 0.7, .14, 0.7, 3.5)
makegen(1, 24, 1000, 0,0, 0.1,1, 1.5,0.21, 3.5,1, 7,0)
DELAY(3.5, 0, 7, 1, 1.4, 0.3, 5)
Another score, using real-tine audio input:
set_option("full_duplex_on")
rtsetparams(44100, 2, 512)
load("DELAY")
rtinput("AUDIO", "MIC")
makegen(1, 24, 1000, 0,1, 100,1)
DELAY(0, 0, 14, 1.0, .078, 0.8, 3.5, 0, 0.1)
DELAY(7, 0, 10, 1, .415, 0.5, 3, 0, 0.9)
A third score:
rtsetparams(44100, 2)
load("DELAY")
rtinput("/snd/pablo1.snd")
makegen(1, 24, 1000, 0,0, 0.5,1, 3.5,1, 7,0)
DELAY(0, 0, 7, 0.5, .14, 0.7, 3.5, 0, 0.1)
makegen(1, 24, 1000, 0,0, 0.1,1, 1.5,0.21, 3.5,1, 7,0)
DELAY(3.5, 0, 7, 1, 1.4, 0.3, 5, 1, 0.9)