]> Shamusworld >> Repos - ardour-manual-diverged/blobdiff - include/calculating-feedback-and-strip-types-values.html
Sync with master branch.
[ardour-manual-diverged] / include / calculating-feedback-and-strip-types-values.html
diff --git a/include/calculating-feedback-and-strip-types-values.html b/include/calculating-feedback-and-strip-types-values.html
new file mode 100644 (file)
index 0000000..91a9b70
--- /dev/null
@@ -0,0 +1,143 @@
+---
+layout: default
+title: OSC: Feedback and Strip-types Values
+---
+
+<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>
+<h3>strip_types</h3>
+<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       - AudioBuses.
+       </li>
+       <li>
+               8       - MidiBuses.
+       </li>
+       <li>
+               16      - VCAs.
+       </li>
+       <li>
+               32      - Master.
+       </li>
+       <li>
+               64      - Monitor.
+       </li>
+       <li>
+               128     - Audio Aux.
+       </li>
+       <li>
+               256     - Selected.
+       </li>
+       <li>
+               512     - Hidden.
+       </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>
+  Some handy numbers to use might be: 15 (all tracks and buses), 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.
+</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 buses 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 buses 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 buses and auxes if they would prefer.
+</p>
+
+<h3>feedback</h3>
+<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 extra select channel feedback beyond what a /strip supports
+       </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.
+</p>