[chuck-users] priorities for next release
Martin Ahnelöv
operagasten at gmail.com
Fri Aug 31 02:38:26 EDT 2007
ons 2007-08-29 klockan 23:11 +0200 skrev Kassen:
> dur => blackhole would be exactly like SinOsc => blackhole,
> but with
> time. When you, for example, chuck second into blackhole, the
> shred will
> forward 1 second in it's own timeline (A bit like the -s
> otion, if I
> recall).
>
> I'm still not sure exactly how this would be different. What would
> happen to playing Ugens that would be in the shred? Would those keep
> computing?
The thing is... Hm, if we have something like this:
SinOsc 1 => dac;
while (true) {
100::ms => now;
3::samp => blackhole;
}
The shred would jump 3 samples forward every 100 ms. If you change the
duration to 10::ms, you might get some glitching going on every 100::ms.
> Example:
> It could be used for plotting numbers over time. If you had
> two
> envelopes that ascending from 10 and 15 up to 88 and 100, you
> could add
> their value()s to their respective array of floats, round()
> the floats
> to ints. Then, in a for loop, you have the computer play a
> random
> midi-note between min[i] and max[i]. Congratulations! You got
> a
> solo-playing computer!
> (Sure, I realise that you could do this very task in other
> ways...)
>
> Yes, chucking time to now would do here, I think. Maybe you could
> compare how this would be done now to what you propose in some chuck
> code and some pseudo-code?
>
Can always try...
--------
SinOsc s => dac;
fun int plot ( float from, float to, int points, dur length ) {
Envelope e => blackhole;
from => e.value;
to => e.target;
length => e.duration;
float values[points];
1 => e.keyOn
for (0 => int i; i < points; i++) {
e.value() => values[i];
length / points => blackhole; <--- forward!
}
return values[];
}
10 => int notes;
plot(10.0, 88.0, notes, 50::ms) => min[];
plot(15.0, 100.0, notes, 50::ms) => max[];
for (0 => int i; i < notes; i++) {
Std.rand2(Math.round(min[i]), Math.round(max[i])) => int midiNr;
Std.mtof(midiNr) => s.freq;
100::ms => now; <-- First time we forward our time
}
---------
Something like that.
Gasten
More information about the chuck-users
mailing list