delayw — Writes the audio signal to a digital delay line.


Writes the audio signal to a digital delay line.


delayw asig


delayw writes asig into the delay area established by the preceding delayr unit. Viewed as a pair, these two units permit the formation of modified feedback loops, etc. However, there is a lower bound on the value of idlt, which must be at least 1 control period (or 1/kr).


Here is an example of the delayw opcode. It uses the file delayw.csd.

Example 220. Example of the delayw opcode.

See the sections Real-time Audio and Command Line Flags for more information on using command line flags.

; 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 delayw.wav -W ;;; for file output any platform

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

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


i 1 0 1
i 1 3 1
i 2 0 3  0	;no feedback
i 2 3 8 .8	;lots of feedback

See also