Thanks for the help. I will have a look at biquad~ and start learning some theory! Out of interest, does anyone know what is allpass~ for and why it has a gain control?
Cheers Stefan
Hi Stefan:
The term "allpass" refers to a filter that has a gain of 1 for all frequencies. There are lots of topologies (first order, second order, lattice), but the main types you will encounter in computer music are as follows:
contains a delay line with a large number of samples. These are usually used in reverb construction.
and second-order allpasses. These are less common in computer music languages. Csound has them (phaser1 and phaser2 - I programmed them a few years back), and MAX/MSP has a 2nd order allpass (called phaseshift~). Usually, several of these are arranged in series, and the output of the series is mixed with the input signal to produce the classic phase shifting effect.
I am not sure if anyone has programmed first or second order allpasses for PD. You can definitely use biquad~ to obtain a 2nd-order allpass response. For that matter, you could get 2 first order allpasses out of biquad~ as well - you need to multiply together the transfer functions to get the proper coefficients.
The one issue with using biquad~ (or phaseshift~, for that matter), is that the classic analog phase shifter uses a bunch of first order sections in series, with feedback around the entire network. The feedback needs to have a vector size of 1 to sound correct, while the filter coefficients do not necessarily have to be computed at the sampler (they can be computed at a slower rate).
Sean Costello
____________________________________________________________ Yahoo! Messenger - Communicate instantly..."Ping" your friends today! Download Messenger Now http://uk.messenger.yahoo.com/download/index.html