[chuck-users] Problem with reverb and multi-voices
Tom Lieber
lieber at princeton.edu
Sun Jan 4 17:58:16 EST 2009
2009/1/4 Andrew C. Smith <acsmith at willamette.edu>:
> I'm sure there's an easy way to do this, but I'm out of practice.
> Trying to warm myself back up before the Max5-compatible chuck~ is
> ready.
>
> I'll attach my code, but the basic problem is that if I hit the SMS
> twice, the smack spork will change the reverb and gain levels for
> everything, so that I can't layer voices with different settings. Is
> there a better way to organize this? Probably. The y-hit is supposed
> to change the g.gain, while the x-hit changes the rev.mix. Just an
> experiment with the SMS to impress my friends (they're easily
> impressed).
If it were me, I'd make a new pair of rev/g in smack(), chuck the
voice to it, then unchuck it on the way out. You're making shreds
pretty fast so that may not lead to a script you can leave running for
a long time, but it'd have the desired effect.
On the other hand, if you're limited to the number of voices LiSa has
anyway, you may as well make a bank of JCRev attached to Gains with
indices that match LiSa's voice numbers, attach LiSa to all of them,
and adjust their gains in smack(). Like:
JCRev revs[yell.maxVoices()];
Gain gains[yell.maxVoices()];
for(0 => int i; i < revs.size(); i++) {
revs[i] => gains[i] => dac;
0 => revs[i].gain;
}
...
fun void smack() {
...
rev_mix => revs[voice1].mix;
...
g_gain => gains[voice1].gain;
...
1 => revs[voice1].gain;
yell.play(voice1, 1);
yell.duration() => now;
yell.play(voice1, 0);
0 => revs[voice1].gain;
...
}
(unless I'm mistaken about how LiSa voices work! I haven't used it in
a long time..)
> ps: is it possible to switch subscription from digest to regular
> list-serve? Thanks.
I'm sure it's an option on the page you get to when you submit the
"Unsubscribe or edit options" form at the bottom:
https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
--
Tom Lieber
http://AllTom.com/
More information about the chuck-users
mailing list