Updated generic midi encoder documentation
This commit is contained in:
parent
4a7c729106
commit
719642dbc6
@ -2,8 +2,7 @@
|
||||
<p>
|
||||
Encoders are showing up more frequently on controllers. However, they use
|
||||
the same MIDI events as Continuous Controllers and they have no standard
|
||||
way of sending that information as MIDI events. Ardour 4.2 has implemented
|
||||
4 of the more common ways of sending encoder information.
|
||||
way of sending that information as MIDI events.
|
||||
</p>
|
||||
<p>
|
||||
Encoders that send the same continuous values as a pot would are not
|
||||
@ -14,30 +13,34 @@
|
||||
DAW will add to or subtract from the current value.
|
||||
</p>
|
||||
<p>
|
||||
The 4 kinds of encoder supported are:
|
||||
The 4 kinds of 7 bit encoders supported are:
|
||||
</p>
|
||||
<ul>
|
||||
<li>
|
||||
enc-r: On the bcr/bcf2000 this is called "Relative Signed Bit". The most
|
||||
significant bit sets positive and the lower 6 significant bits are the
|
||||
offset.
|
||||
enc-r: Relative Signed Bit. If the most sign bit is set, Then
|
||||
the offset is positive. The lower 6 significant bits are the
|
||||
offset. <code><Binding channel="1" enc-r="13" …</code>
|
||||
The offset value is formed as <code>0svvvvvv</code>. Where s is the
|
||||
sign or direction and vvvvvv is the number of ticks turned.
|
||||
</li>
|
||||
<li>
|
||||
enc-l: The bcr2000 calls this "Relative Signed Bit 2". The most
|
||||
significant bit sets negative and the lower 6 significant bits are the
|
||||
offset. If you are using one of these two and the values are right but
|
||||
reversed, use the other. This one is the one the Mackie Control Protocol
|
||||
uses.
|
||||
enc-l: Relative Signed Bit 2". If the most sign bit is unset,
|
||||
Then the offset is positive. The lower 6 significant bits are the
|
||||
offset. This is the same as enc-r but with the direction of turn
|
||||
reversed. This is the method the Mackie Control Protocol
|
||||
uses. <code><Binding channel="1" enc-l="13" …</code>
|
||||
The offset value is formed as <code>0svvvvvv</code>. Where s is the
|
||||
sign or direction and vvvvvv is the number of ticks turned.</li>
|
||||
<li>
|
||||
enc-2: Relative 2s Complement. Positive offsets are sent as normal
|
||||
from 1 to 64 and negative offsets are sent as 2s complement negative
|
||||
numbers. This is a signed 7 bit int.
|
||||
<code><Binding channel="1" enc-2="13" …</code>
|
||||
</li>
|
||||
<li>
|
||||
enc-2: The bcr2000 calls this one "Relative 2s Complement". Positive
|
||||
offsets are sent as normal from 1 to 64 and negative offsets are sent as
|
||||
2s complement negative numbers.
|
||||
</li>
|
||||
<li>
|
||||
enc-b: The bcr2000 calls this one "Relative Binary Offset". Positive
|
||||
offsets are sent as offset plus 64 and negative offsets are sent as 64
|
||||
minus offset.
|
||||
enc-b: Relative Binary Offset. Positive offsets are sent as offset
|
||||
plus 64 and negative offsets are sent as 64 minus offset. 64 is zero,
|
||||
65 is +1, 63 is -1. <code><Binding channel="1" enc-b="13" …</code>
|
||||
</li>
|
||||
</ul>
|
||||
<p>
|
||||
@ -51,3 +54,10 @@
|
||||
the surface.
|
||||
</p>
|
||||
|
||||
14 bit encoders are also supported with:
|
||||
<ul>
|
||||
<li>rpn-delta - The value is expected to be a signed 14bit value
|
||||
that is added to the current value. For use with encoders</li>
|
||||
<li>nrpn-delta - The value is expected to be a signed 14bit value
|
||||
that is added to the current value. For use with encoders</li>
|
||||
</ul>
|
||||
|
@ -152,29 +152,12 @@ bindings">
|
||||
that is added to the current value. For use with encoders</li>
|
||||
<li>nrpn-delta - The value is expected to be a signed 14bit value
|
||||
that is added to the current value. For use with encoders</li>
|
||||
<li>enc-r, enc-l, enc-2 and enc-b - For 7 bit encoders. See below</li>
|
||||
<li>enc-r, enc-l, enc-2 and enc-b - For 7 bit encoders.
|
||||
<a href="@@generic-midi-and-encoders"> Learn more about working
|
||||
with encoders </a></li>
|
||||
</ul>
|
||||
</p>
|
||||
<p>
|
||||
As of Ardour 4.2, <code>enc-r</code>, <code>enc-l</code>, <code>enc-2</code> and
|
||||
<code>enc-b</code> 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. (
|
||||
<a href="@@generic-midi-and-encoders">
|
||||
Learn more about working with encoders
|
||||
</a>)
|
||||
</p>
|
||||
<p>
|
||||
<ul>
|
||||
<li><code><Binding channel="1" enc-r="13" …</code></li>
|
||||
<li><code><Binding channel="1" enc-l="13" …</code></li>
|
||||
<li><code><Binding channel="1" enc-2="13" …</code></li>
|
||||
<li><code><Binding channel="1" enc-b="13" …</code></li>
|
||||
</ul>
|
||||
The <code>enc-*</code> value is the CC number used by the encoder.
|
||||
Encoders only work with CC messages.
|
||||
</p>
|
||||
|
||||
<p class="note">
|
||||
Ardour 5.12 has a bug with the encoder detection where the first
|
||||
encoder message resets the control to 0. Setting "Enable Feedback"
|
||||
|
Loading…
Reference in New Issue
Block a user