Re: [ecasound] LV2 Plugin Support

From: Kai Vehmanen <kvehmanen@email-addr-hidden>
Date: Thu Aug 11 2011 - 13:18:14 EEST


On Wed, 10 Aug 2011, Jeremy Salwen wrote:

> 2. MIDI ports on LV2 plugins

and now the MIDI part:

> As for MIDI ports, I don't know if there is infrastructure in place for
> plugins to handle MIDI or other events with Chain effects.  I could look
> to the LADSPA plugin support for examples of handling audio and control
> ports, but I'm not sure where to look for for an example of how to
> implement MIDI, if at all possible.  To make matters complicated, it

This is indeed a more complicated task as there is much less MIDI infra in
the existing code base.

So I think it might be easiest to start the MIDI support from some
specific, limited use case and extend from there. In principle, the
midi-server.h offers a simple handler interface (with just one method for
feeding read MIDI bytes to the handlers). A LV2 plugin taking MIDI as
input, could register via midi-server.h as a handler and feed the MIDI
bytes to the LV2 plugin. This works with both rawmidi and ALSA sequencer
interface (and if JACK MIDI support is added, it will then work
transparently with that as well).

Another alternative is to just extend the midi-server.h interface to suite
needs for LV2 MIDI support. midi-cc.cpp (-km implementation) is a good
example of this approach (it uses MIDI_SERVER::add_controller_trace() and

But yeah, some prototyping might be in order to figure out the easiest and
sanest approach.

Get a FREE DOWNLOAD! and learn more about uberSVN rich system,
user administration capabilities and model configuration. Take
the hassle out of deploying and managing Subversion and the
tools developers use with it.

Ecasound-list mailing list
Received on Thu Aug 11 16:15:01 2011

This archive was generated by hypermail 2.1.8 : Thu Aug 11 2011 - 16:15:02 EEST