Re: [linux-audio-dev] LADSPA Issues

From: Dave Robillard <drobilla@email-addr-hidden>
Date: Wed May 18 2005 - 20:19:50 EEST

On Wed, 2005-18-05 at 10:16 +0100, Chris Cannam wrote:
> On Wednesday 18 May 2005 09:56, Dave Robillard wrote:
> > So why wasn't the unique ID the thing to use?
>
> Because it's impossible to find any way to guarantee it's actually
> unique, for example in the case of a wrapper plugin that generates
> plugins on the fly. ladspa-vst / dssi-vst are obvious real-world
> examples. (DSSI deprecates the LADSPA "unique" ID for this reason --
> there are a few paragraphs about it in the current DSSI RFC.)
>
> And of course having to have a central body to issue IDs is painful:
> that's why most identification schemes these days use texts drawn from
> a pre-existing common pool, such as URIs for schema IDs.
>
> Many (possibly most) LADSPA hosts actually do use the "unique" ID to
> identify plugins. They will break badly when faced with generated
> plugins like these.
>
> The right thing to do is just make sure the .so name doesn't change.
> After all, other dynamic libraries are always referred to by .so name
> and nobody ever complains about that -- would you expect a packager to
> get away with renaming libxml.so to libextensiblemarkuplanguage.so
> without breaking anything? It's not seen as a problem for plugins on
> other platforms, either.

Agreed, but as an app developer it's a bit frustrating to have "fix your
distribution" as the only answer when someone complains their patches
don't load.

> There are still potential complications if a plugin library is installed
> more than once, but at least the user can be aware of them

Yes, vcf and blepvco both do this IIRC, and need to be fixed.

> -- whereas a
> changing or conflicting unique ID might be impossible for the user to
> work around (or even to know about). And at least the problem (for the
> admin) of managing plugin libraries becomes the same as managing any
> other sort of library, rather than having to manage potential conflicts
> of IDs buried deep within the binary.

Fair enough, these sounds like good enough reasons for me. I guess
package maintainers just need to stop doing stupid things with library
names.

(I still think the central repository is a good idea anyway, FWIW)

-DR-
Received on Thu May 19 00:15:05 2005

This archive was generated by hypermail 2.1.8 : Thu May 19 2005 - 00:15:05 EEST