[chuck-users] rate parameter for StkInstruments?

Robert Poor rdpoor at gmail.com
Wed Sep 30 01:36:18 EDT 2009


A subset of StkInstruments (BlowBotl, BlowHole, Bowed, Brass,  
Clarinet, Flute, Saxofony) take a "rate" parameter.  Looking at the  
source code suggests that it's supposed to control the envelope rate,  
but I'm not convinced.  Setting to values between .001 and 1000.0  
doesn't appear to make any audible difference, at least for the few  
cases I've tried, as in:

Saxofony sax => JCRev r => dac;
.5 => r.gain; .05 => r.mix;

[ 61, 66, 63, 68, 65 ] @=> int notes[];

while( true ) {
     0.5 => sax.stiffness;    0.5 => sax.aperture;
     0.5 => sax.noiseGain;    0.5 => sax.blowPosition;
     6.0 => sax.vibratoFreq;    0.1 => sax.vibratoGain;
     0.5 => sax.pressure;

     for (.01 => float rate; rate <= 10000.0; 10.0 *=> rate) {
         <<< "rate: ", rate >>>;
         rate => sax.rate;
         for( int i; i < notes.cap(); i++ ) {
             Std.mtof( -12 + notes[i] ) => sax.freq;
             0.6 => sax.noteOn;
             300::ms => now;
             1.0 => sax.noteOff;
             100::ms => now;
         }
     }
}

The code examples don't show it being used.

Can anyone shed light on the .rate parameter?  (I was hoping to make a  
Clarinet or Saxofony with a sharper attack time, but now I'm simply  
curious.)

- Rob





More information about the chuck-users mailing list