[This is a conversation Francois and I have been having this morning. There is a general problem with LADSPA wrapper plugins that create plugins from other sources. Its not possible for them to pick unique IDs as they dont know what has been assigned and what hasn't]
On Tue, Mar 18, 2003 at 10:14:44AM +0100, Francois Dechelle wrote: > > That reminds me, there was another issue that Thomas raised, theres > > currently no way to create a one-time unique LADSPA id, which I guess you > > would need for this to work reliably. > > Yes, it is something that I need. The problem is that the jmaxladspa > plugin is not a unique plugin: the number of plugins it defines is > variable (it is the number of .jmax files that are in LADSPA_PATH > directories). > > A temporary solution would be to allocate to the jMax plugin a range of > unique IDs and that no more than this range patches can be loaded. What > do you think about it? Thats OK as a quick fix, but it doesn't solve the broader problem, if you save state from a host using jMax LADSPA plugins then it wont necceserily be the same set when you reload. I think LADSPA needs self assigned ID's, if the UID space were bigger we could just reseve the top bit for self assigned stuff and hash unique strings to fill it, but as its only 32bits thats not enough space. > Apart from this solution, I don't see how to do it. Agreed, without a change to LADSPA I dont think its possible. One solution could be to use a reserved ID range to flag that the ID isn't globally unique, but the label string (not name) is, so hosts should save state aginst the label not the ID. It has very dodgy semantics though. A better solution would be to expand the ID space to 64bits, and reserve the top bit's worth, which is plenty, but will break binary compatibility of course. > Another question: is there a plan to get plugin port values that are not > floats? More precisely, I am thinking of transforming a patch that does > granular synthesis into a plugin. But this patch needs a sound file > name. How can I pass it to the LADSPA plugin? You can't. I think this is thought to be outside the remit of LADSPA. > BTW, do you think we should discuss this on jMax mailing list or on > linux-audio-dev? Yes, both probably, but I've forgotten what email address I subscribed to the jMax list with. I guess I should resubscribe. I'l CC this to l-a-d in the meantime. - Steve
