On Fri, May 14, 2004 at 08:36:24AM -0400, Paul Davis wrote:
well, it appears that there is little to no response
to the proposal
from the LADSPA meeting at ZKM. just to be sure that the silence is an
accurate reflection of what people think, i want to take a harsh
stance on the proposal and see if it generates any response...
if we follow through with the proposal, LADSPA will no longer be a
header file. it will require the use of a library. the actual struct
in the header file will contain the absolute bare minimum information
required to actually run a plugin, nothing more. No port names, no
hints, no default values. we will try to make the library
self-contained, dependency-free, but it will still be more complex
than the current model.
moreover, there will be 2 versions of LADSPA floating around, thus
leading to problems with host/plugin compatibility issues.
personally, i think its worth going through this pain. we will end up
with a system in which new LADSPA extensions do not require changes to
the API, which is a great thing. but it will be painful to get there,
and i want to check that people don't mind doing it.
I don't mind *IFF* the metadata file has a simple, human readable
syntax (no XML please) that can be parsed line by line.
Another solution is to use the xrm format, and then you get the library
for free - it's part of X11 client library but independent of the graphical
part of X.
I routinely use this instead of getopt() to combine configuration data
from various files and command line options into one consistent system.
As a configuration language it's quite powerful.
Another point. I've defended the adoption of simple integer enumerations
(corresponding to a C switch) using the argument that it is the single
missing essential feature in the port information. At the Karlsruhe BOF
it was said that this is not true, as the LOGARITHMIC hint does not
specify the log base. Indeed it doesn't, nor is there any reason why
it should. The LOG hint means that the user would expect a widget, e.g.
a slider, that maps a certain displacement to a certain ratio (as opposed
to difference) of the controlled parameter. So the host has to do a linear
to exponential conversion, but it is completely irrelevant to what base
this calculation is done.
--
FA