2011/3/2 David Robillard :
No no and no, this won't be settled down this easy. :-)
I want to try to make sense of the whole issue from the start.
What is a plugin UI? UI = user interface, the thing that lets the user
interface with the plugin, i.e. control the plugin. Not necessarily a
GUI, but let's talk about GUIs.
Plugins expose "control ports" (which, to me, are a design mistake how
they're done, but whatever) for the purpose of managing how they work.
They basically represent parameters that the algorithm uses to do the
sound processing (fx or synthesis). (Let's forget control out for a
Since it's stuff for the user, they should be effective and
understandable for the user. And here's the first problem: parameters
and GUIs don't necessarily have to match! E.g., my amp simulator
algorithm should really expose stuff like "air impedance" or "triode's
magnetic perveance", that's stuff the "average user" ("dumb" guitar
player) doesn't understand. I would prefer to show "air temperature"
and "triode model" instead.
As things are currently done in the LV2 world, it seems common
thinking that this does not belong to the GUI, but I disagree. The
mapping from GUI parameters to algorithm parameters, I think, is
better done in the GUI. If I am right, the GUI is not purely
descriptive, but does also involve some calculation (whether that is
The good thing about LV2 is that you can have multiple GUIs for a
single plugin, so I can show a scientific GUI to a scientist, another
for audio engineers and yet another for guitar players (or even have
all of them in one single GUI), and all of them map to the same
Perhaps there is the possibility to have explicit mappings in form of
RDF data with embedded math expressions or similar, so that you could
choose your mapping and still have auto-generated GUIs if you have
none that suits your needs.
There are cases, however, in which a "rich GUI" does really help
(e.g., spatialization)... but this is still about inputs to the
What I don't really get is why you would ever want visualization,
since that is more related to sound analysis, that LV2, as of now,
doesn't really support (yes, you can do whatever you want, but don't
tell me about spectrograms... that stuff is better suited to Vamp and
the like as of now - this may change, hopefully, however).
Let's start with this, and see what comes out...
Linux-audio-dev mailing list