X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=include%2Fosc58-controlling-ardour-with-osc.html;h=e6ba85f670988629cbf10d0509b16521d6d5f03c;hb=3c0bdbab01a9900147a5f794026960040f0f9e0c;hp=76d71536cce40d4e041e3042add0b8f19bbdbe1f;hpb=0fec8c5f7c5fc1fac85b40d025d230b26435579b;p=ardour-manual diff --git a/include/osc58-controlling-ardour-with-osc.html b/include/osc58-controlling-ardour-with-osc.html index 76d7153..e6ba85f 100644 --- a/include/osc58-controlling-ardour-with-osc.html +++ b/include/osc58-controlling-ardour-with-osc.html @@ -13,8 +13,8 @@ work with (including bank size) and two new math styles have been added to gain controls. If you are using an Ardour version of 4.7 or less, please read - Osc control in ardour 4.7 and prior. + href="@@osc-control-for-ardour-4.7-and-prior"> + Osc control in Ardour 4.7 and prior.
@@ -46,16 +46,16 @@ here"/> used to allow talent to adjust their own monitor mix using a tablet or phone that can run an OSC controller. For a full explanation of how Ardour's feedback works please read + href="@@osc58-feedback"> OSC feedback In Ardour.
- Control surface set up allows the controller to tell Ardour about it's + Control surface set up allows the controller to tell Ardour about its capabilities. The surface can tell Ardour how many control strips it - has for banking, if it is capable of setting it's faders or buttons + has for banking, if it is capable of setting its faders or buttons to values set by Ardour's GUI or automation, What kind of math the faders use and more.
@@ -74,27 +74,45 @@ here"/> able to set a port for Ardour to send to. It can also change the default setting for set_surface. For more information about Ardour's OSC configuration GUI please read + href="@@osc58-using-the-setup-dialog"> Ardour's Setup Dialog.If /set_surface is not sent, the default values are used:
These values give the same behaviour as prior versions of Ardour. (or the closest possible)
-/set_surface bank_size strip_types + feedback fadermode send_page_size plugin_page_size | +See below for an explanation of each parameter. - - + |
---|
+ The /set_surface message may have all values except the last in-line.
+ For example: /set_surface/8/31/8403/0/8 i 16
would be valid.
+ Do be careful of switches which send a 0 on release, it may be necessary
+ to set the value as the release value rather than the press value.
+
+ The /set_surface message may have less than the full set of parameters. + those left out will remain as they were before the /set_surface message was + sent. All parameters included must be valid. For example, setting send page + size would require also setting bank_size, strip_types, feedback and gain mode. + using only two parameters will set bank_size and strip_types. Sending /set_surface with + no parameters will result in Ardour returning a /set_surface message with the + current settings. Surfaces using /set_surface iiii b st fb gm as was the case + in versions of Ardour older than 5.10 will continue to work. +
Bank Size is the number of channel strips the controller supports @@ -128,7 +146,7 @@ here"/> strips.
Please see: + href="@@osc58-feedback-and-strip-types-values"> Calculating Feedback and Strip-types Values.
@@ -140,7 +158,7 @@ here"/> then adding all those numbers together for a value to send.
Please see: + href="@@osc58-feedback-and-strip-types-values#feedback"> Calculating Feedback and Strip-types Values.
Feedback can also be set with /set_surface/feedback feedback. @@ -168,12 +186,31 @@ here"/>
Gain mode can also be set with /set_surface/gainmode gainmode.
++ Send_page_size is an int for the number of send channels that can be controlled + at one time. Each channel has a name, level and enable control. (added in Ardour 5.10) +
++ Send page size can also be set with /set_surface/send_page_size send_page_size. +
++ plugin_page_size is an int for the number of plugin controls that can be controlled + at one time. Each control has a name and level. As each plugin is different (as is each + parameter), the surface should expect to control the plugin parameters with a variable + control (pot or slider) with a float value from 0 to 1 (even on/off switches). (added in + Ardour 5.10) +
++ Plugin page size can also be set with /set_surface/plugin_page_size plugin_page_size. +
The control Surface may wish to control the type a frequency of updates it receives. It can do this with querying commands. See: + href="@@osc58-querying-ardour"> Querying Ardour with OSC.
@@ -181,142 +218,134 @@ here"/>Parameter types show how the value will be used. However, they may be sent as a different type if needed, see: + href="@@osc58-parameter-types"> Parameter Types in OSC.
/transport_stop | +Stops a rolling transport |
---|---|
/transport_play | +Puts transport in play mode |
/toggle_roll | +Toggles between play and stop |
/stop_forget | +Stop transport and delete/forget last take |
/set_transport_speed speed | +where speed is a float ranging from -8.0f to 8.0f |
/ffwd | +Adds 1.5 times to transport speed to maximum +8 times normal speed |
/rewind | +Adds -1.5 times to transport speed to maximum -8 times normal speed |
/goto_start | +Move playhead to start of session |
/goto_end | +Move playhead to end of session |
/jump_bars bars | +Where bars is a float (+/-) of the number of bars to jump |
/jump_seconds seconds | +Where seconds is a float (+/-) of the number of seconds to jump |
/toggle_click | +Toggle metronome click on and off |
/add_marker | +(adds marker to the current transport position) |
/remove_marker | +Removes marker at the current transport position (if there is one) |
/next_marker | +Move playhead to next marker |
/prev_marker | +Move playhead to previous marker |
/locate spos roll | +where spos is the target position in samples and
roll is a bool/integer defining whether you want transport
- to be kept rolling or not
- |
/loop_toggle | +Toggle loop mode on and off |
/loop_location start end | +start is the beginning of a loop and end is the + end of a loop both are integer frame positions. |
/midi_panic | +Ardour will send an all notes off to all midi tracks |
/cancel_all_solos | +Cancel All Solos/PFLs/AFLs |
+ New for Ardour 5.9. +
+/scrub delta | +Where delta is a float indicating forward or reverse movement. + See OSC Scrub Modes |
---|---|
/jog delta | +Where delta is a float indicating forward or reverse movement |
/jog/mode mode | +Where mode is an int from 0 to 7 indicating what the /jog + command controls. See + OSC Jog Modes |
/toggle_punch_in | +|
---|---|
/toggle_punch_out | +|
/rec_enable_toggle | +Toggles master record enable |
/transport_frame | +Ardour sends /transport_frame current_frame |
---|---|
/transport_speed | +Ardour sends /transport_speed speed |
/record_enabled | +Ardour sends /record_enabled recordenable_status |
/undo | +|
---|---|
/redo | +|
/save_state | +(this is the regular Session > Save + operation) |
/master/gain dB | +dB is a float indicating the desired gain in dB |
---|---|
/master/fader position | +position is a float between 0 and 1 setting the desired position of the fader |
/master/db_delta delta | +where delta is a float that will increase or decrease the gain of master by the amount of the delta. (Ardour 5.11+) |
/master/trimdB dB | +dB is a float from -20 to +20 representing the desired trim gain in dB |
/master/pan_stereo_position position | +position is a float from 0 to 1 representing the desired pan position |
/master/mute key | +key is an optional float 1 representing a master bus select |
/master/select state | +state is an int of o or 1 representing the desired mute state |
/monitor/gain dB | +dB is a float indicating the desired gain in dB |
/monitor/fader position | +position is a float between 0 and 1 setting the desired position of the fader |
/monitor/db_delta delta | +where delta is a float that will increase or decrease the gain of monitor by the amount of the delta. (Ardour 5.11+) |
/monitor/mute state | +state is an int of 0 or 1 where 1 is muted |
/monitor/dim state | +state is an int of 0 or 1 where 1 is dimmed |
/monitor/mono state | +state is an int of 0 or 1 where 1 is mono mode |
@@ -337,75 +366,88 @@ here"/> below can also be sent as /strip/command/ssid param. In this case the param should be a float even if an int is required below.
-/bank_up | +Change bank to the next higher bank. |
---|---|
/bank_up delta | +Where delta is a float of 1 to bank up and -1 is bank down for use with an encoder (Ardour 5.11+) |
/bank_down | +Change bank to the next lower bank. |
/use_group state | +Where state is a float of 1 to use group or 0 to not use group. + more info on use_group |
/strip/mute ssid mute_st | +where mute_st is a bool/int representing the desired mute state of the track |
/strip/solo ssid solo_st | +where solo_st is a bool/int representing the desired solo state of the track |
/strip/solo_iso ssid state | +where state is a bool/int representing the desired solo isolate state of the track |
/strip/solo_safe ssid state | +where state is a bool/int representing the desired solo safe/lock state of the track |
/strip/monitor_input ssid monitor_st | +where monitor_st is a bool/int where 1 is forced input monitoring. |
/strip/monitor_disk ssid monitor_st | +where monitor_st is a bool/int where 1 is forced disk monitoring. When input and disk are both off, + Auto monitoring is enabled. |
/strip/recenable ssid rec_st | +where rec_st is a bool/int representing the desired rec state of the track |
/strip/record_safe ssid rec_st | +where rec_st is a bool/int representing the desired record safe state of the track |
/strip/polarity ssid invert | +where invert is a bool/int representing the desired polarity of the track |
/strip/gain ssid gain | +where gain is a float ranging from -193 to 6 representing the desired gain of the track in dB. |
/strip/fader ssid position | +where position is a float ranging from 0 to 1 representing the fader control position. |
/strip/db_delta ssid delta | +where delta is a float that will increase or decrease the gain of a track by the amount of the delta. (Ardour 5.11+) |
/strip/*/automation ssid mode | +where mode is an int ranging from 0 to 3 representing the desired automation mode for the control. + See OSC Automation. |
/strip/*/touch ssid state | +where state is an int of 1 for touched and 0 for released. + See OSC Automation. |
/strip/trimdB ssid trim_db | +where trim_db is a float ranging from -20 to 20 representing the desired trim of the track in dB. |
/strip/pan_stereo_position ssid position | +where position is a float ranging from 0 to 1 representing the desired pan position of the track |
/strip/pan_stereo_width ssid width | +where width is a float ranging from 0 to 1 representing the desired pan width of the track |
/strip/send/gain ssid sendid send_gain | +where sendid = nth_send, send_gain is a float + ranging from -193 to +6 representing the desired gain in dB for the send |
/strip/send/fader ssid sendid send_gain | +where sendid = nth_send, send_gain is a float + ranging from 0 to 1 representing the desired position for the send as a fader |
/strip/send/enable ssid sendid state | +where sendid = nth_send, state is 1 for enabled and 0 for disabled |
/strip/list | +see: + Querying Ardour with OSC. |
/strip/sends ssid | +see: + Querying Ardour with OSC. |
/strip/receives ssid | +see: + Querying Ardour with OSC. |
/strip/plugin/list ssid | +see: + Querying Ardour with OSC. |
/strip/plugin/descriptor ssid | +see: + Querying Ardour with OSC. |
/strip/plugin/reset ssid piid | +where piid = nth Plugin, will reset all values to the plugin's original values |
/strip/plugin/activate ssid piid | +where piid = nth Plugin, will set the plugin's state to active |
/strip/plugin/deactivate ssid piid | +where piid = nth Plugin, will set the plugin's state to inactive |
/strip/plugin/parameter ssid piid param value | +where piid = nth Plugin, param = nth param, value + is a float ranging from 0 to 1 representing the desired parameter value |
/strip/name ssid name | +where name is a string for the desired name of the track |
New for Ardour 5, A whole set of operations that work on the selected @@ -414,7 +456,7 @@ here"/>
Selected strip operations are complex enough for their own page. Please read: + href="@@osc58-selection-and-expansion-considerations"> Selection Considerations in OSC. This is most important if more than one OSC surface is being used with Ardour.
@@ -440,59 +482,78 @@ here"/> -/strip/select ssid y/n | +Where y/n = 1 for select. Sets both GUI select and strip + to expanded mode. (0 is ignored) |
---|---|
/strip/expand ssid y/n | +Where y/n = 1 for expanded mode. Sets only local strip to + Expanded. Setting to 0 resets the expansion to follow selection. |
/select/expand y/n | +Where y/n = 1 for expanded mode, 0 for Select mode. |
/select/recenable y/n | +Where y/n is 1 for enabled and 0 for disabled |
/select/record_safe y/n | +Where y/n is 1 for safe and 0 for unlocked |
/select/mute y/n | +Where y/n is 1 for enabled and 0 for disabled |
/select/solo y/n | +Where y/n is 1 for enabled and 0 for disabled |
/select/solo_iso state | +where state is a bool/int representing the desired solo isolate state of the track |
/select/solo_safe state | +where state is a bool/int representing the desired solo safe/lock state of the track |
/select/monitor_input y/n | +Where y/n is 1 for monitor from input and 0 for auto |
/select/monitor_disk y/n | +Where y/n is 1 for monitor from disk and 0 for auto |
/select/polarity invert | +where invert is a bool/int representing the desired polarity of the track |
/select/gain gain | +Where gain is a float ranging from -193 to 6 representing the desired gain of the track in dB. |
/select/fader position | +Where position is an float ranging from 0 to 1 representing the fader control position. |
/select/db_delta delta | +where delta is a float that will increase or decrease the gain of the selected track by the amount of the delta. (Ardour 5.11+) |
/select/*/automation mode | +where mode is an int ranging from 0 to 3 representing the desired automation mode for the control. + See OSC Automation. |
/select/*/touch state | +where state is an int of 1 for touched and 0 for released. + See OSC Automation. |
/select/trimdB trim_db | +where trim_db is a float ranging from -20 to 20 representing the desired trim of the track in dB. |
/select/pan_stereo_position position | +where position is a float ranging from 0 to 1 representing the desired pan position of the track |
/select/pan_stereo_width width | +where width is a float ranging from 0 to 1 representing the desired pan width of the track |
/select/pan_elevation_position position | +where position is a float ranging from 0 to 1 representing the desired pan elevation of the track |
/select/pan_frontback_position position | +where position is a float ranging from 0 to 1 representing the desired front to back position of the track |
/select/pan_lfe_control value | +where value is a float ranging from 0 to 1 representing the desired LFE control value for the track |
/select/send_gain", sendid send_gain | +where sendid = nth_send, send_gain is a float + ranging from -193 to +6 representing the desired gain in dB for the send |
/select/send_fader", sendid send_gain | +where sendid = nth_send, send_gain is a float + ranging from 0 to 1 representing the desired position for the send as a fader |
/select/send_enable", sendid state | +where sendid = nth_send, state is 1 for enabled and 0 for disabled |
/select/send_page", delta | +where delta is an int or float selecting another send as a delta from the current send. |
/select/plugin_page", delta | +where delta is an int or float selecting another plugin parameter as a delta from the current parameter. |
/select/plugin/parameter", plugin parameter value | +where plugin = nth plugin, parameter = nth parameter and value is a float from 0 to 1 |
+ /select/send_page
and /select/plugin_page
may be used
+ with a page up and page down switch by using a switch with a value of 1
+ for page up and a switch with a value of -1
for page down. An encoder
+ can be used as well. (these commands were added in Ardour version 5.10)
+
Every single menu item in Ardour's GUI is accessible via OSC. There is @@ -500,10 +561,64 @@ here"/> with the mouse (or keyboard):
/access_action action_name- The - list of actions shows all available values of action-name as of - June 2016 for Ardour 5.0.pre0.1. You can get the current list at any - time by running Ardour with the -b flag. -
+ As of Ardour 5.9, access_action can be inlined for control surfaces + that are unable to send string parameters. The action_name is composed of + a group and an action in the form of Group/action which fits very well + as an OSC path extension: + +/access_action/Group/action key_pressed ++ The key_pressed is optional, but if present is a float 1 or 0 where the + command is ignored if key_pressed is 0. +
++ Some of the Menu Actions duplicate other OSC commands. In all cases it is better + to use the OSC commands rather than the Menu Actions if possible as the OSC commands + are more direct. +
++ The list of actions + shows all available values of action-name for Ardour. +
+ +