; Septieme.orc ; Anthony Kozar ; October 2005 ; On the web at ; Email ; NOTE: at the time of my posting this file, the pans opcode ; is not yet in canonical Csound (but is on OS 9), so I've ; added the UDO substitute. You may need to remove the UDO ; code with future versions of Csound for this to work. ; Intrument 1 & pans UDO by Anthony Kozar. ; Instrument 99 is the work of another Csounder (see below for source). ; I am placing the portions of this Csound orchestra file ; that are my original work into the public domain. I ; therefore waive all copyright interest in those portions. sr = 44100 nchnls = 2 ;; draft values ;; kr = 4410 ;; ksmps = 10 ;; final values kr = 44100 ksmps = 1 #define OSCOP # poscil # ; oscil, oscili, oscil3, or poscil (not poscil3) #define RNDPHS # rnd(1) # ; replace with 0 for in-phase oscillators ga1 init 0 ga2 init 0 ; stereo version of pan opcode pans, aa, akioo asig, kx, ifn, imode, ioffset xin ky init 1 ;; this should be size of ifn table if imode = 0 aleft, aright, a3, a4 pan asig, kx, ky, ifn, imode, ioffset xout aleft, aright endop ; simple table-lookup oscillator instrument with 2nd oscillator for envelope ; the 2nd oscillator will be played for exactly one period instr 1 idur = p3 iamp = p4 ifreq = p5 ipan = p6 irvrb = p7 ifnum = p8 ienvnum = p9 ipannum = p10 aenv $OSCOP iamp, 1/idur, ienvnum ; envelope oscillator asig $OSCOP aenv, ifreq, ifnum, $RNDPHS al, ar pans asig, ipan, ipannum, 1 ga1 = ga1 + al*irvrb ga2 = ga2 + ar*irvrb outs al, ar endin ; Stanford Reverb ; Available from the Csound FTP site at Bath Univ. ; ftp://earth.cs.bath.ac.uk/pub/dream/documentation/orchestras+scores/reverbs/stanford instr 99 irevfactor = p4 ilowpass = 9000 ioutputscale = p5 idel1 = 1237.000/sr idel2 = 1381.000/sr idel3 = 1607.000/sr idel4 = 1777.000/sr idel5 = 1949.000/sr idel6 = 2063.000/sr idel7 = 307.000/sr idel8 = 97.000/sr idel9 = 71.000/sr idel10 = 53.000/sr idel11 = 47.000/sr idel12 = 37.000/sr idel13 = 31.000/sr icsc1 = .822 * irevfactor icsc2 = .802 * irevfactor icsc3 = .773 * irevfactor icsc4 = .753 * irevfactor icsc5 = .753 * irevfactor icsc6 = .753 * irevfactor icsc7 = .7 * irevfactor acomb1 comb ga1, icsc1, idel1 acomb2 comb ga1, icsc2, idel2 acomb3 comb ga1, icsc3, idel3 acomb4 comb ga1, icsc4, idel4 acomb5 comb ga1, icsc5, idel5 acomb6 comb ga1, icsc6, idel6 acomball = acomb1 + acomb2 + acomb3 + acomb4 + acomb5 + acomb6 allp1 alpass acomball, icsc7, idel7 allp2 alpass allp1, icsc7, idel8 allp3 alpass allp2, icsc7, idel9 alow tone allp3, ilowpass allp4 alpass alow, icsc7, idel10 allp5 alpass allp4, icsc7, idel12 arevout1 = allp5 * ioutputscale acomb1 comb ga2, icsc1, idel1 acomb2 comb ga2, icsc2, idel2 acomb3 comb ga2, icsc3, idel3 acomb4 comb ga2, icsc4, idel4 acomb5 comb ga2, icsc5, idel5 acomb6 comb ga2, icsc6, idel6 acomball = acomb1 + acomb2 + acomb3 + acomb4 + acomb5 + acomb6 allp1 alpass acomball, icsc7, idel7 allp2 alpass allp1, icsc7, idel8 allp3 alpass allp2, icsc7, idel9 alow tone allp3, ilowpass allp4 alpass alow, icsc7, idel10 allp6 alpass allp4,icsc7, idel13 arevout2 = allp6 * ioutputscale outs arevout1, arevout2 ga1 = 0 ga2 = 0 endin