1 //----------------------------|
2 // on-the-fly synchronization
3 // adapted from Perry's ChucK Drummin' + Ge's sine poops
5 // authors: Perry Cook (prc@cs.princeton.edu)
6 // Ge Wang (gewang@cs.princeton.edu)
7 // --------------------|
8 // add one by one into VM (in pretty much any order):
10 // terminal-1%> chuck --loop
12 // terminal-2%> chuck + otf_01.ck
14 // terminal-2%> chuck + otf_02.ck
16 //--------------------------------------|
18 // synchronize to period
22 sinosc s => gain g => JCRev r => dac;
28 2 * std.rand2(0,4) => int freq;
29 if( freq == 6 ) 7 => freq;
30 if( freq == 8 ) 9 => freq;
32 std.mtof( 69.0 + (float)(std.rand2(0,2)*12 + freq) ) => s.freq;
34 if( std.randf() > -.5 )