Re: [linux-audio-dev] LADSPA Extension for Extra GUI Data

From: Dave Robillard <drobilla@email-addr-hidden>
Date: Sun Jun 25 2006 - 23:30:40 EEST

On Mon, 2006-06-19 at 19:31 +1000, Jez Kabanov wrote:
> >
> > The idea itself isn't stupid, but the implementation is.. let's say less
> > than wise.
> >
> > (Consider my personal blatant bias, but...) I'd suggest taking a look at
> > LV2. There is a data file you can add all this information to (whatever
> > information you want to), without defining any APIs, changing any host
> > code, etc, etc.
> >
> > You definitely shouldn't have to break binary compatibility of things
> > just to add some hints for hosts, this is the problem LV2 is meant to
> > solve...
> >
> > -DR-
> while i'm no expert in this area, i'm having some trouble understanding
> your rationale.
>
> how is it breaking binary compatibility?
> is binary compatibility even an issue?
>
> shouldn't the host just look for the plugin and load it and check for
> the existence of a symbol,
> if it exists then call it, otherwise it doesn't and everything is just
> as it was.
>
> the host never need know anything about the binary structure of the
> plugin except to know that there's a function called "ladspa_descriptor",
> adding ladgui certainly doesn't stop old hosts from loading and using
> the plugin,
>
> i've modified nekobee to use ladgui and it runs exactly as it used to in
> an unmodified rosegarden,
> so how is binary compatibilty an issue?
>
> whereas LV2 breaks compatibilty with old plugins (this seems like more
> of an issue to me), adds a lot of complexity and requires the host to
> use an additional liblv2 library.

Basically all you've added is port grouping. Sure, there's no binary
breakage now - no kidding, you havn't had to change anything yet. All
you've done is added a bunch of metadata that has no reason to be in
binary code at all, but you've done it in a way that's going to break
horribly as soon as you try to add something.

Plus, it's completely useless for GUIs in a separate process, while LV2
is not (it's just a data file, anything can load it, it's not even
architechture dependent).

Just my two cents, but definitely not the right thing.

-DR-
Received on Mon Jun 26 00:15:36 2006

This archive was generated by hypermail 2.1.8 : Mon Jun 26 2006 - 00:15:36 EEST