[linux-audio-dev] Todays changes to "LADSPA2" strawman

Sean Bolton musound at jps.net
Sun Apr 30 15:49:51 UTC 2006


On Apr 29, 2006, at 9:42 AM, Dave Robillard wrote:
> On Sat, 2006-04-29 at 17:24 +0200, Lars Luthman wrote:
>>  4) the run_multiple*() callbacks (how many plugins use these?)
>
> Silly useless function.  Toss it on the trash heap with run_adding.

Dave, you complain about people talking down about modular
synths, then yourself discount things that are only useful in
non-modular designs?  How about a little reciprocity here?

run_multiple_synths() _is_ useless to any host (like Om),
that wants to process an arbitrary connection graph one node
at a time.

run_multiple_synths() is very useful when a host can run
multiple instances of a plugin at once.  It provides easy,
lock-free sharing of resources across the instances.  It
allows FluidSynth-DSSI and hexter to both provide a
shared pool of voices used across several instances,
with _sample-accurate_ voice stealing. It allows
FluidSynth-DSSI to easily bolt onto libfluidsynth, and
share soundfont data between multiple instances, without
the need for a custom soundfont loader.

In contrast, I purposely wrote WhySynth without using
run_multiple_synths(), just to see how difficult the resource
sharing would be.  Nasty mess of mutexes and try_locks()....

All of this is not to say that run_multiple_synths() doesn't
have some real PITA issues.  But that's a discussion better
had over on dssi-devel.

-Sean




More information about the Linux-audio-dev mailing list