ChucK LFOs

Vibrato
SinOsc osc => dac; 400 => osc.freq; fun void vibrato(float rate, float depth) { 0 => float plfo; while(true) { if((plfo > depth) + (plfo < -depth)) { -rate => rate; } plfo + rate => plfo; osc.freq + rate => osc.freq; 1::samp => now; } } spork ~ vibrato(0.05, 60); 1::second => now;