[LAD] LV2 Synths & Hosts : MIDI binding

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Linux Audio Developers <linux-audio-dev@...>
Date: Sunday, February 10, 2013 - 1:01 am

--bcaec554dcaae7806304d5545392
Content-Type: text/plain; charset=ISO-8859-1

Hey all!

I have a simple enough question, but I don't know the best practice for
solving it, so figured I'd ask.
There's an LV2 synth running in a LV2 host. The synth exposes its operation
trough control ports.

Option 1:
The plugin can bind incoming MIDI events to these control ports values,
allowing "standard" MIDI maps to be made for the synth.
Use cases include using the synth on another machine with the same
hardware: easy operation, layout identical to before.
Downside: these MIDI binding values are hard coded in the plugin, and can't
be changed. Also the host may update the control port (which has been
effected by the MIDI stream) and causes a parameter jump.

Option 2:
The host has to implement its own form of binding the MIDI events to the
control ports.
Downsides: the plugin has no control over what causes what effect, so no
standardized maps can be made.
Application specific MIDI mapping... which is nasty.

I think the "safe option" is number 2, each application sorts this thing
out itself, and the user has to map the same synth per host.
The MIDI mapping situation on Windows and MacOS is terrible (IMO), with
various different "software re-map" features like Novation Automap, and
Bores midi translator just getting in the way even more.

Can anybody see a solution to using the same MIDI map for the same
instrument in different software, without hard-coding it in the plugin?
Or another solution? -Harry

--bcaec554dcaae7806304d5545392
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

Hey all!I have a simple enough question, but I don't know the b=
est practice for solving it, so figured I'd ask.There's an LV2 =
synth running in a LV2 host. The synth exposes its operation trough control=
ports.
Option 1:The plugin can bind incoming MIDI events to these control =
ports values, allowing "standard" MIDI maps to be made for the sy=
nth.Use cases include using the synth on another machine with the same =
hardware: easy operation, layout identical to before.
Downside: these MIDI binding values are hard coded in the plugin, and can&#=
39;t be changed. Also the host may update the control port (which has been =
effected by the MIDI stream) and causes a parameter jump.Option 2:<=
br>
The host has to implement its own form of binding the MIDI events to the co=
ntrol ports.Downsides: the plugin has no control over what causes what =
effect, so no standardized maps can be made.Application specific MIDI m=
apping... which is nasty.
I think the "safe option" is number 2, each application sorts=
this thing out itself, and the user has to map the same synth per host.The MIDI mapping situation on Windows and MacOS is terrible (IMO), with va=
rious different "software re-map" features like Novation Automap,=
and Bores midi translator just getting in the way even more.
Can anybody see a solution to using the same MIDI map for the same inst=
rument in different software, without hard-coding it in the plugin?Or a=
nother solution? -Harry

--bcaec554dcaae7806304d5545392--

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[LAD] LV2 Synths & Hosts : MIDI binding, Harry van Haaren, (Sun Feb 10, 1:01 am)
Re: [LAD] LV2 Synths &amp; Hosts : MIDI binding, David Robillard, (Sun Feb 10, 3:35 am)