[chuck-users] list oriented ways to make this more simple?

2g electriclightheads at gmail.com
Sun Aug 26 20:36:50 EDT 2007


mmm...i seem to be writing same things too much
can't any of these done in list[] oriented ways?

sa.ck:

SinOsc sun1 => Pan2 ps1 => dac;
SinOsc sun2 => Pan2 ps2 => dac;
SinOsc sun3 => Pan2 ps3 => dac;
SinOsc sun4 => Pan2 ps4 => dac;
SinOsc sun5 => Pan2 ps5 => dac;
SinOsc moon1 => Pan2 pm1 => dac;
SinOsc moon2 => Pan2 pm2 => dac;
SinOsc moon3 => Pan2 pm3 => dac;
SinOsc moon4 => Pan2 pm4 => dac;
SinOsc moon5 => Pan2 pm5 => dac;
.1 => ps1.gain;
.1 => ps2.gain;
.1 => ps3.gain;
.1 => ps4.gain;
.1 => ps5.gain;
.1 => pm1.gain;
.1 => pm2.gain;
.1 => pm3.gain;
.1 => pm4.gain;
.1 => pm5.gain;
27.5 * Math.pow(2.0,(3.0/12.0)) => float oilsun;
27.5 * Math.pow(2.0,(5.0/12.0)) * 7.0/8.0 => float oilmoon;
oilsun * Std.rand2(16,8) / 8.0 => sun1.freq;
oilsun * Std.rand2(16,8) / 4.0 => sun2.freq;
oilsun * Std.rand2(16,8) / 4.0 => sun3.freq;
oilsun * Std.rand2(16,8) / 4.0 => sun4.freq;
oilsun * Std.rand2(16,8) / 4.0 => sun5.freq;
oilmoon * Std.rand2(16,8) / 8.0 => moon1.freq;
oilmoon * Std.rand2(16,8) / 4.0 => moon2.freq;
oilmoon * Std.rand2(16,8) / 4.0 => moon3.freq;
oilmoon * Std.rand2(16,8) / 4.0 => moon4.freq;
oilmoon * Std.rand2(16,8) / 4.0 => moon5.freq;

fun void ga()
{
while(true)
	{
	900::ms => now;
	Std.rand2f(-1.0,1.0) => pm1.pan;
	oilmoon * Std.rand2(16,8) / 8.0 => moon1.freq;
	Std.rand2f(-1.0,1.0) => pm2.pan;
	moon1.freq() * Std.rand2(16,8) / 4.0 => moon2.freq;
	Std.rand2f(-1.0,1.0) => pm3.pan;
	moon1.freq() * Std.rand2(16,8) / 4.0 => moon3.freq;
	Std.rand2f(-1.0,1.0) => pm4.pan;
	moon1.freq() * Std.rand2(16,8) / 4.0 => moon4.freq;
	Std.rand2f(-1.0,1.0) => pm5.pan;
	moon1.freq() * Std.rand2(16,8) / 4.0 => moon5.freq;
	900::ms => now;
	Std.rand2f(-1.0,1.0) => pm1.pan;
	oilmoon * Std.rand2(32,16) / 8.0 => moon1.freq;
	Std.rand2f(-1.0,1.0) => pm2.pan;
	sun1.freq() * Std.rand2(16,8) / 4.0 => moon2.freq;
	Std.rand2f(-1.0,1.0) => pm3.pan;
	sun1.freq() * Std.rand2(16,8) / 4.0 => moon3.freq;
	Std.rand2f(-1.0,1.0) => pm4.pan;
	sun1.freq() * Std.rand2(16,8) / 4.0 => moon4.freq;
	Std.rand2f(-1.0,1.0) => pm5.pan;
	sun1.freq() * Std.rand2(16,8) / 4.0 => moon5.freq;
	}
}

fun void ma()
{
while(true)
	{
	7500::ms => now;
	Std.rand2f(45.0,75.0) => oilsun;
	Std.rand2f(45.0,75.0) => oilmoon;
	}
}

fun void pa()
{
while(true)
	{
	700::ms => now;
	Std.rand2f(-1.0,1.0) => ps1.pan;
	oilsun * Std.rand2(16,8) / 8.0 => sun1.freq;
	Std.rand2f(-1.0,1.0) => ps2.pan;
	sun1.freq() * Std.rand2(16,8) / 4.0 => sun2.freq;
	Std.rand2f(-1.0,1.0) => ps3.pan;
	sun1.freq() * Std.rand2(16,8) / 4.0 => sun3.freq;
	Std.rand2f(-1.0,1.0) => ps4.pan;
	sun1.freq() * Std.rand2(16,8) / 4.0 => sun4.freq;
	Std.rand2f(-1.0,1.0) => ps5.pan;
	sun1.freq() * Std.rand2(16,8) / 4.0 => sun5.freq;
	700::ms => now;
	Std.rand2f(-1.0,1.0) => ps1.pan;
	oilsun * Std.rand2(16,8) / 8.0 => sun1.freq;
	Std.rand2f(-1.0,1.0) => ps2.pan;
	moon1.freq() * Std.rand2(16,8) / 4.0 => sun2.freq;
	Std.rand2f(-1.0,1.0) => ps3.pan;
	moon1.freq() * Std.rand2(16,8) / 4.0 => sun3.freq;
	Std.rand2f(-1.0,1.0) => ps4.pan;
	moon1.freq() * Std.rand2(16,8) / 4.0 => sun4.freq;
	Std.rand2f(-1.0,1.0) => ps5.pan;
	moon1.freq() * Std.rand2(16,8) / 4.0 => sun5.freq;
	}
}

spork ~ ga();
spork ~ ma();
spork ~ pa();

while( true ) {
	3333::ms => now;
}

-- 
2g
http://micro.ispretty.com


More information about the chuck-users mailing list