Companion module for the DiGiCo S31 with an iPad relay (v1)

Bitfocus Companion 5 connection module (ESM, @companion-module/base ~2.1.3,
runtime node22) for the DiGiCo S21/S31. It occupies the console's single
iPad slot, controls per-channel sends/assigns to one buss, aux send
level/on/pan, mutes, faders and snapshots, and relays any number of DiGiCo
iPad apps through to the console byte-for-byte.

The S31's iPad extension was probed live: it speaks the SD/DiGiCo Pad OSC
tree (console receives on 8000, replies only to the configured iPad port
9000). tools/mock-s31.js emulates the console and test/selftest.js runs the
link + relay end to end against it. docs/design-v2.md is the brief for the
generic v2 rewrite.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
2026-10-15 15:55:18 -04:00
co-authored by Claude Fable 5.1
commit 131cdfd81f
23 changed files with 10066 additions and 0 deletions
+589
View File
@@ -0,0 +1,589 @@
DiGiCo OSC Command List for Other OSC 17/11/2014
Example Message formats:
/sd/Input_Channels/1/Channel_Input/name, s,FRED - Change Input channel 1 label to "Fred"
/sd/Input_Channels/1/mute, i,1 - Set Input channel 1 Mute ON
/sd/Input_Channels/1/fader, f,1 - Set Input channel 1 fader to MAX
TYPE OSC MIN OSC MAX
Prefix
/sd/ Input_Channels / * / Channel_Input / trim Float 0 1
/sd/ Input_Channels / * / Channel_Input / phase Int 0 3
/sd/ Input_Channels / * / Channel_Input / main / alt_in Int 0 1
/sd/ Input_Channels / * / Channel_Input / phantom Int 0 1
/sd/ Input_Channels / * / Channel_Input / alt_phantom Int 0 1
/sd/ Input_Channels / * / Channel_Input / analog_gain Float 0 1
/sd/ Input_Channels / * / Channel_Input / alt_analog_gain Float 0 1
/sd/ Input_Channels / * / Channel_Input / input_pad Int 0 1
/sd/ Input_Channels / * / Channel_Input / alt_input_pad Int 0 1
/sd/ Input_Channels / * / Channel_Input / name String
/sd/ Input_Channels / * / Aux_Send / * / send_level Float 0 1
/sd/ Input_Channels / * / Aux_Send / * / send_on Int 0 1
/sd/ Input_Channels / * / Aux_Send / * / send_pan Float 0 1
/sd/ Input_Channels / * / Group_Send / * / group Int 0 1
/sd/ Input_Channels / * / EQ / eq_in Int 0 1
/sd/ Input_Channels / * / EQ / eq_on_1 Int 0 1
/sd/ Input_Channels / * / EQ / eq_on_2 Int 0 1
/sd/ Input_Channels / * / EQ / eq_on_3 Int 0 1
/sd/ Input_Channels / * / EQ / eq_on_4 Int 0 1
/sd/ Input_Channels / * / EQ / eq_curve_1 Int 1 4
/sd/ Input_Channels / * / EQ / eq_curve_2 Int 1 4
/sd/ Input_Channels / * / EQ / eq_curve_3 Int 1 4
/sd/ Input_Channels / * / EQ / eq_curve_4 Int 1 4
/sd/ Input_Channels / * / EQ / eq_freq_1 Float 0 1
/sd/ Input_Channels / * / EQ / eq_freq_2 Float 0 1
/sd/ Input_Channels / * / EQ / eq_freq_3 Float 0 1
/sd/ Input_Channels / * / EQ / eq_freq_4 Float 0 1
/sd/ Input_Channels / * / EQ / eq_Q_1 Float 0 1
/sd/ Input_Channels / * / EQ / eq_Q_2 Float 0 1
/sd/ Input_Channels / * / EQ / eq_Q_3 Float 0 1
/sd/ Input_Channels / * / EQ / eq_Q_4 Float 0 1
/sd/ Input_Channels / * / EQ / eq_gain_1 Float 0 1
/sd/ Input_Channels / * / EQ / eq_gain_2 Float 0 1
/sd/ Input_Channels / * / EQ / eq_gain_3 Float 0 1
/sd/ Input_Channels / * / EQ / eq_gain_4 Float 0 1
/sd/ Input_Channels / * / EQ / eq_over-under_1 Int 0 1
/sd/ Input_Channels / * / EQ / eq_over-under_2 Int 0 1
/sd/ Input_Channels / * / EQ / eq_over-under_3 Int 0 1
/sd/ Input_Channels / * / EQ / eq_over-under_4 Int 0 1
/sd/ Input_Channels / * / EQ / eq_thresh_1 Float 0 1
/sd/ Input_Channels / * / EQ / eq_thresh_2 Float 0 1
/sd/ Input_Channels / * / EQ / eq_thresh_3 Float 0 1
/sd/ Input_Channels / * / EQ / eq_thresh_4 Float 0 1
/sd/ Input_Channels / * / EQ / eq_ratio_1 Float 0 1
/sd/ Input_Channels / * / EQ / eq_ratio_2 Float 0 1
/sd/ Input_Channels / * / EQ / eq_ratio_3 Float 0 1
/sd/ Input_Channels / * / EQ / eq_ratio_4 Float 0 1
/sd/ Input_Channels / * / EQ / eq_attack_1 Float 0 1
/sd/ Input_Channels / * / EQ / eq_attack_2 Float 0 1
/sd/ Input_Channels / * / EQ / eq_attack_3 Float 0 1
/sd/ Input_Channels / * / EQ / eq_attack_4 Float 0 1
/sd/ Input_Channels / * / EQ / eq_release_1 Float 0 1
/sd/ Input_Channels / * / EQ / eq_release_2 Float 0 1
/sd/ Input_Channels / * / EQ / eq_release_3 Float 0 1
/sd/ Input_Channels / * / EQ / eq_release_4 Float 0 1
/sd/ Input_Channels / * / EQ / eq_symm_Q_1 Int 0 1
/sd/ Input_Channels / * / EQ / eq_symm_Q_2 Int 0 1
/sd/ Input_Channels / * / EQ / eq_symm_Q_3 Int 0 1
/sd/ Input_Channels / * / EQ / eq_symm_Q_4 Int 0 1
/sd/ Input_Channels / * / EQ / dynamic_eq_on_1 Int 0 1
/sd/ Input_Channels / * / EQ / dynamic_eq_on_2 Int 0 1
/sd/ Input_Channels / * / EQ / dynamic_eq_on_3 Int 0 1
/sd/ Input_Channels / * / EQ / dynamic_eq_on_4 Int 0 1
/sd/ Input_Channels / * / Dynamics / comp_in Int 0 1
/sd/ Input_Channels / * / Dynamics / gate_in Int 0 1
/sd/ Input_Channels / * / Dynamics / comp_band_in_1 Int 0 1
/sd/ Input_Channels / * / Dynamics / comp_band_in_2 Int 0 1
/sd/ Input_Channels / * / Dynamics / comp_band_in_3 Int 0 1
/sd/ Input_Channels / * / Dynamics / comp_LP_crossover Float 0 1
/sd/ Input_Channels / * / Dynamics / comp_HP_crossover Float 0 1
/sd/ Input_Channels / * / Dynamics / comp_gain_1 Float 0 1
/sd/ Input_Channels / * / Dynamics / comp_gain_2 Float 0 1
/sd/ Input_Channels / * / Dynamics / comp_gain_3 Float 0 1
/sd/ Input_Channels / * / Dynamics / comp_gain_4 Float 0 1
/sd/ Input_Channels / * / Dynamics / gate_range Float 0 1
/sd/ Input_Channels / * / Dynamics / comp_thresh_1 Float 0 1
/sd/ Input_Channels / * / Dynamics / comp_thresh_2 Float 0 1
/sd/ Input_Channels / * / Dynamics / comp_thresh_3 Float 0 1
/sd/ Input_Channels / * / Dynamics / gate_thresh Float 0 1
/sd/ Input_Channels / * / Dynamics / comp_knee_1 Int 0 2
/sd/ Input_Channels / * / Dynamics / comp_knee_2 Int 0 2
/sd/ Input_Channels / * / Dynamics / comp_knee_3 Int 0 2
/sd/ Input_Channels / * / Dynamics / comp_knee_4 Int 0 2
/sd/ Input_Channels / * / Dynamics / comp_ratio_1 Float 0 1
/sd/ Input_Channels / * / Dynamics / comp_ratio_2 Float 0 1
/sd/ Input_Channels / * / Dynamics / comp_ratio_3 Float 0 1
/sd/ Input_Channels / * / Dynamics / comp_ratio_4 Float 0 1
/sd/ Input_Channels / * / Dynamics / comp_attack_1 Float 0 1
/sd/ Input_Channels / * / Dynamics / comp_attack_2 Float 0 1
/sd/ Input_Channels / * / Dynamics / comp_attack_3 Float 0 1
/sd/ Input_Channels / * / Dynamics / gate_attack Float 0 1
/sd/ Input_Channels / * / Dynamics / comp_release_1 Float 0 1
/sd/ Input_Channels / * / Dynamics / comp_release_2 Float 0 1
/sd/ Input_Channels / * / Dynamics / comp_release_3 Float 0 1
/sd/ Input_Channels / * / Dynamics / gate_release Float 0 1
/sd/ Input_Channels / * / Dynamics / gate_hold Float 0 1
/sd/ Input_Channels / * / Dynamics / key_solo Int 0 1
/sd/ Input_Channels / * / Dynamics / comp_listen_1 Int 0 1
/sd/ Input_Channels / * / Dynamics / comp_listen_2 Int 0 1
/sd/ Input_Channels / * / Dynamics / comp_listen_3 Int 0 1
/sd/ Input_Channels / * / Dynamics / comp_all_gain Float 0 1
/sd/ Input_Channels / * / Dynamics / comp_all_thresh Float 0 1
/sd/ Input_Channels / * / Dynamics / comp_auto-gain_1 Int 0 1
/sd/ Input_Channels / * / Dynamics / comp_auto-gain_2 Int 0 1
/sd/ Input_Channels / * / Dynamics / comp_auto-gain_3 Int 0 1
/sd/ Input_Channels / * / Dynamics / comp_auto-gain_4 Int 0 1
/sd/ Input_Channels / * / Dynamics / desser_centre_freq Float 0 1
/sd/ Input_Channels / * / Dynamics / gate_centre_freq Float 0 1
/sd/ Input_Channels / * / Dynamics / desser_freq_width Float 0 1
/sd/ Input_Channels / * / Dynamics / gate_freq_width Float 0 1
/sd/ Input_Channels / * / Filters / hi_filter_in Int 0 1
/sd/ Input_Channels / * / Filters / lo_filter_in Int 0 1
/sd/ Input_Channels / * / Filters / hi_filter_freq Float 0 1
/sd/ Input_Channels / * / Filters / lo_filter_freq Float 0 1
/sd/ Input_Channels / * / Insert / insert_A_in Int 0 1
/sd/ Input_Channels / * / Insert / insert_B_in Int 0 1
/sd/ Input_Channels / * / Channel_Delay / delay_on Int 0 1
/sd/ Input_Channels / * / Channel_Delay / delay Float 0 1
/sd/ Input_Channels / * / Channel_Delay / fine_delay Float 0 1
/sd/ Input_Channels / * / CGs_level Float 0 1
/sd/ Input_Channels / * / solo Int 0 1
/sd/ Input_Channels / * / CGs_mute Int 0 1
/sd/ Input_Channels / * / fader Float 0 1
/sd/ Input_Channels / * / mute Int 0 1
/sd/ Input_Channels / * / Panner / f-b Float 0 1
/sd/ Input_Channels / * / Panner / pan Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_in Int 0 1
/sd/ Aux_Outputs / * / EQ / eq_on_1 Int 0 1
/sd/ Aux_Outputs / * / EQ / eq_on_2 Int 0 1
/sd/ Aux_Outputs / * / EQ / eq_on_3 Int 0 1
/sd/ Aux_Outputs / * / EQ / eq_on_4 Int 0 1
/sd/ Aux_Outputs / * / EQ / eq_on_5 Int 0 1
/sd/ Aux_Outputs / * / EQ / eq_on_6 Int 0 1
/sd/ Aux_Outputs / * / EQ / eq_on_7 Int 0 1
/sd/ Aux_Outputs / * / EQ / eq_on_8 Int 0 1
/sd/ Aux_Outputs / * / EQ / eq_curve_1 Int 1 4
/sd/ Aux_Outputs / * / EQ / eq_curve_2 Int 1 4
/sd/ Aux_Outputs / * / EQ / eq_curve_3 Int 1 4
/sd/ Aux_Outputs / * / EQ / eq_curve_4 Int 1 4
/sd/ Aux_Outputs / * / EQ / eq_curve_5 Int 1 4
/sd/ Aux_Outputs / * / EQ / eq_curve_6 Int 1 4
/sd/ Aux_Outputs / * / EQ / eq_curve_7 Int 1 4
/sd/ Aux_Outputs / * / EQ / eq_curve_8 Int 1 4
/sd/ Aux_Outputs / * / EQ / eq_freq_1 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_freq_2 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_freq_3 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_freq_4 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_freq_5 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_freq_6 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_freq_7 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_freq_8 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_Q_1 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_Q_2 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_Q_3 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_Q_4 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_Q_5 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_Q_6 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_Q_7 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_Q_8 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_gain_1 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_gain_2 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_gain_3 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_gain_4 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_gain_5 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_gain_6 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_gain_7 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_gain_8 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_over-under_1 Int 0 1
/sd/ Aux_Outputs / * / EQ / eq_over-under_2 Int 0 1
/sd/ Aux_Outputs / * / EQ / eq_over-under_3 Int 0 1
/sd/ Aux_Outputs / * / EQ / eq_over-under_4 Int 0 1
/sd/ Aux_Outputs / * / EQ / eq_thresh_1 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_thresh_2 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_thresh_3 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_thresh_4 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_ratio_1 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_ratio_2 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_ratio_3 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_ratio_4 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_attack_1 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_attack_2 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_attack_3 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_attack_4 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_release_1 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_release_2 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_release_3 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_release_4 Float 0 1
/sd/ Aux_Outputs / * / EQ / eq_pre-ins Int 0 1
/sd/ Aux_Outputs / * / EQ / eq_symm_Q_1 Int 0 1
/sd/ Aux_Outputs / * / EQ / eq_symm_Q_2 Int 0 1
/sd/ Aux_Outputs / * / EQ / eq_symm_Q_3 Int 0 1
/sd/ Aux_Outputs / * / EQ / eq_symm_Q_4 Int 0 1
/sd/ Aux_Outputs / * / EQ / eq_symm_Q_5 Int 0 1
/sd/ Aux_Outputs / * / EQ / eq_symm_Q_6 Int 0 1
/sd/ Aux_Outputs / * / EQ / eq_symm_Q_7 Int 0 1
/sd/ Aux_Outputs / * / EQ / eq_symm_Q_8 Int 0 1
/sd/ Aux_Outputs / * / EQ / dynamic_eq_on_1 Int 0 1
/sd/ Aux_Outputs / * / EQ / dynamic_eq_on_2 Int 0 1
/sd/ Aux_Outputs / * / EQ / dynamic_eq_on_3 Int 0 1
/sd/ Aux_Outputs / * / EQ / dynamic_eq_on_4 Int 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_in Int 0 1
/sd/ Aux_Outputs / * / Dynamics / gate_in Int 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_band_in_1 Int 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_band_in_2 Int 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_band_in_3 Int 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_LP_crossover Float 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_HP_crossover Float 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_gain_1 Float 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_gain_2 Float 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_gain_3 Float 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_gain_4 Float 0 1
/sd/ Aux_Outputs / * / Dynamics / gate_range Float 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_thresh_1 Float 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_thresh_2 Float 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_thresh_3 Float 0 1
/sd/ Aux_Outputs / * / Dynamics / gate_thresh Float 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_knee_1 Int 0 2
/sd/ Aux_Outputs / * / Dynamics / comp_knee_2 Int 0 2
/sd/ Aux_Outputs / * / Dynamics / comp_knee_3 Int 0 2
/sd/ Aux_Outputs / * / Dynamics / comp_knee_4 Int 0 2
/sd/ Aux_Outputs / * / Dynamics / comp_ratio_1 Float 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_ratio_2 Float 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_ratio_3 Float 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_ratio_4 Float 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_attack_1 Float 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_attack_2 Float 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_attack_3 Float 0 1
/sd/ Aux_Outputs / * / Dynamics / gate_attack Float 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_release_1 Float 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_release_2 Float 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_release_3 Float 0 1
/sd/ Aux_Outputs / * / Dynamics / gate_release Float 0 1
/sd/ Aux_Outputs / * / Dynamics / gate_hold Float 0 1
/sd/ Aux_Outputs / * / Dynamics / key_solo Int 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_listen_1 Int 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_listen_2 Int 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_listen_3 Int 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_all_gain Float 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_all_thresh Float 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_auto-gain_1 Int 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_auto-gain_2 Int 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_auto-gain_3 Int 0 1
/sd/ Aux_Outputs / * / Dynamics / comp_auto-gain_4 Int 0 1
/sd/ Aux_Outputs / * / Dynamics / desser_centre_freq Float 0 1
/sd/ Aux_Outputs / * / Dynamics / gate_centre_freq Float 0 1
/sd/ Aux_Outputs / * / Dynamics / desser_freq_width Float 0 1
/sd/ Aux_Outputs / * / Dynamics / gate_freq_width Float 0 1
/sd/ Aux_Outputs / * / Insert / insert_A_in Int 0 1
/sd/ Aux_Outputs / * / Insert / insert_B_in Int 0 1
/sd/ Aux_Outputs / * / Channel_Delay / delay_on Int 0 1
/sd/ Aux_Outputs / * / Channel_Delay / delay Float 0 1
/sd/ Aux_Outputs / * / Channel_Delay / fine_delay Float 0 1
/sd/ Aux_Outputs / * / Buss_Trim / trim Float 0 1
/sd/ Aux_Outputs / * / Buss_Trim / phase Int 0 3
/sd/ Aux_Outputs / * / Buss_Trim / name String
/sd/ Aux_Outputs / * / CGs_level Float 0 1
/sd/ Aux_Outputs / * / solo Int 0 1
/sd/ Aux_Outputs / * / CGs_mute Int 0 1
/sd/ Aux_Outputs / * / fader Float 0 1
/sd/ Aux_Outputs / * / mute Int 0 1
/sd/ Group_Outputs / * / Group_Send / * / group Int 0 1
/sd/ Group_Outputs / * / EQ / eq_in Int 0 1
/sd/ Group_Outputs / * / EQ / eq_on_1 Int 0 1
/sd/ Group_Outputs / * / EQ / eq_on_2 Int 0 1
/sd/ Group_Outputs / * / EQ / eq_on_3 Int 0 1
/sd/ Group_Outputs / * / EQ / eq_on_4 Int 0 1
/sd/ Group_Outputs / * / EQ / eq_on_5 Int 0 1
/sd/ Group_Outputs / * / EQ / eq_on_6 Int 0 1
/sd/ Group_Outputs / * / EQ / eq_on_7 Int 0 1
/sd/ Group_Outputs / * / EQ / eq_on_8 Int 0 1
/sd/ Group_Outputs / * / EQ / eq_curve_1 Int 1 4
/sd/ Group_Outputs / * / EQ / eq_curve_2 Int 1 4
/sd/ Group_Outputs / * / EQ / eq_curve_3 Int 1 4
/sd/ Group_Outputs / * / EQ / eq_curve_4 Int 1 4
/sd/ Group_Outputs / * / EQ / eq_curve_5 Int 1 4
/sd/ Group_Outputs / * / EQ / eq_curve_6 Int 1 4
/sd/ Group_Outputs / * / EQ / eq_curve_7 Int 1 4
/sd/ Group_Outputs / * / EQ / eq_curve_8 Int 1 4
/sd/ Group_Outputs / * / EQ / eq_freq_1 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_freq_2 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_freq_3 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_freq_4 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_freq_5 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_freq_6 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_freq_7 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_freq_8 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_Q_1 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_Q_2 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_Q_3 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_Q_4 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_Q_5 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_Q_6 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_Q_7 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_Q_8 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_gain_1 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_gain_2 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_gain_3 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_gain_4 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_gain_5 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_gain_6 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_gain_7 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_gain_8 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_over-under_1 Int 0 1
/sd/ Group_Outputs / * / EQ / eq_over-under_2 Int 0 1
/sd/ Group_Outputs / * / EQ / eq_over-under_3 Int 0 1
/sd/ Group_Outputs / * / EQ / eq_over-under_4 Int 0 1
/sd/ Group_Outputs / * / EQ / eq_thresh_1 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_thresh_2 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_thresh_3 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_thresh_4 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_ratio_1 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_ratio_2 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_ratio_3 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_ratio_4 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_attack_1 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_attack_2 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_attack_3 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_attack_4 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_release_1 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_release_2 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_release_3 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_release_4 Float 0 1
/sd/ Group_Outputs / * / EQ / eq_pre-ins Int 0 1
/sd/ Group_Outputs / * / EQ / eq_symm_Q_1 Int 0 1
/sd/ Group_Outputs / * / EQ / eq_symm_Q_2 Int 0 1
/sd/ Group_Outputs / * / EQ / eq_symm_Q_3 Int 0 1
/sd/ Group_Outputs / * / EQ / eq_symm_Q_4 Int 0 1
/sd/ Group_Outputs / * / EQ / eq_symm_Q_5 Int 0 1
/sd/ Group_Outputs / * / EQ / eq_symm_Q_6 Int 0 1
/sd/ Group_Outputs / * / EQ / eq_symm_Q_7 Int 0 1
/sd/ Group_Outputs / * / EQ / eq_symm_Q_8 Int 0 1
/sd/ Group_Outputs / * / EQ / dynamic_eq_on_1 Int 0 1
/sd/ Group_Outputs / * / EQ / dynamic_eq_on_2 Int 0 1
/sd/ Group_Outputs / * / EQ / dynamic_eq_on_3 Int 0 1
/sd/ Group_Outputs / * / EQ / dynamic_eq_on_4 Int 0 1
/sd/ Group_Outputs / * / Dynamics / comp_in Int 0 1
/sd/ Group_Outputs / * / Dynamics / gate_in Int 0 1
/sd/ Group_Outputs / * / Dynamics / comp_band_in_1 Int 0 1
/sd/ Group_Outputs / * / Dynamics / comp_band_in_2 Int 0 1
/sd/ Group_Outputs / * / Dynamics / comp_band_in_3 Int 0 1
/sd/ Group_Outputs / * / Dynamics / comp_LP_crossover Float 0 1
/sd/ Group_Outputs / * / Dynamics / comp_HP_crossover Float 0 1
/sd/ Group_Outputs / * / Dynamics / comp_gain_1 Float 0 1
/sd/ Group_Outputs / * / Dynamics / comp_gain_2 Float 0 1
/sd/ Group_Outputs / * / Dynamics / comp_gain_3 Float 0 1
/sd/ Group_Outputs / * / Dynamics / comp_gain_4 Float 0 1
/sd/ Group_Outputs / * / Dynamics / gate_range Float 0 1
/sd/ Group_Outputs / * / Dynamics / comp_thresh_1 Float 0 1
/sd/ Group_Outputs / * / Dynamics / comp_thresh_2 Float 0 1
/sd/ Group_Outputs / * / Dynamics / comp_thresh_3 Float 0 1
/sd/ Group_Outputs / * / Dynamics / gate_thresh Float 0 1
/sd/ Group_Outputs / * / Dynamics / comp_knee_1 Int 0 2
/sd/ Group_Outputs / * / Dynamics / comp_knee_2 Int 0 2
/sd/ Group_Outputs / * / Dynamics / comp_knee_3 Int 0 2
/sd/ Group_Outputs / * / Dynamics / comp_knee_4 Int 0 2
/sd/ Group_Outputs / * / Dynamics / comp_ratio_1 Float 0 1
/sd/ Group_Outputs / * / Dynamics / comp_ratio_2 Float 0 1
/sd/ Group_Outputs / * / Dynamics / comp_ratio_3 Float 0 1
/sd/ Group_Outputs / * / Dynamics / comp_ratio_4 Float 0 1
/sd/ Group_Outputs / * / Dynamics / comp_attack_1 Float 0 1
/sd/ Group_Outputs / * / Dynamics / comp_attack_2 Float 0 1
/sd/ Group_Outputs / * / Dynamics / comp_attack_3 Float 0 1
/sd/ Group_Outputs / * / Dynamics / gate_attack Float 0 1
/sd/ Group_Outputs / * / Dynamics / comp_release_1 Float 0 1
/sd/ Group_Outputs / * / Dynamics / comp_release_2 Float 0 1
/sd/ Group_Outputs / * / Dynamics / comp_release_3 Float 0 1
/sd/ Group_Outputs / * / Dynamics / gate_release Float 0 1
/sd/ Group_Outputs / * / Dynamics / gate_hold Float 0 1
/sd/ Group_Outputs / * / Dynamics / key_solo Int 0 1
/sd/ Group_Outputs / * / Dynamics / comp_listen_1 Int 0 1
/sd/ Group_Outputs / * / Dynamics / comp_listen_2 Int 0 1
/sd/ Group_Outputs / * / Dynamics / comp_listen_3 Int 0 1
/sd/ Group_Outputs / * / Dynamics / comp_all_gain Float 0 1
/sd/ Group_Outputs / * / Dynamics / comp_all_thresh Float 0 1
/sd/ Group_Outputs / * / Dynamics / comp_auto-gain_1 Int 0 1
/sd/ Group_Outputs / * / Dynamics / comp_auto-gain_2 Int 0 1
/sd/ Group_Outputs / * / Dynamics / comp_auto-gain_3 Int 0 1
/sd/ Group_Outputs / * / Dynamics / comp_auto-gain_4 Int 0 1
/sd/ Group_Outputs / * / Dynamics / desser_centre_freq Float 0 1
/sd/ Group_Outputs / * / Dynamics / gate_centre_freq Float 0 1
/sd/ Group_Outputs / * / Dynamics / desser_freq_width Float 0 1
/sd/ Group_Outputs / * / Dynamics / gate_freq_width Float 0 1
/sd/ Group_Outputs / * / Insert / insert_A_in Int 0 1
/sd/ Group_Outputs / * / Insert / insert_B_in Int 0 1
/sd/ Group_Outputs / * / Channel_Delay / delay_on Int 0 1
/sd/ Group_Outputs / * / Channel_Delay / delay Float 0 1
/sd/ Group_Outputs / * / Channel_Delay / fine_delay Float 0 1
/sd/ Group_Outputs / * / Buss_Trim / trim Float 0 1
/sd/ Group_Outputs / * / Buss_Trim / phase Int 0 3
/sd/ Group_Outputs / * / Buss_Trim / name String
/sd/ Group_Outputs / * / CGs_level Float 0 1
/sd/ Group_Outputs / * / solo Int 0 1
/sd/ Group_Outputs / * / CGs_mute Int 0 1
/sd/ Group_Outputs / * / fader Float 0 1
/sd/ Group_Outputs / * / mute Int 0 1
/sd/ Control_Groups / * / solo Int 0 1
/sd/ Control_Groups / * / fader Float 0 1
/sd/ Control_Groups / * / mute Int 0 1
/sd/ Control_Groups / * / name String
/sd/ Matrix_Inputs / * / Matrix_Send / * / send_level Float 0 1
/sd/ Matrix_Inputs / * / Matrix_Send / * / send_on Int 0 1
/sd/ Matrix_Outputs / * / EQ / eq_in Int 0 1
/sd/ Matrix_Outputs / * / EQ / eq_on_1 Int 0 1
/sd/ Matrix_Outputs / * / EQ / eq_on_2 Int 0 1
/sd/ Matrix_Outputs / * / EQ / eq_on_3 Int 0 1
/sd/ Matrix_Outputs / * / EQ / eq_on_4 Int 0 1
/sd/ Matrix_Outputs / * / EQ / eq_on_5 Int 0 1
/sd/ Matrix_Outputs / * / EQ / eq_on_6 Int 0 1
/sd/ Matrix_Outputs / * / EQ / eq_on_7 Int 0 1
/sd/ Matrix_Outputs / * / EQ / eq_on_8 Int 0 1
/sd/ Matrix_Outputs / * / EQ / eq_curve_1 Int 1 4
/sd/ Matrix_Outputs / * / EQ / eq_curve_2 Int 1 4
/sd/ Matrix_Outputs / * / EQ / eq_curve_3 Int 1 4
/sd/ Matrix_Outputs / * / EQ / eq_curve_4 Int 1 4
/sd/ Matrix_Outputs / * / EQ / eq_curve_5 Int 1 4
/sd/ Matrix_Outputs / * / EQ / eq_curve_6 Int 1 4
/sd/ Matrix_Outputs / * / EQ / eq_curve_7 Int 1 4
/sd/ Matrix_Outputs / * / EQ / eq_curve_8 Int 1 4
/sd/ Matrix_Outputs / * / EQ / eq_freq_1 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_freq_2 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_freq_3 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_freq_4 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_freq_5 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_freq_6 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_freq_7 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_freq_8 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_Q_1 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_Q_2 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_Q_3 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_Q_4 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_Q_5 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_Q_6 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_Q_7 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_Q_8 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_gain_1 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_gain_2 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_gain_3 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_gain_4 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_gain_5 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_gain_6 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_gain_7 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_gain_8 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_over-under_1 Int 0 1
/sd/ Matrix_Outputs / * / EQ / eq_over-under_2 Int 0 1
/sd/ Matrix_Outputs / * / EQ / eq_over-under_3 Int 0 1
/sd/ Matrix_Outputs / * / EQ / eq_over-under_4 Int 0 1
/sd/ Matrix_Outputs / * / EQ / eq_thresh_1 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_thresh_2 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_thresh_3 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_thresh_4 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_ratio_1 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_ratio_2 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_ratio_3 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_ratio_4 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_attack_1 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_attack_2 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_attack_3 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_attack_4 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_release_1 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_release_2 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_release_3 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_release_4 Float 0 1
/sd/ Matrix_Outputs / * / EQ / eq_pre-ins Int 0 1
/sd/ Matrix_Outputs / * / EQ / eq_symm_Q_1 Int 0 1
/sd/ Matrix_Outputs / * / EQ / eq_symm_Q_2 Int 0 1
/sd/ Matrix_Outputs / * / EQ / eq_symm_Q_3 Int 0 1
/sd/ Matrix_Outputs / * / EQ / eq_symm_Q_4 Int 0 1
/sd/ Matrix_Outputs / * / EQ / eq_symm_Q_5 Int 0 1
/sd/ Matrix_Outputs / * / EQ / eq_symm_Q_6 Int 0 1
/sd/ Matrix_Outputs / * / EQ / eq_symm_Q_7 Int 0 1
/sd/ Matrix_Outputs / * / EQ / eq_symm_Q_8 Int 0 1
/sd/ Matrix_Outputs / * / EQ / dynamic_eq_on_1 Int 0 1
/sd/ Matrix_Outputs / * / EQ / dynamic_eq_on_2 Int 0 1
/sd/ Matrix_Outputs / * / EQ / dynamic_eq_on_3 Int 0 1
/sd/ Matrix_Outputs / * / EQ / dynamic_eq_on_4 Int 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_in Int 0 1
/sd/ Matrix_Outputs / * / Dynamics / gate_in Int 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_band_in_1 Int 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_band_in_2 Int 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_band_in_3 Int 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_LP_crossover Float 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_HP_crossover Float 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_gain_1 Float 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_gain_2 Float 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_gain_3 Float 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_gain_4 Float 0 1
/sd/ Matrix_Outputs / * / Dynamics / gate_range Float 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_thresh_1 Float 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_thresh_2 Float 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_thresh_3 Float 0 1
/sd/ Matrix_Outputs / * / Dynamics / gate_thresh Float 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_knee_1 Int 0 2
/sd/ Matrix_Outputs / * / Dynamics / comp_knee_2 Int 0 2
/sd/ Matrix_Outputs / * / Dynamics / comp_knee_3 Int 0 2
/sd/ Matrix_Outputs / * / Dynamics / comp_knee_4 Int 0 2
/sd/ Matrix_Outputs / * / Dynamics / comp_ratio_1 Float 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_ratio_2 Float 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_ratio_3 Float 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_ratio_4 Float 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_attack_1 Float 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_attack_2 Float 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_attack_3 Float 0 1
/sd/ Matrix_Outputs / * / Dynamics / gate_attack Float 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_release_1 Float 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_release_2 Float 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_release_3 Float 0 1
/sd/ Matrix_Outputs / * / Dynamics / gate_release Float 0 1
/sd/ Matrix_Outputs / * / Dynamics / gate_hold Float 0 1
/sd/ Matrix_Outputs / * / Dynamics / key_solo Int 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_listen_1 Int 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_listen_2 Int 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_listen_3 Int 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_all_gain Float 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_all_thresh Float 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_auto-gain_1 Int 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_auto-gain_2 Int 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_auto-gain_3 Int 0 1
/sd/ Matrix_Outputs / * / Dynamics / comp_auto-gain_4 Int 0 1
/sd/ Matrix_Outputs / * / Dynamics / desser_centre_freq Float 0 1
/sd/ Matrix_Outputs / * / Dynamics / gate_centre_freq Float 0 1
/sd/ Matrix_Outputs / * / Dynamics / desser_freq_width Float 0 1
/sd/ Matrix_Outputs / * / Dynamics / gate_freq_width Float 0 1
/sd/ Matrix_Outputs / * / Insert / insert_A_in Int 0 1
/sd/ Matrix_Outputs / * / Insert / insert_B_in Int 0 1
/sd/ Matrix_Outputs / * / Channel_Delay / delay_on Int 0 1
/sd/ Matrix_Outputs / * / Channel_Delay / delay Float 0 1
/sd/ Matrix_Outputs / * / Channel_Delay / fine_delay Float 0 1
/sd/ Matrix_Outputs / * / Buss_Trim / trim Float 0 1
/sd/ Matrix_Outputs / * / Buss_Trim / phase Int 0 3
/sd/ Matrix_Outputs / * / Buss_Trim / name String
/sd/ Matrix_Outputs / * / CGs_level Float 0 1
/sd/ Matrix_Outputs / * / solo Int 0 1
/sd/ Matrix_Outputs / * / CGs_mute Int 0 1
/sd/ Matrix_Outputs / * / fader Float 0 1
/sd/ Matrix_Outputs / * / mute Int 0 1
/sd/ Graphic_EQ / * / geq_in Int 0 1
/sd/ Graphic_EQ / * / geq_gain_1 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_2 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_3 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_4 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_5 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_6 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_7 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_8 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_9 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_10 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_11 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_12 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_13 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_14 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_15 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_16 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_17 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_18 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_19 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_20 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_21 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_22 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_23 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_24 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_25 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_26 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_27 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_28 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_29 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_30 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_31 Float 0 1
/sd/ Graphic_EQ / * / geq_gain_32 Float 0 1
/sd/ Multis / * / solo Int 0 1
/sd/ Multis / * / fader Float 0 1
/sd/ Multis / * / mute Int 0 1
/sd/ Multis / * / name String
/sd/ Filing / Save_current_Session / Int 0 0
/sd/ Snapshots / Fire_Snapshot_number / Int 0 9999
/sd/ Snapshots / Fire_Prev_Snapshot / Int 0 0
/sd/ Snapshots / Fire_Next_Snapshot / Int 0 0
/sd/ Macros / Buttons / press Int 0 255