[LAD] How to develop guis for LV2?

Gabriel M. Beddingfield gabriel at teuton.org
Sun Nov 8 04:31:58 UTC 2009



On Sun, 8 Nov 2009, Patrick Shirkey wrote:

> Would a set of reference template code written for the various languages
> that we have at our disposal be of any use here?

I don't think so.  ATM, there's plenty of high-quality reference code... 
especially with Lars's tutorial.  This is a different issue.

> It's clear that we need to better define the plugin publishing and
> dependency system for LV2?

Not quite (though that would be a Good Thing).

More like a standard that says something like......

FOR SYNTH HOSTS:
----------------

If you follow these guidelines, you may call yourself an "LV2 Synth Host" 
and you will be able to work cleanly with every synth that calls itself an 
"LV2 Synth Plugin."

   + Support (at least) extensions A, B, and C.
   + The synths will have several MIDI input ports (for note data)
     and several audio output ports.
   + All configuration will be done with the events extension.
   + All feedback will be done with the events extension.
   + The plugins may provide a GUI interface.  Its width will be
     200, 400, 600, or 800 pixels.  Its height will be a multiple
     of 100 pixels.

FOR SYNTH PLUGINS:
------------------

If you follow these guidelines, you may call yourself an "LV2 Synth 
Plugin" and you will be able to work cleanly with every host that calls 
itself an "LV2 Synth Host."

   + Freely use extensions A, B, and C.  If you use any extra
     LV2 extensions, try to make them optional.  Otherwise,
     please simply call yourself an "LV2 Plugin," because you
     won't work with every LV2 Synth Host.
   + Provide several MIDI in-ports for note data, and several
     audio out-ports.
   + All configuration will be done with the events extension.
     (This does not prohibit you from also doing the same over MIDI)
   + All feedback will be done with the events extension.
   + You are encouraged to create a GUI for your plugin.  Its
     width shall be 200, 400, 600, or 800 pixels.  Its height
     shall be a multiple of 100 pixels.

Would somthing like this be *so* bad?  There's still room for innovation. 
There's still room for plugin authors and host authors to get together and 
say, "We all want to start supporting extension D."  And that would still 
be cool because all the old plugins will still work.

-gabriel



More information about the Linux-audio-dev mailing list