[chuck-users] FFT

Ge Wang gewang at CS.Princeton.EDU
Wed Sep 13 04:18:23 EDT 2006

> How will frames flow through a chuck wire, with respect to time?

 From picking the Brain of Mr. Tzanetakis and combining ideas with the 
existing ChucK time framework:

The idea is to associate arbitrary meta-data with arbitrary samples in 
the chuck wire, including FFT frames and feature vectors as the program 
is specified.  There would also probably be an extra 'wire' (a new sink 
like dac or blackhole, except it's for the timed meta-data).  For 
example, to set up a STFT of 128 fft size, with 64 hop size, you could 
hook up a FFT unit which accumulates the past 128 samples, and every 
64::samp take the FFT, and put the result frame on the meta-data 
stream, associated with the current time/sample.  This stream could 
then flow through other analysis units that can query and take what's 
on the stream and add or modify the stream.  The analysis units could 
at the same time serve as regular UGen's if you connect them to a dac 
driven UGen chain, making both analysis and synthesis cooperative and 
synchronized.  Also, this, like the synthesis system, is demand driven, 
and should scale without additional overhead.  This may sound like we 
know what we're doing, which is not quite the case until we can 
identify hurdles and work up a good implementation plan or something.

This is similar to how things flow in MARSYAS 2.  We've started 
plotting and designing for this in ChucK, though it's unclear when a 
prototype would be ready to try.


More information about the chuck-users mailing list