X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;ds=inline;f=include%2Fgeneric-midi-binding-maps.html;h=8402cc66e11e46ab89e06f27a7a7444dbb765bdc;hb=9d52056402cba1b2abc8d26e1c1fa33e8ebb4a7d;hp=47758a2bf038520f90a1290d9734202c5db10f99;hpb=081e7af0b6f6dec0ca685d3a538eacf20394c2cc;p=ardour-manual diff --git a/include/generic-midi-binding-maps.html b/include/generic-midi-binding-maps.html index 47758a2..8402cc6 100644 --- a/include/generic-midi-binding-maps.html +++ b/include/generic-midi-binding-maps.html @@ -11,32 +11,48 @@ controls with anything inside Ardour that can be controlled.
- Currently (August 2016), we have presets for the following devices/modes: + As of this writing we offer presets for the following devices/modes:
-@@ -73,11 +89,8 @@ bindings"> So, to start, create a file with that as the initial contents.
- On OS X, Ardour loads midi maps from its binary-bundle folder in
- Ardour-<version>/midi_maps/
and checks
- various other locations as well (defined by the ARDOUR_MIDIMAPS_PATH
- environment variable). On GNU/Linux the easiest is to save the file to
- ~/.config/ardour3/midi_maps/
.
+ The file should be located in the midi_maps sub directory located in
+ the Ardour configuration directory
There are two basic kinds of bindings you can make between a MIDI message and something inside Ardour. The first is a binding to a specific parameter - of a track or bus. The second is a binding to a function that will change - Ardour's state in some way. + of a track or bus. The second is a binding to something that will change + Ardour's state in some way (the "something" could either be called a + function or an action, see below).
- A track/bus binding has one of two basic structures + A track/bus binding has one of three basic structures
- <Binding msg specification uri="… control address …"/>
- <Binding msg specification function="… function name …"/>
+ <Binding msg specification uri="… control address …"/>
+ <Binding msg specification function="… function name …"/>
+ <Binding msg specification action="… action name …"/>
- <Binding channel="1" ctl="13" ….
+ <Binding channel="1" ctl="13" …
This defines a binding for a MIDI Continuous Controller message involving
@@ -126,20 +141,41 @@ bindings">
pgm
(to create a binding for a Program Change message).
- As of Ardour 4.2, enc-r
, enc-l
, enc-2
and
- enc-b
may be used for surfaces that have encoders that send
- offsets rather than values. These accept Continuous Controller messages
- but treat them as offsets. These are good for banked controls as they are
- always at the right spot to start adjusting. (
-
- Learn more about working with encoders
- )
+ Continous Controlers (CCs) have coninued to evolve for different controlers.
+ The use of Encoders, RPN, NRPN, and controller buttons that give a 0 value
+ when released instead of toggling are now supported. These all have their
+ own type. The whole list of CC types are:
+
+
note
with the momentary
parameter set)note
)+ Ardour 5.12 has a bug with the encoder detection where the first + encoder message resets the control to 0. Setting "Enable Feedback" + on allows encoders to work as expected.
You can also bind sysex messages:
- <Binding sysex="f0 0 0 e 9 0 5b f7" ….
+ <Binding sysex="f0 0 0 e 9 0 5b f7" ….
<Binding sysex="f0 7f 0 6 7 f7" ….
@@ -149,7 +185,7 @@ bindings">
Finally, you can bind a totally arbitrary MIDI message:
- <Binding msg="f0 0 0 e 9 0 5b f7" ….
+ <Binding msg="f0 0 0 e 9 0 5b f7" ….
<Binding msg="80 60 40" ….
@@ -177,6 +213,9 @@ bindings"> A control address defines what the binding will actually control. There are quite a few different things that can be specified here:
++ Enable Feeback applies to these "Control Addresses" only. +
/route/gain | the gain control ("fader") for the track/bus |
---|
Each of the specifications needs an address, which takes various forms too. For track-level controls (solo/gain/mute/recenable), the address is one the following: