[LAU] Questions about LV2

Florian Paul Schmidt mista.tapas at gmx.net
Tue May 14 10:42:12 UTC 2013


On 05/14/2013 12:26 PM, Julien Claassen wrote:
> Hello Florian!
>   I had another look at the sampler and I can't fathom, how the GUI 
> will communicate any extra info to the plugin. Perhaps via one of the 
> sockets, that I saw with lsof. Unfortunately nothing like an OSC 
> server or a direct UDP port as with LinuxSampler.
>   What sort of a plugin did you write and how did you do your extra 
> communications?
>   Kind regards
>         Julien
>

Well, I'm no expert on LV2 and especially not the patch extension. But 
from my limited knowledge the message comes into the plugin the same way 
midi messages come into it (via a "notification" port?). I ripped the 
code for my plugin straight from the example sampler plugin from the LV2 
distribution. So since it uses a gtk gui to offer the user a way to 
select a patch file, that's what my plugin does. These are the involved 
extensions afact:

http://lv2plug.in/ns/ext/patch/patch.html
http://lv2plug.in/ns/ext/state/

Only because you explicitly ask I will elaborate a little bit on my 
plugin ladspa.m.lv2 (interest was pretty limited, so I actually kind of 
accepted that it's a personal project interesting only to me ;D). It is 
a simple little modular synthesis plugin which can run synthesis graphs 
made up of LADSPA plugins. These synthesis graph definitions are in the 
form of little files describing the graph. This is the protobuf 
definition for the files:

https://github.com/fps/ladspa.m.proto/blob/master/ladspam.proto

You can use the generated python bindings to define instruments. This is 
an example python program that builds up the instrument definition for a 
simple 5-voice polyphonic instrument that has a sawtooth oscillator per 
voice and modulation wheel controlled autopanning per voice (where each 
voice uses a different panning rate):

https://github.com/fps/ladspa.m.proto/blob/master/examples.py/simple_sawtooth_autopanned.instrument.py

The plugin and the involved libraries/tools are still work in progress. 
But since not a single other part of this chain depends on any graphical 
toolkit and this is quite accessible it is a pity that the patch 
selection part to actually make use of an instrument in an LV2 host has 
this accessibility issue of requiring a custom GUI. And I would love for 
that to change..

https://github.com/fps/ladspa.m.lv2


Regards,
Flo

-- 
Florian Paul Schmidt
http://fps.io



More information about the Linux-audio-user mailing list