sr      =       44100
        kr      =       4410
        ksmps   =       10
        nchnls  =       2
 
gamixl  init    0       ;declare and init the global send variables
gamixr  init    0
 
;N.B. All the effects instruments must be used in conjunction with instr 100, which
;zeros the global variables after each sample.
 
        instr   1
igain   =       p4      ;initial gain factor
ifileno =       p5      ;soundin file number
iwet    =       p6      ;proportion of signal to effects
idry    =       p7      ;proportion of signal output dry
iskip   =       p8      ;optional skip time in file
 
al,ar   soundin ifileno,iskip
al      =       al * igain     ;adjust initial gains  
ar      =       ar * igain
gamixl  =       gamixl + al * iwet     ;proportions to effects
gamixr  =       gamixr + ar * iwet
        outs    al * idry, ar * idry   ;proportions straight out
        endin
 
        instr   90      ;straight comb
igain   =       p4      ;overall gain factor
irvt    =       p5      ;reverb time
ilpt    =       p6      ;loop time (delay)
aleft   comb    gamixl,irvt,ilpt
aright  comb    gamixr,irvt,ilpt
        outs    aleft*igain,aright*igain
        endin
 
        instr   91      ;straight alpass
igain   =       p4      ;overall gain factor
irvt    =       p5      ;reverb time
ilpt    =       p6      ;loop time (delay)
aleft   alpass  gamixl,irvt,ilpt
aright  alpass  gamixr,irvt,ilpt
        outs    aleft*igain,aright*igain
        endin
 
        instr   92      ;straight csound reverb
igain   =       p4      ;overall gain factor
irvt    =       p5      ;reverb time
aleft   reverb  gamixl,irvt
aright  reverb  gamixr,irvt
        outs    aleft*igain,aright*igain
        endin
 
        instr   93      ;straight csound reverb2
igain   =       p4      ;overall gain factor
irvt    =       p5      ;reverb time
ihdiff  =       p6      ;high freq diffusion factor (0-1)
aleft   reverb2 gamixl,irvt,ihdiff
aright  reverb2 gamixr,irvt,ihdiff
        outs    aleft*igain,aright*igain
        endin
        
        instr   94      ;homemade comb/resonator
igain   =       p4      ;overall gain factor
ifeed   =       p5
idelay  =       p6      ;must be > 1/krate
aleft   init    0
aright  init    0
ainl    =       gamixl+aleft*ifeed
ainr    =       gamixr+aright*ifeed
aleft   delay   ainl,idelay
aright  delay   ainr,idelay
        outs    aleft*igain,aright*igain
        endin
 
        instr   99      ;comb variant for tuned resonance
igain   =       p4      ;overall gain factor
irvt    =       p5      ;reverb time
ilpt    =       1/cpspch(p6)   ;compute ilpt from desired pitch
aleft   comb    gamixl,irvt,ilpt
aright  comb    gamixr,irvt,ilpt
        outs    aleft*igain,aright*igain
        endin
 
        instr   100     ;zero the globals
gamixl  =       0       ;zero the global variables
gamixr  =       0
        endin                                 
        

;test various comb, alpass, and reverb effects on input sounds
;soundin.300 = balloons.wav
;soundin.301 = blackorpheus.wav
;       st      dur     igain   ifile   iwet    idry    iskip
i01     0       5       1       300     0       1       0
i01     6       .       .       .       .5      .5             
i01     12
i01     18
i01     24
i01     30
i01     36
;comb instrument
;       st      dur     igain   irvt    ilpt
i90     6       6       .5      .01     .01
i90     +       .       .       .       .005
i90     +       .       .4      .       .001
i90     +       .       .       .4      .01
i90     +       .       .       .       .005
i90     +       .       .3      .       .001
;zero the globals instrument
i100    0       42
s
f0      1
s
;       st      dur     igain   ifile   iwet    idry    iskip
i01     0       5       1       300     0       1       0
i01     6       .       .       .       .5      .5             
i01     12
i01     18
i01     24      .       .       .       1       1
i01     32
i01     40
;alpass instrument
;       st      dur     igain   irvt    ilpt
i91     6       6       .5      .01     .01
i91     12      .       .       .       .005
i91     18      .       .4      .       .001
i91     24      8       .5      3       .01
i91     32      .       .       .       .005
i91     40      .       .       .       .001
;zero the globals instrument
i100    0       48
s
f0      1
s
i01     0       5       1       300     0       1       0
i01     6       .       .       .       .5      .5             
i01     12
i01     18
i01     24
i01     30
i01     36
;delay/feedback instrument
;       st      dur     igain   ifeed   ilpt
i94     6       6       .5      .7      .01
i94     +       .       .       .       .005
i94     +       .       .4      .       .001
i94     +       .       .       .9      .01
i94     +       .       .       .       .005
i94     +       .       .3      .       .001
;zero the globals instrument
i100    0       42
s
f0      1
s
;       st      dur     igain   ifile   iwet    idry    iskip
i01     0       5       1       300     .5      .5
i01     6
;comb resonator instrument. same as i90, but specify desired pitch in p6
;       st      dur     igain   irvt    ipch
i99     0       6       .5      .01     7.00
i99     0       .       .       .       7.07
i99     0       .       .       .       8.04
i99     6       .       .       .4      7.00
i99     6       .       .       .       7.07
i99     6       .       .       .       8.04
i100    0       12
s
f0      1
s
;       st      dur     igain   ifile   iwet    idry    iskip
i01     0       5       1       300     0       1       0
i01     6       5       1       300     .5      1       0
i01     14      
i01     24      10      1       301     0       1
i01     35      10      1       301     .5      1
i01     48
;reverb instrument
;       st      dur     igain   irvt    
i92     6       7       .4      2       
i92     14      9       .       4       
i92     35      12      .       2
i92     48      14      .       4       
;zero the globals instrument
i100    0       62
s
f0      1
s
;       st      dur     igain   ifile   iwet    idry    iskip
i01     0       5       1       300     .5      1       0
i01     8       
i01     16
i01     24
i01     34
i01     44
;reverb2 instrument
;       st      dur     igain   irvt    ihdif   
i93     0       7       .4      2       0
i93     8       .       .       .       .5
i93     16      .       .       .       1
i93     24      9       .       4       0
i93     34      .       .       .       .5
i93     44      .       .       .       1
;zero the globals instrument
i100    0       53
s
f0      1
s
;repeat reverb2 tests with soundin 301
i01     0       10      1       301     .5      1
i01     13
i01     26
i01     38
i01     53
i01     68
;reverb2 instrument
;       st      dur     igain   irvt    ihdif   
i93     0       12      .4      2       0
i93     13      .       .       .       .5
i93     26      .       .       .       1
i93     38      14      .       4       0
i93     53      .       .       .       .5
i93     68      .       .       .       1
;zero the globals instrument
i100    0       82
e              

Download effects.orc

Download effsnds.zip

Download effects.sco