[linux-audio-dev] +momentary, consolidated (ladspa.h.diff)

Steve Harris S.W.Harris at ecs.soton.ac.uk
Mon Mar 8 17:58:48 UTC 2004


On Mon, Mar 08, 2004 at 05:51:28 +0100, Tim Goetze wrote:
> [Steve Harris]
> >> it also clutters one field (the name) by using it for two orthogonal
> >> purposes, which must be a nightmare for somebody using as strict a
> >> distinction of data modes as you do.
> >
> >Its not a big issue. The port name is only for display purposes. If you
> >label the units seperatly all you would see is
> >sprintf(label, "%s (%s)", port_label, port_units) anyway.
> 
> then what about "Frequency: 440 Hz"?
> 
> it's, forgive me the perception-oriented argumentation, far more
> natural and easy to read than "Frequency (Hz): 440".

Thats true, but I dont think the gain is worth the pain of loosing the
units display in 1.1 hosts (or having a seperate port initialiser for
1.1) and revamping all 250 plugins (or however many it is). Especially as
we currently have zero embedded 2x16 LCD hosts.

If we were designing from scratch it might be a nice idea, but I would
want something (optionally) more complete than just a label. You dont know
wether its supposed to be prefix of postfix and how it should be padded,
what the 1000's or 1000ths units are, etc, etc. So it only buys you a
little more flexibility.
 
> and to repeat: if you don't want units to appear in the plugin
> sources, why are you satisified with "Frequency (Hz)"?

I'm only satisfied with it because its allready widely used, in in
practice its bascily OK. Not ideal, but OK. Even I have to be pragmatic
sometimes :)
 
> >> good that you mention it. we could make future extensions a lot less
> >> painful if we padded the PortInfo structure with reserved space. it's
> >> not particularly nice, but very sensible.
> >
> >Wouldn't it be easier to just move them out of the sub-struct? Then you
> >dont need any padding. It also fits better with the rest of the API.
> 
> i'm trying to follow your previous argument of 'logically connected'.
> for plugins with many ports, this is very convenient.

I dont think that scale markings, / enumerations, defaults and units are
logically connected to the same extent that upper and lower bounds are.
That is a matter of opinion of course. I agree its more convienient, but I
really dont like the idea of padding out the PortFoo struct(s) to allow
for exansion.

By contrast the port descriptor hints and names are all members of the
plugin struct - its only upper and lower bounds that are in a seperate
struct.
 
- Steve



More information about the Linux-audio-dev mailing list