Cool, I will definitely check out this SC object. Thanks for that.

Miller (being the author) would know better than I of course, but I believe the way that [moog~] works is to use Runge-Kutta to solve the ordinary differential equation that governs each stage of the filter in its continuous time representation. This equation (along with a discrete implementation of the complete filter) is what is described in the paper I mentioned. Incidentally, using Runge-Kutta (or any appropriate iterative ODE solver) also abnegates the frequency warping problem.

I think it might be very difficult to code this up with [fexpr~]. It would certainly require at least a quadrupling of the sampling rate. Has anyone out there ever implemented Runge-Kutta with [expr~]? It might also be that Pd's data structures are an appropriate choice for such a project? Either way, it would be super cool to have this as a Pd abstraction rather than an extern.

-David

On 12/31/2014 10:05 AM, Alexandre Torres Porres wrote:
Hi David,

> It'd certainly be interesting to see an what actual implementation
> of this does, rather than just some matlab plots.

An actual implementation is provided in the MoogFF filter in Super Collider, you can just download and try it out. The code of the object is also provided somewhere, as it is a source code.

I'd like to understand pd's [moog~] object one day, and implement it with [fexpr~] or something. Maybe I'll do this other one as well.

Cheers

2014-12-29 17:20 GMT-02:00 David Medine <[email protected] <mailto:[email protected]>>:

    I believe, though I may be wrong, that the Moog vcf object is
    based on the algorithm described in the 2004 Huovalainen paper
    (citation [6] in the Fontana):

    
http://www.mirlab.org/conference_papers/International_Conference/DAFx%202004/Proc/P_061.pdf

    I am a little confused here (in the Fontana) by the author's
    assertion that he can implement a 'delay-free' loop by computing
    the output first, and then finding the states of the filter based
    on this. I don't quite see how this is different from finding the
    states first and then finding the output -- chicken then the egg
    vs. egg then the chicken.

    Still, judging by the plots they provide, they seem to have
    overcome the frequency warping issue (an artifact of unit delay)
    described by Huovalainen.

    It'd certainly be interesting to see an what actual implementation
    of this does, rather than just some matlab plots.

    -David


    On 12/28/2014 07:43 PM, Alexandre Torres Porres wrote:
    hi, do you know if the moog object comes from this paper?

    
http://quod.lib.umich.edu/cgi/p/pod/dod-idx/preserving-the-structure-of-the-moog-vcf-in-the-digital.pdf?c=icmc;idno=bbp2372.2007.062


    _______________________________________________
    [email protected]  <mailto:[email protected]>  mailing list
    UNSUBSCRIBE and account-management 
->http://lists.puredata.info/listinfo/pd-list


    _______________________________________________
    [email protected] <mailto:[email protected]> mailing list
    UNSUBSCRIBE and account-management ->
    http://lists.puredata.info/listinfo/pd-list



_______________________________________________
[email protected] mailing list
UNSUBSCRIBE and account-management -> 
http://lists.puredata.info/listinfo/pd-list

Reply via email to