On Tue, Jan 08, 2013 at 12:09:02PM -0600, Michael Heuer wrote:
Hello ChucKers,
I got lost for several hours recently reading Sean Costello's The Halls of Valhalla blog
Looks nice and friendly.
I can't help but think that if I could figure out the notation of say Moorer's Figure 2.30 above to the point where I might translate into higher level ChucK delays, gains, and filters I could get lost for several hours making strange reverbs in Chuck instead. Can anyone help me get started?
Sure, for that diagram; x(n) is your input signal The "+" signs in the circles are points at which signals get summed v(n) is the signal that enters the delay, it is a sum of x(n) and the delay's output. The rectangular block is a delay of M samples length. When DSP people write "z-1" they are referring to the last sample (typically the last output of the system). Pronounce; "z minus 1". Why do they write it up high like it were taking the "-1th power"? I don't know. Maybe they just want to make it all hard to read to make themselves seem smart, maybe they just copy each other ;-) y(n) is the output signal (which we hear). b0 is the amount of feedforward; basically the amount of v(n) that ends up in the output. "b" indices are feedforward, b0 means the signal 0 samples ago. -aM is the amount of (negative) feedback from the delayed signal. a indices are as you might guess feedback, this is the output signal M samples ago. Note that our filters also have member functions like .a1(), .b0(), etc. Those are like this. If those go above 1 your ears will hurt. Your ears might otherwise hurt too; please mind your volume. If you are on OSX and use headphones put a mixer between your ears and the output to turn down the volume instead of using the software setting. The arrows are the travelling signals and their direction. Black dots are a splitting of the signal as it gets used twice. It's not clear to me why that text doesn't explain the terms used in the diagram; otherwise it is quite clear and friendly and if you ran into those terms and notations before this text might not have that much new info. Anyway, you should now also be able to make some sense of our more low-level filter UGens. As well as the docs and even internal code of the ready-made reverbs. My old disclaimer of "please mind your ears, speakers and neighbours" is something to keep in mind here; experiments with feedback can and will lead to loud accidents, prepare for that. Of course they are also a LOT of fun, be careful, not discouraged :-) Yours, Kas.