On 05/30, Dario Sanfilippo wrote:
>
> I was meaning to also implement the ZDF 4-pole ladder. Will Pirkle resolved
> it into this diagram:
> http://www.willpirkle.com/Downloads/AN-4VirtualAnalogFilters.2.0.pdf.

I can't read the diagrams, but the code looks simple... the faust implementation
is trivial:

        moog(fc, Q) = tick ~ (_,_,_,_) : !,!,!,!, _ with {
                tick(s1,s2,s3,s4) =
                        lp(s1, u) : _,(lp(s2) : _,(lp(s3) : _,lp(s4)))
                with {
                        k = 4 * (Q - 0.5) / (25 - 0.5);
                        g = tan(ma.PI * fc / ma.SR) <: _ / +(1);

                        sigma = g^3*s1 + g^2*s2 + g*s3 + s4;
                        u = -(k * sigma) : /(1 + k * g ^ 4);

                        lp(s,x) = y + v, y with {
                                v = (x - s) * g;
                                y =  v + s;
                        };
                };
        };

although I didn't check this code and I am sure it has mistakes.

I am wondering what are you going to do with it ;) and how to compare this code
with moog_vcf_* in vaeffects.lib.

Oleg.



_______________________________________________
Faudiostream-users mailing list
Faudiostream-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/faudiostream-users

Reply via email to