Dear list (and Dan!)
LiSa.track() is brilliant! ( See; http://wiki.cs.princeton.edu/index.php/LiSa_examples ). In the past days I've had a renewed enthusiasm for experimenting with LiSa to try to emulate turntable scratches and now turntableist techniques/gestures as well. (You can read reports and see videos excerpts of the relevant sessions here; http://steim.org/jamboree08/ there is a interesting forum starting here; http://forum.itchymuzik.com/index.php ). LiSa.track() seems especially well suited to emulating platter inertia; if I understand it all correctly a simple LPF over the tracking signal will give us most of this "for free". Brilliant stuff, loads of cheap fun with breakbeats. This will be very useful indeed to many people, I imagine.
But... unless I'm completely mistaken this was nowhere to be seen in the release notes. I knew it was comming, but I had no idea it was here already.
Yours,
Kas.
PS;
//===========================
//"abstract turntableism" by Kas, hacked up in a few minutes
//Remixing strongly encouraged
//add your own break, tweaking may be needed
SndBuf b => LiSa l => Envelope cut => dac;
//add your own
"break2.wav" => b.read;
b.samples()::samp => l.duration;
1 => l.record;
l.duration() => now;
0 => l.record;
b=<l;
Step unity => Envelope e => LPF f => l;
//inertia (sort of)
3 => f.freq;
unity.next(true);
1 => l.track;
1 => l.play;
.125::l.duration() => e.duration;
fun void fade()
{
1=> int times;
while(1)
{
Std.rand2(2,6) => times;
(1.0/times)::e.duration() => cut.duration;
repeat (times)
{
!(cut.value() $ int) => cut.target;
cut.duration() => now;
}
}
}
spork ~fade();
1=> int direction;
while(1)
{
-1 *=> direction;
(.125 * Std.rand2(direction, 4* direction) + e.target()) % 1 => e.target;
e.duration() => now;
}