X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=include%2Fgeneric-midi-binding-maps.html;h=38361ba7a312bda64101e574f30d539f47032504;hb=500fea9a1bb2e8f8b815b11ed26c88e32eb7e139;hp=52f7ad8e3c82860443cdc901a7cdbcbdafbc2376;hpb=a14fc093fddf2000f690869d131c5f7475a79ab3;p=ardour-manual diff --git a/include/generic-midi-binding-maps.html b/include/generic-midi-binding-maps.html index 52f7ad8..38361ba 100644 --- a/include/generic-midi-binding-maps.html +++ b/include/generic-midi-binding-maps.html @@ -14,28 +14,36 @@ Currently (August 2016), we have presets for the following devices/modes:

At this time, new binding maps need to be created with a text editor. @@ -94,16 +102,18 @@ bindings">

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).

Binding to Track/Bus controls

- 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 …"/>

Message specifications

@@ -123,25 +133,31 @@ 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:

- 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" @@ -151,7 +167,7 @@ bindings"> 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" ….

@@ -161,7 +177,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" ….

@@ -249,19 +265,28 @@ bindings">

Bindings to Ardour "functions"

- There is currently no feedback available for 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 - binding definition that does this looks like this: + Rather than binding to a specific track/bus/plugin control, it may be useful to + have a MIDI controller able to alter some part of Ardour's + state. Ardour's Generic MIDI support provides a small number of + easily-used "functions" to do the most common operations, using a + binding that looks like this:

<Binding channel="1" note="13" function="transport-roll"/>

In this case, a NoteOn message for note number 13 (on channel 1) will - start the transport rolling. The following function names are available: + start the transport rolling. +

+

+ Note that a much greater number of operations are possible using + actions, described below. +

+

+ The following function names are available:

@@ -318,8 +343,8 @@ bindings">

Binding to Ardour "actions"

- It is not possible to have feedback available actions because these - represent keyboard shortcuts which are send only. + 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