[linux-audio-dev] ANN: Distributed LADSPA Processing

John Check j4strngs at bitless.net
Wed Aug 18 20:40:04 UTC 2004


On Wednesday 18 August 2004 01:54 pm, Nelson Posse Lago wrote:
> Hi,
>
> Have you ever wondered if it is possible to escape the limits imposed
> by your cpu to the number of ladspa plugins you can run simultaneously,
> while keeping latency low? Well, yes, there is.
>
> This email is to let you know about DLADSPA (Distributed LADSPA). While
> there are a few rough edges on the code, there has been some talk related
> to it on this list and so I'm bringing it to the table.
>
> DLADSPA allows you to group several LADSPA plugins on a chain that appears
> as a single "meta-plugin". This meta-plugin is loaded by your application
> as any other plugin, but in fact it loads the "real" plugins in the chain
> on a remote machine and sends the data for remote processing at each
> interaction.
>
> There are some limitations:
>
>  - the system needs every period to be the same size (unless you are not
>    running in real-time or the remote load is *very* low, but then what
>    is the point?).
>
>  - The system adds to the latency the equivalent of a single period. That
>    is, if your period size is 2ms for a total input-to-output latency of
>    4ms, the system adds another 2ms to the latency, so total latency goes
>    to 6ms.
>
>  - You cannot define the chain of plugins to be loaded remotely from
>    within your application; that needs to be done separately (using
>    jack-rack), the chain must be saved and the application restarted.
>
>  - right now, there is a simple GUI missing, configuration is complicated
>    thanks to a corba layer that needs to be eliminated, the code is
>    tricky to compile (but it *does* compile on debian stable) and error

FWIW, I have Deb stable on my gateway, and it wouldn't build out of the box. I 
haven't tried with the fixes I had a chance to apply (deprecated headers 
mostly), but since the remaining showstopper is a gcc3 issue on my desktop, I 
wouldn't be surprised if it did compile on stable. It's in CVS.

>    handling is non-existant (any error calls exit(), which means your app
>    crashes).
>
> If jack udp transport doesn't work adequately (haven't tested it), I
> intend to adapt the code to work on top of jack too (should be reasonably
> easy).
>
> It is available at my homepage:
>
> http://gsd.ime.usp.br/~lago/masters
>
> Hope you enjoy it,
> Nelson
>
>
> ----------------------------------------------------------------
> This message was sent using IMP, the Internet Messaging Program.



More information about the Linux-audio-dev mailing list