Hi List,
I have a working duplicate of GGEE's [lowpass] in purepd, and have noticed
an interesting thing on my setup here. GGEE's [lowpass] seems to be sharp
by a semitone or so, while the purepd impl produces coefficients which are
in tune with a osc~ at the same frequency. This is very obvious when using
small bandwidth values. I've verified my omega, alpha, and a0-a2, b0-b2
values against GGEE's lowpass.h/lowpass.c as correct and a perl script doing
the same calculations.
The attached .ogg file shows the ggee coefficients in a biquad~ with noise~
running through it, a purepd [lowpass], and then a pure osc~ at the same
cuttoff frequency. It switches between the ggee, purepd, and the osc. The
attached .pd file can be used to reproduce the behavior.
Can you reproduce this behavior on your machine? GGEE's code appears legit,
so I suspect the issues some place else (like samplerate, etc).
Cheers!
~brandon