X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=include%2Fgeneric-midi-binding-maps.html;h=144e2e9e2e31978d3730dc237a09e45aa58b9d0f;hb=9d40f142633d32b65f620491ace6f050672286e8;hp=cb5f8e2d9c42980c68f4f49a978b9a1f362ae7b3;hpb=3ac2b1ab0af5ff2d380c60cad295cbced589602f;p=ardour-manual diff --git a/include/generic-midi-binding-maps.html b/include/generic-midi-binding-maps.html index cb5f8e2..144e2e9 100644 --- a/include/generic-midi-binding-maps.html +++ b/include/generic-midi-binding-maps.html @@ -53,8 +53,7 @@ remote control ID. This ID uniquely identifies a track or bus so that when messages arrive from elsewhere via MIDI or OSC , we can determine which track or bus they are intended to control. See - + remote control IDs for more information. You just need to know that there is a "first track" and its remote control ID is 1, and so on. @@ -74,11 +73,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

Finding out what your MIDI control surface sends

@@ -117,7 +113,7 @@ bindings"> like this:

- <Binding channel="1" ctl="13" …. + <Binding channel="1" ctl="13" …

This defines a binding for a MIDI Continuous Controller message involving @@ -136,6 +132,21 @@ bindings"> Learn more about working with encoders )

+

+

+ The enc-* value is the CC number used by the encoder. + Encoders only work with CC messages. +

+

+ 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:

@@ -178,46 +189,49 @@ bindings"> A control address defines what the binding will actually control. There are quite a few different things that can be specified here:

-
-
/route/gain
-
the gain control ("fader") for the track/bus
-
/route/trim
-
the trim control for the track/bus (new in 4.1)
-
/route/solo
-
a toggleable control for solo (and listen) of the track/bus
-
/route/mute
-
a toggleable control to mute/unmute the track/bus
-
/route/recenable
-
a toggleable control to record-enable the track
-
/route/panwidth
-
interpreted by the track/bus panner, should control image "width"
-
/route/pandirection
-
interpreted by the track/bus panner, should control image "direction"
-
/route/plugin/parameter
-
the Mth parameter of the Nth plugin of a track/bus -
-
/route/send/gain
-
the gain control ("fader") of the Nth send of a track/bus
-
+

+ Enable Feeback applies to these "Control Addresses" only. +

+ + + + + + + + + + + + + + + + + + + +
/route/gainthe gain control ("fader") for the track/bus
/route/trimthe trim control for the track/bus (new in 4.1)
/route/soloa toggleable control for solo (and listen) of the track/bus
/route/mutea toggleable control to mute/unmute the track/bus
/route/recenablea toggleable control to record-enable the track
/route/panwidthinterpreted by the track/bus panner, should control image "width"
/route/pandirectioninterpreted by the track/bus panner, should control image "direction"
/route/plugin/parameterthe Mth parameter of the Nth plugin of a track/bus +
/route/send/gainthe gain control ("fader") of the Nth send of a 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:

-
-
a number, eg. "1" -
-
identifies a track or bus by its remote control ID -
-
B, followed by a number -
-
identifies a track or bus by its remote control ID within the current bank (see below for more on banks) -
-
S, followed by a number -
-
identifies a selected track in order they have been selected, S1 should be the same track as the Editor Mixer -
-
one or more words -
-
identifies a track or bus by its name -
-
+ + + + + + + + + +
a number, e.g. "1" +identifies a track or bus by its remote control ID +
B, followed by a number +identifies a track or bus by its remote control ID within the current bank (see below for more on banks) +
S, followed by a number +identifies a selected track in order they have been selected, S1 should be the same track as the Editor Mixer +
one or more words +identifies a track or bus by its name +

For send/insert/plugin controls, the address consists of a track/bus address (as just described) followed by a number identifying the plugin/send @@ -234,6 +248,9 @@ bindings">

Bindings to Ardour "functions"

+

+ There is currently no feedback available for functions. +

Rather than binding to a specific track/bus control, it may be useful to have a MIDI controller able to alter some part of Ardour's state. A @@ -246,64 +263,68 @@ bindings"> In this case, a NoteOn message for note number 13 (on channel 1) will start the transport rolling. The following function names are available:

-
-
+ + + + + + + + + + + + + + + + + + + + + +
transport-stop - -
stop the transport -
-
+
stop the transport +
transport-roll - -
start the transport "rolling" -
-
+
start the transport "rolling" +
transport-zero - -
move the playhead to the zero position -
-
+
move the playhead to the zero position +
transport-start - -
move the playhead to the start marker -
-
+
move the playhead to the start marker +
transport-end - -
move the playhead to the end marker -
-
+
move the playhead to the end marker +
loop-toggle - -
turn on loop playback -
-
+
turn on loop playback +
rec-enable - -
enable the global record button -
-
+
enable the global record button +
rec-disable - -
disable the global record button -
-
+
disable the global record button +
next-bank - -
Move track/bus mapping to the next bank (see Banks below) -
-
+
Move track/bus mapping to the next bank (see Banks below) +
prev-bank - -
Move track/bus mapping to the previous bank (see Banks below) -
- +
Move track/bus mapping to the previous bank (see Banks below) +

Binding to Ardour "actions"

+

+ It is not possible to have feedback available for actions because + these represent keyboard shortcuts which are input only. +

You can also bind a sysex or arbitrary message to any of the items that occur in Ardour's main menu (and its submenus). The + href="@@list-of-menu-actions"> list of actions shows all available values of action-name.

To create a binding between an arbitrary MIDI message (we'll use a @@ -371,6 +392,9 @@ bindings"> <Binding channel="1" note="15" uri="/route/mute B1" momentary="yes"/> <Binding channel="1" note="16" uri="/route/mute B2" momentary="yes"/> + <Binding channel="1" enc-r="11" uri="/route/pandirection B1"/> + <Binding channel="1" enc-r="12" uri="/route/pandirection B2"/> + <Binding sysex="f0 0 0 e 9 0 5b f7" function="transport-start"/> <Binding sysex="f0 7f 0 6 7 f7" function="rec-disable"/> <Binding sysex="f0 7f 0 6 6 f7" function="rec-enable"/>