202 lines
6.6 KiB
HTML
202 lines
6.6 KiB
HTML
|
|
<p><em>/set_surface</em> has two values the user needs to calculate before
|
|
use. In general these will not be calculated at run time, but
|
|
beforehand. There may be more than one button with different values
|
|
to turn various kinds of feedback on or off or to determine which
|
|
kinds of strips are currently viewed/controlled.
|
|
</p>
|
|
<p>Both <em>feedback</em> and <em>strip-types</em> use bitsets to keep
|
|
track what they are doing. Any number in a computer is made out of
|
|
bits that are on or off, but we represent them as normal base 10
|
|
numbers. Any one bit turned on will add a unique value to the
|
|
number as a whole. So for each kind of feedback or strip type
|
|
to be used, that number should be added to the total.</p>
|
|
<h2>strip_types</h2>
|
|
<p>
|
|
strip_types is an integer made up of bits. The easy way to
|
|
deal with this is to think of strip_types items being worth a number and
|
|
then adding all those numbers together for a value to send.
|
|
Strip Types will determine What kind of strips will be included in
|
|
bank. This would include: Audio, MIDI, busses, VCAs, Master, Monitor
|
|
and hidden or selected strips.
|
|
</p>
|
|
<ul>
|
|
<li>
|
|
1: AudioTracks.
|
|
</li>
|
|
<li>
|
|
2: MidiTracks.
|
|
</li>
|
|
<li>
|
|
4: AudioBusses.
|
|
</li>
|
|
<li>
|
|
8: MidiBusses.
|
|
</li>
|
|
<li>
|
|
16: VCAs.
|
|
</li>
|
|
<li>
|
|
32: Master.
|
|
</li>
|
|
<li>
|
|
64: Monitor.
|
|
</li>
|
|
<li>
|
|
128: FoldbackBusses.
|
|
</li>
|
|
<li>
|
|
256: Selected.
|
|
</li>
|
|
<li>
|
|
512: Hidden.
|
|
</li>
|
|
<li>
|
|
1024: Use Group.
|
|
</li>
|
|
</ul>
|
|
<p class="note">
|
|
Selected and Hidden bits are normally not needed as Ardour defaults to
|
|
showing Selected strips and not showing Hidden strips. The purpose of
|
|
these two flags is to allow showing only Selected strips or only
|
|
Hidden strips. Using Hidden with other flags will allow Hidden strips
|
|
to show inline with other strips.
|
|
</p>
|
|
<p class="note" id="use-group">
|
|
Use Group on will tell ardour that any control on a strip that is part
|
|
of a group will affect all strips within that group. Default is off
|
|
or the control should only affect the strip the control is applied to.
|
|
The <code>/use_group f state</code> command can be used to temporarily
|
|
change this on the fly.
|
|
</p>
|
|
<p>
|
|
Some handy numbers to use might be: 15 (all tracks and busses -
|
|
1 + 2 + 4 + 8), 31
|
|
(add VCAs to that - 15 + 16). Master or Monitor strips are generally
|
|
not useful on a surface that has dedicated controls for these strips
|
|
as there are /master* and /monitor* commands already. However, on a
|
|
surface with just a bank of fader strips, adding master or monitor
|
|
would allow access to them within the banks. Selected would be useful
|
|
for working on a group or a set of user selected strips. Hidden shows
|
|
strips the GUI has hidden. As such, a control surface will likely have
|
|
a number of buttons with different strip_types for convenience.
|
|
<ul>
|
|
<li>
|
|
Mixer - All strip types <kbd class="osc">/set_surface/strip_types 159</kbd>
|
|
</li>
|
|
<li>
|
|
Audio Tracks - Just Audio tracks that can record <kbd class="osc">/set_surface/strip_types 1</kbd>
|
|
</li>
|
|
<li>
|
|
MIDI Tracks - Tracks with at least 1 MIDI input that can record
|
|
<kbd class="osc">/set_surface/strip_types 2</kbd>
|
|
</li>
|
|
<li>
|
|
Busses - A mix of all busses, possibly including VCAs
|
|
<kbd class="osc">/set_surface/strip_types 156</kbd>
|
|
</li>
|
|
<li>
|
|
Selected - All strips that are currently selected
|
|
<kbd class="osc">/set_surface/strip_types 256</kbd>
|
|
</li>
|
|
<li>
|
|
Hidden - All hidden strips <kbd class="osc">/set_surface/strip_types 512</kbd>
|
|
</li>
|
|
<li>
|
|
Custom - see <a href="@@osc58-custom-strips">
|
|
Making a user selected strip list.</a>
|
|
<kbd class="osc">/strip/custom/mode 1</kbd>
|
|
</li>
|
|
|
|
</ul>
|
|
</p>
|
|
<h3 id="hidden">Using hidden strips</h3>
|
|
<p>
|
|
Ardour allows any of it's strips to be hidden so that they do not show
|
|
up on the GUI mixer or editor. OSC follows the GUI by default and will
|
|
not show hidden strips. As of Ardour 6.0 the OSC commands include
|
|
<kbd class="osc">/select/hide <em>y/n</em></kbd> for the selected
|
|
strip and <kbd class="osc">/strip/hide <em>ssid</em> <em>y/n</em></kbd>
|
|
for any strip. This allows the control surface to hide or unhide a strip.
|
|
What may not be obvious is that hiding a strip makes it disappear and
|
|
become unselected. So if a selected strip is hidden, it is no longer
|
|
selected and the select channel will show the default select strip
|
|
(Master). In order to show a hidden strip, the hidden strips need to
|
|
be shown first using the <kbd class="osc">/set_surface/strip_types 512</kbd>
|
|
command to show only hidden strips. Then use the
|
|
<kbd class="osc">/strip/hide <em>SSID</em> 0</kbd> or
|
|
<kbd class="osc">/select/hide 0</kbd>
|
|
to show that strip. Of course, because only hidden strips are showing,
|
|
the strip you have set to no long hide will seem to vanish. A
|
|
<kbd class="osc">/set_surface/strip_types 159</kbd> will then show
|
|
the default strip types or replace the 159 with the desired strip_types.
|
|
</p>
|
|
<p class="note">
|
|
When hiding more than one strip in a row, check the strip name before
|
|
hiding as the strips will move as each strip is hidden just as it does
|
|
with the GUI mixer. So to hide strips 5, 6 and 7, the hide button
|
|
for <code>ssid</code> 5 is pressed 3 times. A more intuitive method
|
|
would be to hide strips from right to left (7, 6 and 5) which will
|
|
work as expected.
|
|
<p>
|
|
In short, shown strips can only be hidden when they are viewable and
|
|
hidden strip can only shown (or un-hid) when strip_types include hidden
|
|
strips.
|
|
</p>
|
|
<h2 id="feedback">feedback</h2>
|
|
<p>Feedback is an integer made up of bits. The easy way to
|
|
deal with this is to think of feedback items being worth a number and
|
|
then adding all those numbers together for a value to send.
|
|
</p>
|
|
<ul>
|
|
<li>
|
|
1: Button status for strips.
|
|
</li>
|
|
<li>
|
|
2: Variable control values for strips.
|
|
</li>
|
|
<li>
|
|
4: Send SSID as path extension.
|
|
</li>
|
|
<li>
|
|
8: heartbeat to surface.
|
|
</li>
|
|
<li>
|
|
16: Enable master section feedback.
|
|
</li>
|
|
<li>
|
|
32: Send Bar and Beat.
|
|
</li>
|
|
<li>
|
|
64: Send timecode.
|
|
</li>
|
|
<li>
|
|
128: Send meter as dB (-193 to +6) or 0 to 1 depending on gainmode
|
|
</li>
|
|
<li>
|
|
256: Send meter a 16 bit value where each bit is a level
|
|
and all bits of lower level are on. For use in a LED strip. This
|
|
will not work if the above option is turned on.
|
|
</li>
|
|
<li>
|
|
512: Send signal present, true if level is higher than -40dB
|
|
</li>
|
|
<li>
|
|
1024: Send position in samples
|
|
</li>
|
|
<li>
|
|
2048: Send position in time, hours, minutes, seconds and milliseconds
|
|
</li>
|
|
<li>
|
|
8192: Turn on select channel feedback
|
|
</li>
|
|
<li>
|
|
16384: Use OSC 1.0 /reply instead of #reply
|
|
</li>
|
|
</ul>
|
|
<p>
|
|
So using a value of 19 (1 + 2 + 16) would turn on feedback for strip
|
|
and master controls, but leave meters, timecode and bar/beat feedback off.
|
|
</p>
|
|
|