X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=include%2Fosc58-feedback.html;h=cf741ed9330c6c837e8b9aaaa43d084c710ac678;hb=7ab6bbbc7b588b46a4ee9c80709fbb09756f1a18;hp=7d1c6b9ad7f2161e17e5c7faaac567438058429e;hpb=0d4be5fdfb660d75853e46019e4a5acf3816363b;p=ardour-manual diff --git a/include/osc58-feedback.html b/include/osc58-feedback.html index 7d1c6b9..cf741ed 100644 --- a/include/osc58-feedback.html +++ b/include/osc58-feedback.html @@ -11,7 +11,7 @@

Ardour does feedback by sending the same path back that is used to control the same function. As such any controls that have feedback - have a parameter that is the value of the control or it's state + have a parameter that is the value of the control or its state (on or off). In the case of OSC paths listed on the main OSC page as having no parameter, if they have feedback, they will also work with a 1 for button press and 0 for button release. This is because @@ -19,16 +19,16 @@ as for control. For example:

-
-
/transport_stop
-
-
+ + + +
/transport_stop

can be used also in the form:

-
-
/transport_stop press
-
where press is an int/bool indicating if the button is pressed or not.
-
+ + + +
/transport_stop presswhere press is an int/bool indicating if the button is pressed or not.

The feedback does not have the same meaning as the control message. @@ -37,10 +37,10 @@ The feedback will be:

-
-
/transport_stop state
-
where state is an int/bool indicating if the transport is stopped or not.
-
+ + + +
/transport_stop statewhere state is an int/bool indicating if the transport is stopped or not.

With feedback turned on, OSC control commands that try to change a control that does not exist will get feedback that resets that control @@ -69,7 +69,7 @@

These messages are feedback only. They are sent as status from Ardour and some of them may be enabled separately from other feedback. See: - + Calculating Feedback and Strip-types Values.

@@ -80,78 +80,92 @@ In the case where Gainmode is set to position, the track name will show the dB value while values are changing.

-
-
/strip/name ssid track_name
-
where track_name is a string representing the name of the track
-
/session_name session_name
-
where session_name is a string representing the name of the session
-
/strip/meter ssid meter
-
where meter is a value repesenting the current audio level. - (the exact math used is determined by the feedback bits set)
-
/strip/signal ssid signal
-
where signal is a float indicating the instantaneous - audio level is -40dB or higher.
-
/position/smpte time
-
where time is a string with the current play head time. Seconds as per smpte.
-
/position/bbt beat
-
where beat is a string with the current play head bar/beat.
-
/position/time time
-
where time is a string with the current play head time. Seconds are in milliseconds
-
/position/samples samples
-
where samples is a string with the current play head position in samples.
-
/heartbeat LED
-
where LED is a float that cycles 1/0 at 1 second intervals.
-
/record_tally state
-
Some record enable is true or "ready to record". For a "Recording" sign at studio door.
-
+ + + + + + + + + + + + + + + + + + + + + + + +
/strip/name ssid track_namewhere track_name is a string representing the name of the track
/strip/*/automation_name ssid namewhere name is a string representing the current automation mode for the control. + See OSC Automation.
/session_name session_namewhere session_name is a string representing the name of the session
/strip/meter ssid meterwhere meter is a value representing the current audio level. + (the exact math used is determined by the feedback bits set)
/strip/signal ssid signalwhere signal is a float indicating the instantaneous + audio level is -40dB or higher.
/position/smpte timewhere time is a string with the current play head time. Seconds as per smpte.
/position/bbt beatwhere beat is a string with the current play head bar/beat.
/position/time timewhere time is a string with the current play head time. Seconds are in milliseconds
/position/samples sampleswhere samples is a string with the current play head position in samples.
/heartbeat LEDwhere LED is a float that cycles 1/0 at 1 second intervals.
/record_tally stateSome record enable is true or "ready to record". For a "Recording" sign at studio door.

Transport Control

-
-
/transport_stop state
-
state is true when transport is stopped
-
/transport_play state
-
state is true when transport speed is 1.0
-
/ffwd state
-
state is true when transport is moving forward but not at speed 1.0
-
/rewind state
-
state is true when transport speed is less than 0.0
-
/loop_toggle state
-
state is true when loop mode is true
-
/cancel_all_solos state
-
Where state true indicates there are active solos that can be canceled.
-
+ + + + + + + + + + + + + + + + + +
/transport_stop statestate is true when transport is stopped
/transport_play statestate is true when transport speed is 1.0
/ffwd statestate is true when transport is moving forward but not at speed 1.0
/rewind statestate is true when transport speed is less than 0.0
/marker positionposition is a string in the form previous <-> next + or current (new Ardour 6.0)
/loop_toggle statestate is true when loop mode is true
/cancel_all_solos stateWhere state true indicates there are active solos that can be canceled.
/jog/mode/name nameWhere name is a string indicating the name of the current jog mode.

Recording control

-
- -
/rec_enable_toggle state
-
Master record enabled.
-
+ + + + +
/rec_enable_toggle stateMaster record enabled.

Master and monitor strips

Master and monitor strips are similar to track strips but do not use the SSID. Rather they use their name as part of the path:

-
-
/master/gain dB
-
where dB is a float ranging from -193 to +6 representing the actual gain of master in dB
-
/master/fader position
-
where position is an int ranging from 0 to 1023 representing the fader control position
-
/master/trimdB dB
-
where dB is a float ranging from -20 to +20 representing the actual trim for master in dB
-
/master/pan_stereo_position position
-
where position is a float ranging from 0 to 1 representing the actual pan position for master
-
/master/mute yn
-
where yn is a bool/int representing the actual mute state of the Master strip
-
/monitor/gain dB
-
where dB is a float ranging from -193 to 6 representing the actual gain of monitor in dB
-
/monitor/fader position
-
where position is an int ranging from 0 to 1023 representing the fader control position
-
+ + + + + + + + + + + + + + + + + + + + + +
/master/gain dBwhere dB is a float ranging from -193 to +6 representing the actual gain of master in dB
/master/fader positionwhere position is an int ranging from 0 to 1023 representing the fader control position
/master/trimdB dBwhere dB is a float ranging from -20 to +20 representing the actual trim for master in dB
/master/pan_stereo_position positionwhere position is a float ranging from 0 to 1 representing the actual pan position for master
/master/mute statewhere state is a bool/int representing the actual mute state of the Master strip
/monitor/gain dBwhere dB is a float ranging from -193 to 6 representing the actual gain of monitor in dB
/monitor/fader positionwhere position is an int ranging from 0 to 1023 representing the fader control position
/monitor/mute statewhere state is a bool/int representing the actual mute state of the Monitor strip
/monitor/dim statewhere state is a bool/int representing the actual dim state of the Monitor strip
/monitor/mono statewhere state is a bool/int representing the actual mono state of the Monitor strip

Track specific operations

@@ -163,77 +177,127 @@ below can also be sent as /strip/command/ssid param. Feedback can be set to match this with the /set_surface/feedback state command. See + href="@@osc58-feedback-and-strip-types-values#feedback"> Calculating Feedback and Strip-types Values.

-
-
/bank_up LED
-
where LED is a bool that indicates another bank_up operation is possible.
-
/bank_down LED
-
where LED is a bool that indicates another bank_down operation is possible.
-
/strip/name ssid track_name
-
where track_name is a string representing the name of the track - (note there is no coresponding command to set the track name)
-
/strip/mute ssid mute_st
-
where mute_st is a bool/int representing the actual mute state of the track
-
/strip/solo ssid solo_st
-
where solo_st is a bool/int representing the actual solo state of the track
-
/strip/monitor_input ssid monitor_st
-
where monitor_st is a bool/int. True/1 meaning the track is force to monitor input
-
/strip/monitor_disk ssid monitor_st
-
where monitor_st is a bool/int. True/1 meaning the track is force to monitor disk, - where both disk and input are false/0, auto monitoring is used.
-
/strip/recenable ssid rec_st
-
where rec_st is a bool/int representing the actual rec state of the track
-
/strip/record_safe ssid rec_st
-
where rec_st is a bool/int representing the actual record safe state of the track
-
/strip/gain ssid gain
-
where gain is a float ranging from -193 to 6 representing the actual gain of the track in dB.
-
/strip/fader ssid position
-
where position is an float ranging from 0 to 1 representing the actual fader position of the track.
-
/strip/trimdB ssid trim_db
-
where trim_db is a float ranging from -20 to 20 representing the actual trim of the track in dB.
-
/strip/pan_stereo_position ssid position
-
where position is a float ranging from 0 to 1 representing the actual pan position of the track
-
-

Selection Operations

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
/bank_up LEDwhere LED is a bool that indicates another bank_up operation is possible.
/bank_down LEDwhere LED is a bool that indicates another bank_down operation is possible.
/strip/name ssid strip_namewhere strip_name is a string representing the name of the strip
/strip/group ssid group_namewhere group_name is a string representing the name of the group the track belongs to
/strip/mute ssid mute_stwhere mute_st is a bool/int representing the actual mute state of the track
/strip/solo ssid solo_stwhere solo_st is a bool/int representing the actual solo state of the track
/strip/monitor_input ssid monitor_stwhere monitor_st is a bool/int. True/1 meaning the track is force to monitor input
/strip/monitor_disk ssid monitor_stwhere monitor_st is a bool/int. True/1 meaning the track is force to monitor disk, + where both disk and input are false/0, auto monitoring is used.
/strip/recenable ssid rec_stwhere rec_st is a bool/int representing the actual rec state of the track
/strip/record_safe ssid rec_stwhere rec_st is a bool/int representing the actual record safe state of the track
/strip/gain ssid gainwhere gain is a float ranging from -193 to 6 representing the actual gain of the track in dB.
/strip/fader ssid positionwhere position is an float ranging from 0 to 1 representing the actual fader position of the track.
/strip/*/automation ssid modewhere mode is an int ranging from 0 to 3 representing the actual automation mode for the control. + See OSC Automation.
/strip/trimdB ssid trim_dbwhere trim_db is a float ranging from -20 to 20 representing the actual trim of the track in dB.
/strip/pan_stereo_position ssid positionwhere position is a float ranging from 0 to 1 representing the actual pan position of the track
+

Selected Operations

Selection feedback is the same as for strips, only the path changes from /strip to /select and there is no ssid. there are some extra feedback and commands that will be listed here.

-
-
/select/n_inputs number
-
where number number of inputs for this strip
-
/select/n_outputs number
-
where number number of outputs for this strip
-
/select/comment text
-
where text is the strip comment
-
/select/solo_iso state
-
where state is a bool/int representing the Actual solo isolate state of the track
-
/select/solo_safe state
-
where state is a bool/int representing the actual solo safe/lock state of the track
-
/select/polarity invert
-
where invert is a bool/int representing the actual polarity of the track
-
/select/pan_stereo_width width
-
where width is a float ranging from 0 to 1 representing the actual pan width of the track
-
/select/send_gain", sendid send_gain
-
where sendid = nth_send, send_gainis a float - ranging from -193 to +6 representing the actual gain in dB for the send
-
/select/send_fader", sendid send_gain
-
where sendid = nth_send, send_gainis a float - ranging from 0 to 1 representing the actual position for the send as a fader
-
/select/send_name sendid send_name
-
where send_name is a string representing the name of the buss - this send goes to.
-
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
/select/n_inputs numberwhere number number of inputs for this strip
/select/n_outputs numberwhere number number of outputs for this strip
/select/comment textwhere text is the strip comment
/select/solo_iso statewhere state is a bool/int representing the Actual solo isolate state of the track
/select/solo_safe statewhere state is a bool/int representing the actual solo safe/lock state of the track
/select/polarity invertwhere invert is a bool/int representing the actual polarity of the track
/select/pan_stereo_width widthwhere width is a float ranging from 0 to 1 representing the actual pan width of the track
/select/send_gain", sendid send_gainwhere sendid = nth_send, send_gainis a float + ranging from -193 to +6 representing the actual gain in dB for the send
/select/send_fader", sendid send_gainwhere sendid = nth_send, send_gainis a float + ranging from 0 to 1 representing the actual position for the send as a fader
/select/send_name sendid send_namewhere send_name is a string representing the name of the buss + this send goes to.
/select/group/enable statewhere state is an int representing the current enable state + of the group the selected strip is a part of
/select/group/gain statewhere state is an int which shows the gain sharing of the + group the strip belongs to. See + Track and Bus Groups for more details
/select/group/relative statewhere state is an int which shows relative state of thew + group the strip belongs to. See + Track and Bus Groups for more details
/select/group/mute statewhere state is an int which shows the mute sharing of the + group the strip belongs to. See + Track and Bus Groups for more details
/select/group/solo statewhere state is an int which shows the solo sharing of the + group the strip belongs to. See + Track and Bus Groups for more details
/select/group/recenable statewhere state is an int which shows the recenable sharing of the + group the strip belongs to. See + Track and Bus Groups for more details
/select/group/select statewhere state is an int which shows the select sharing of the + group the strip belongs to. See + Track and Bus Groups for more details
/select/group/active statewhere state is an int which shows the route active sharing of the + group the strip belongs to. See + Track and Bus Groups for more details
/select/group/color statewhere state is an int which shows the color sharing of the + group the strip belongs to. See + Track and Bus Groups for more details
/select/group/monitoring statewhere state is an int which shows the monitoring sharing of the + group the strip belongs to. See + Track and Bus Groups for more details
/select/vcas name state ...where name is a string with the name of the VCA, and + state is an int that determines if the named VCA will control + this strip. Note that this lists all VCAs in a session. (Ardour 6.0)

Menu actions

+

+ There is no feedback for Menu actions. +

Every single menu item in Ardour's GUI is accessible via OSC. However, there is no provision for returning the state of anything set this way. This is not a bad thing as most menu items either do not have an on/off - state or that state is quite visible. Binding that affect other parameters + state or that state is quite visible. Bindings that affect other parameters that OSC does track will show on those OSC controls. Examples of this might be track record enable for tracks 1 to 32, play or stop.