[chuck-users] Help.
Casper Schipper
casper.schipper at gmail.com
Mon Jun 8 08:38:13 EDT 2015
Hi, I think you meant to put the frequency generation inside of the loop?
Also, why don't you add some more steps to your 'scale' array ?
For converting pitches: Std.mtof converts midi-values (ranged 0-128, 69 being A4) to standard tempered scale frequencies, bypassing your need to use Math.pow etc...
You could just do: 69 => Std.mtof => sit.freq
You may want to read the ChucK manual, which covers the basics much better then I could explain in a single email !
Happy chucking,
Casper
// Sitar
Sitar sit => JCRev r => Echo a => dac;
// gain
.56 => r.gain;
// reverb mix
1.12 => r.mix;
// max delay for echo
1120::ms => a.max;
// set delay for echo
112::ms => a.delay;
// initial effect mix
0.0 => a.mix;
// scale
[ 1,5,6,7,15 ] @=> int scale[];
// loop
while( true ){
// freq
scale[Math.random2(0,scale.cap()-1)] => int freq;
220.0 * Math.pow( 1.05946, (Math.random2(0,2)*12) + freq ) => sit.freq;
//pluck
Math.random2f( 0.1, 0.9 ) => sit.noteOn;
//time
Math.random2f( .01, 1000 )::ms => now;
}
> On 8 jun. 2015, at 06:26, J Alexander Diaz <jalexander at diazsounds.com> wrote:
>
> // freq
>
> scale[Math.random2(0,scale.cap()-1)] => int freq;
>
> 220.0 * Math.pow( 1.05946, (Math.random2(0,2)*12) + freq ) => sit.freq;
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cs.princeton.edu/pipermail/chuck-users/attachments/20150608/cb37f50b/attachment.html>
More information about the chuck-users
mailing list