]> Shamusworld >> Repos - ardour-manual/blobdiff - include/osc58-feedback-and-strip-types-values.html
First shot at docs for bundled plugins
[ardour-manual] / include / osc58-feedback-and-strip-types-values.html
index b6aba35b0ece02e5c9e72322853b0bace7973824..f1a44555b1aa824356ef33cb089203788365f9bf 100644 (file)
@@ -11,7 +11,7 @@
   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>
-<h3>strip_types</h3>
+<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
 </p>
   <ul>
        <li>
-               1       - AudioTracks.
+               1: AudioTracks.
        </li>
        <li>
-               2       - MidiTracks.
+               2: MidiTracks.
        </li>
        <li>
-               4       - AudioBusses.
+               4: AudioBusses.
        </li>
        <li>
-               8       - MidiBusses.
+               8: MidiBusses.
        </li>
        <li>
-               16      - VCAs.
+               16: VCAs.
        </li>
        <li>
-               32      - Master.
+               32: Master.
        </li>
        <li>
-               64      - Monitor.
+               64: Monitor.
        </li>
        <li>
-               128     - Audio Aux.
+               128: FoldbackBusses.
        </li>
        <li>
-               256     - Selected.
+               256: Selected.
        </li>
        <li>
-               512     - Hidden.
+               512: Hidden.
+       </li>
+       <li>
+               1024: Use Group.
        </li>
   </ul>
 <p class="note">
   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), 31
-  (add VCAs to that). 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.
+  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>
-<p class-"note">
-  Audio Aux? say what? I am sure most people will have noticed that they
-  can find no <em>Aux</em> strips in the Ardour mixer. There are none.
-  There are busses that can be used a number of ways. From analog days,
-  in OSC, a bus is something that gets used as a sub mix before ending up
-  going to Master. An auxiliary bus is used like a separate mixer and
-  it's output goes outside the program or computer to be used as:
-  a monitor mix, a back up recording, or what have you. In OSC where
-  controller strips may be limited, it may be useful not to use up a
-  strip for an aux that is not really a part of the mix. It is also
-  useful to get a list of only aux busses if the control surface is a
-  phone used to provide talent monitor mix control on stage. Each
-  performer would be able to mix their own monitor. The user is free
-  to enable both busses and auxes if they would prefer.
+<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>
-
-<h3>feedback</h3>
+<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&mdash;Button status for strips.
+               1Button status for strips.
        </li>
        <li>
-               2&mdash;Variable control values for strips.
+               2Variable control values for strips.
        </li>
        <li>
-               4&mdash;Send SSID as path extension.
+               4Send SSID as path extension.
        </li>
        <li>
-               8&mdash;heartbeat to surface.
+               8heartbeat to surface.
        </li>
        <li>
-               16&mdash;Enable master section feedback.
+               16Enable master section feedback.
        </li>
        <li>
-               32&mdash;Send Bar and Beat.
+               32Send Bar and Beat.
        </li>
        <li>
-               64&mdash;Send timecode.
+               64Send timecode.
        </li>
        <li>
-               128&mdash;Send meter as dB (-193 to +6) or 0 to 1 depending on gainmode
+               128Send meter as dB (-193 to +6) or 0 to 1 depending on gainmode
        </li>
        <li>
-               256&mdash;Send meter a 16 bit value where each bit is a level
+               256Send 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&mdash;Send signal present, true if level is higher than -40dB
+               512Send signal present, true if level is higher than -40dB
        </li>
        <li>
-               1024&mdash;Send position in samples
+               1024Send position in samples
        </li>
        <li>
-               2048&mdash;Send position in time, hours, minutes, seconds and milliseconds
+               2048: Send position in time, hours, minutes, seconds and milliseconds
+       </li>
+       <li>
+               8192: Turn on select channel feedback
        </li>
        <li>
-               8192&mdash;Turn on extra select channel feedback beyond what a /strip supports
+               16384: Use OSC 1.0 /reply instead of #reply
        </li>
   </ul>
 <p>
-  So using a value of 19 would turn on feedback for strip and master
-  controls, but leave meters, timecode and bar/beat feedback off.
+  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>