ar nestedap asig, imode, imaxdel, idel1, igain1[, idel2, igain2 [, idel3, igain3]]
Three different nested all-pass filters, useful for implementing reverbs.
imode - operating mode of the filter:
idel1, idel2, idel3 - delay times of the filter stages. Delay times are in seconds and must be greater than zero. idel1 must be greater than the sum of idel2 and idel3.
igain1, igain2, igain3 - gain of the filter stages.
imaxdel - will be necessary if k-rate delays are implemented. Not currently used.
asig - input signal
If imode = 1, the filter takes the form:
If imode = 2, the filter takes the form:
If imode = 3, the filter takes the form:
instr 5 insnd = p4 gasig diskin insnd, 1 endin instr 10 imax = 1 idel1 = p4 igain1 = p5 idel2 = p6 igain2 = p7 idel3 = p8 igain3 = p9 idel4 = p10 igain4 = p11 idel5 = p12 igain5 = p13 idel6 = p14 igain6 = p15 afdbk init 0 aout1 nestedap gasig+afdbk*.4, 3, imax, idel1, igain1, idel2,\\ igain2, idel3, igain3 aout2 nestedap aout1, 2, imax, idel4, igain4, idel5, igain5 aout nestedap aout2, 1, imax, idel6, igain6 afdbk butterlp aout, 1000 outs gasig+(aout+aout1)/2, gasig-(aout+aout1)/2 gasig = 0 endin ;Score f1 0 8192 10 1 ; Diskin ; Sta Dur Soundin i5 0 3 1 ; Reverb ; St Dur Del1 Gn1 Del2 Gn2 Del3 Gn3 Del4 Gn4 Del5 Gn5 Del6 Gn6 i10 0 4 97 .11 23 .07 43 .09 72 .2 53 .2 119 .3 e
Hans Mikelson
February 1999
New in Csound version 3.53