// patch BlowHole hole => dac; // scale [0, 2, 4, 7, 9, 11] @=> int scale[]; <<< "reed stiffness:", hole.reed() >>>; <<< "noise gain:", hole.noiseGain() >>>; <<< "tonehole state:", hole.tonehole() >>>; <<< "register state:", hole.vent() >>>; <<< "breath pressure:", hole.pressure() >>>; // infinite time loop while( true ) { // change parameters if( Std.rand2f(0,1) > .75 ) { Std.rand2f( 0, 1 ) => hole.reed; Std.rand2f( 0, 1 ) => hole.noiseGain; Std.rand2f( 0, 1 ) => hole.tonehole; Std.rand2f( 0, 1 ) => hole.vent; Std.rand2f( 0, 1 ) => hole.pressure; // print <<< "going...", "" >>>; <<< "reed stiffness:", hole.reed() >>>; <<< "noise gain:", hole.noiseGain() >>>; <<< "tonehole state:", hole.tonehole() >>>; <<< "register state:", hole.vent() >>>; <<< "breath pressure:", hole.pressure() >>>; } // set freq scale[Std.rand2(0,scale.cap()-1)] => int note; 33 + Std.rand2(0,4)*12 + note => Std.mtof => hole.freq; <<< "note: ", Std.ftom( hole.freq() ) >>>; // go .8 => hole.noteOn; // advance time 1::second => now; }