[linux-audio-dev] LADSPA Issues
sjenkins at blueyonder.co.uk
Fri May 20 12:31:16 UTC 2005
On Fri, 2005-05-20 at 11:03 +0100, Dave Griffiths wrote:
> > On Thu, May 19, 2005 at 03:19:50 +1000, Dave Robillard wrote:
> >> (I still think the central repository is a good idea anyway, FWIW)
> > So do I, but its a hell of a lot of effort, and its unlikly to be kept
> > up to date.
> In the commercial world (of one application I develop for anyway) a number
> of unique plugin ids are allocated per developer licence of a piece of
> host software. There are also some that are published but never allocated,
> and kept free for other development purposes.
> In practise, everyone randomly uses id's that don't cause problems - or
> uses the ones from some company they worked for a few years ago (this is
> mostly for internal use)
> It's chaos in other words, so it's probably not the model to follow :)
A heirarchical ID system - a bit like OIDs in SNMP - might be worth
considering. The IDs form a tree rather than a flat space, and once you
own an ID node in the tree (like in SNMP when you are allocated an
"enterprise" OID) then you own every node beneath that node in the tree.
So, assuming an ID were a sequence of bytes...
Whoever owns the ID 255.24.24.123 owns every longer ID beginning with
this sequence. If you allow them to reassign their sub-IDs to other
developers, then ANYBODY (who already has an ID) becomes an authority
who can issue further IDs.
A central authority is required to seed the tree by issuing the first
top level IDs... but even if this authority ceases to function after
some time, an ID (and the infinity of IDs beneath that ID) is always
available so long as somebody who already has one is willing to issue
And there doesn't need to be an up-to-date totally complete list of IDs
available. A plugin collection, for example, can be distributed along
with a description of just its own part of the ID space. Again this is
like SNMP: You don't need a single super-MIB describing every enterprise
OID that any manufacturer has ever allocated, you just need the various
individual MIBs to describe the kit you've actually got, which apps can
merge into a single tree of all the locally known IDs.
-- Simon Jenkins
More information about the Linux-audio-dev