[PD] moog
David Medine
dmedine at ucsd.edu
Wed Dec 31 22:42:49 CET 2014
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 <dmedine at ucsd.edu
> <mailto:dmedine at ucsd.edu>>:
>
> 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
>>
>>
>> _______________________________________________
>> Pd-list at lists.iem.at <mailto:Pd-list at lists.iem.at> mailing list
>> UNSUBSCRIBE and account-management ->http://lists.puredata.info/listinfo/pd-list
>
>
> _______________________________________________
> Pd-list at lists.iem.at <mailto:Pd-list at lists.iem.at> mailing list
> UNSUBSCRIBE and account-management ->
> http://lists.puredata.info/listinfo/pd-list
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20141231/cd3fa1d0/attachment-0001.html>
More information about the Pd-list
mailing list