delayr
Reads from an automatically established digital delay line.
Syntax
ares delayr idlt [, iskip]
Initialization
idlt -- requested delay time in seconds. This can be as large as available memory will permit. The space required for n seconds of delay is 4n * sr bytes. It is allocated at the time the instrument is first initialized, and returned to the pool at the end of a score section.
iskip (optional, default=0) -- initial disposition of delay-loop data space (see reson). The default value is 0.
delayr reads from an automatically established digital delay line, in which the signal retrieved has been resident for idlt seconds. This unit must be paired with and precede an accompanying delayw unit. Any other Csound statements can intervene.
Examples
Here is an example of the delayr opcode. It uses the file delayr.csd.
Example of the delayr opcode. |
---|
| <CsoundSynthesizer>
<CsOptions>
; Select audio/midi flags here according to platform
-odac ;;;RT audio out
;-iadc ;;;uncomment -iadc if RT audio input is needed too
; For Non-realtime ouput leave only the line below:
; -o delayr.wav -W ;;; for file output any platform
</CsOptions>
<CsInstruments>
sr = 44100
ksmps = 32
nchnls = 2
0dbfs = 1
gasig init 0
gidel = 1 ;delay time in seconds
instr 1
ain pluck .7, 440, 1000, 0, 1
outs ain, ain
vincr gasig, ain ;send to global delay
endin
instr 2
ifeedback = p4
abuf2 delayr gidel
adelL deltap .4 ;first tap (on left channel)
adelM deltap 1 ;second tap (on middle channel)
delayw gasig + (adelL * ifeedback)
abuf3 delayr gidel
kdel line 1, p3, .01 ;vary delay time
adelR deltap .65 * kdel ;one pitch changing tap (on the right chn.)
delayw gasig + (adelR * ifeedback)
;make a mix of all deayed signals
outs adelL + adelM, adelR + adelM
clear gasig
endin
</CsInstruments>
<CsScore>
i 1 0 1
i 1 3 1
i 2 0 3 0 ;no feedback
i 2 3 8 .8 ;lots of feedback
e
</CsScore>
</CsoundSynthesizer>
|
See also
Delay