/*************************************************** "Vibrato Trajectories" by Darren Nelsen 2007 Code revised 2008 - with updated csound techniques, ie. ftgen and named instruments, and higher sine wave resolution © 2007, 2008 Darren Nelsen. Licensed to the public under http://creativecommons.org/licenses/by-nc-sa/3.0/ ***************************************************/ sr = 44100 ksmps = 1 nchnls = 2 gi_sine ftgen 0, 0, 2^16, 10, 1 gi_sawtooth ftgen 0, 0, 2^14, 10, 1, .5, .333333, .25, .2, .166667, .142857, .125, .111111, .1, .090909, .083333, .076923, .071, .066, .062 gi_square ftgen 0, 0, 2^14, 10, 1, 0, .333333, 0, .2, 0, .142857, 0, .111111, 0, .090909, 0, .076923 instr MainIns ; Main Drone Instrument idur = p3 iamp = p4 ifqc = p5 ifun = p6 iatk = p7 irel = p8 iVibratoSpeed1 = p9 iVibratoSpeed2 = p10 iVibratoSpeed3 = p11 iGoldenRatio = 1.618 ; low freq osc for vibrato kVibratoDepth = k(p12) kVibratoSpeed linseg iVibratoSpeed1, idur/iGoldenRatio, iVibratoSpeed2, idur-(idur/iGoldenRatio), iVibratoSpeed3 ;display kVibratoSpeed, idur iVibratoWaveform = 103 klfo oscil kVibratoDepth, kVibratoSpeed, iVibratoWaveform ; output of the vibrato values outvalue "vibSpeed", kVibratoSpeed outvalue "dur", idur ; amplitude envelope kenv linen iamp, iatk, idur, irel ; two oscillators, detuned slightly creates impression of stereo image asigl oscil kenv, ifqc*0.999*(1+klfo), ifun asigr oscil kenv, ifqc*1.001*(1+klfo), ifun outs asigl, asigr endin instr PanIns ;; TOP LEVEL DRONES/LINES idur = p3 iamp = p4 ifqc = p5 ifun = p6 iatk = p7 irel = p8 iVibratoSpeed1 = p9 iVibratoSpeed2 = p10 iVibratoSpeed3 = p11 iGoldenRatio = 1.618 ; low freq osc for vibrato kVibratoDepth = k(p12) kVibratoSpeed linseg iVibratoSpeed1, idur/iGoldenRatio, iVibratoSpeed2, idur-(idur/iGoldenRatio), iVibratoSpeed3 iVibratoWaveform = 103 klfo oscil kVibratoDepth, kVibratoSpeed, iVibratoWaveform ; output of the vibrato values outvalue "vibSpeed", kVibratoSpeed outvalue "dur", idur ; panning iPanFrom = p13 iPanTo = p14 kPanLine line iPanFrom, idur, iPanTo kpan2 = kPanLine*3.14159265*.5 kpanl = cos(kpan2) kpanr = sin(kpan2) ; amplitude envelope kenv linen iamp, iatk, idur, irel aout oscil kenv, ifqc*(1+klfo), ifun outs aout*kpanl, aout*kpanr endin ; tempo t 0 90 ; MAIN VIBRATO DRONE ; vd = vibrato depth ; vs = vibrato speed ; parameter1 p2 p3 p4 p5 p6 p7 p8 p9 p10 p11 p12 ; instrument st dur amp pch wvshp atk rel vs1 vs2 vs3 vd i "MainIns" 0 310 10000 140 101 10 20 3 20 4 .1 ; MID VIBRATO DRONE ; vd = vibrato depth ; vs = vibrato speed ; parameter1 p2 p3 p4 p5 p6 p7 p8 p9 p10 p11 p12 p13 p14 ; instrument st dur amp pch wvshp atk rel vs1 vs2 vs3 vd panfr panto i "PanIns" 18 280 2500 140 102 20 15 1 10 2 .1 .4 .6 ; HIGHER VIBRATO DRONES ; higher pitched, "moving" lines. i "PanIns" 38 240 4100 280 103 20 15 20 3 7 .6 .9 .1 i "PanIns" 46 . . 260 . . . . . . .5 .1 .9 e Version: 3 Render: File Ask: No Functions: ioObject Listing: ioObject WindowBounds: 317 172 1483 1145 CurrentView: options IOViewEdit: Off Options: -b128 -A -o/Users/darren/Music/Csound/Vibrato Trajectories/Vibrato Trajectories.aif -l -m7 -R ioView background {60108, 65535, 63132} ioListing {75, 438} {699, 325} ioGraph {163, 38} {496, 396} ioSlider {90, 39} {34, 229} 20.000000 2000.000000 139.988007 pitch ioText {64, 267} {87, 24} display 139.988007 0.001000 "pitch" center "Lucida Grande" 10 {0, 0, 0} {65535, 65535, 65535} nobackground noborder ioText {70, 16} {75, 24} label 0.000000 0.001000 "" center "Lucida Grande" 10 {0, 0, 0} {65535, 65535, 65535} nobackground noborder Pitch ioSlider {699, 56} {34, 249} 60.000000 20000.000000 2801.750000 centerFreq ioSlider {746, 105} {207, 34} 1.000000 1000.000000 755.844421 bandwidth ioText {676, 307} {80, 24} display 2801.750000 0.001000 "centerFreq" center "Lucida Grande" 10 {0, 0, 0} {65535, 65535, 65535} nobackground noborder ioText {808, 142} {83, 24} display 755.844421 0.001000 "bandwidth" center "Lucida Grande" 10 {0, 0, 0} {65535, 65535, 65535} nobackground noborder ioText {665, 16} {102, 37} label 0.000000 0.001000 "" center "Lucida Grande" 10 {0, 0, 0} {65535, 65535, 65535} nobackground noborder Bandpass FilterÂCenter Freq ioText {798, 65} {102, 37} label 0.000000 0.001000 "" center "Lucida Grande" 10 {0, 0, 0} {65535, 65535, 65535} nobackground noborder Bandpass FilterÂBandwidth