Reactions Reference Guide

Listeners, Conditions & Reactions
This table contains details of all options for the 3 Reaction types: Listener, Conditions & Reactions. Usage: The Table has horizontal and vertical scrolling. The columns are split into 3 by colour. Red = Listener, Light Blue = Condition, Dark Blue = Reaction. X = Not available for that Reaction type.
Listeners, Conditions & Reactions | Available types | Listener fires when: | Condition: Description | Condition: Text Input Field 1 | Condition: Menu Selection | Condition: Text Input Field 2 | Reaction: Description | Reaction: Text Input Field 1 | Reaction: Assignment Menu Selection | Reaction: Value Menu Selection | Reaction: Text Input Field 2 |
---|---|---|---|---|---|---|---|---|---|---|---|
All Connected 'MIDI Controller' Controls | Listener, Reaction | When the corresponding physical input on your MIDI Controller is pressed / turned / moved. Note: Control must also have a MIDI Mapping on current Mode (other than a Reaction) in order to fire. | X | X | X | X | Send a Velocity Value to the corresponding MIDI Controller's physical Control. (normally used to display an LED & specific Colour). | .send_value | ( ) | Input | A numerical value between 0 and 127. |
Track Volume | Listener | When the value of ANY Track Volume changes. | X | X | X | X | X | X | X | X | X |
Track Panning | Listener | When the value of ANY Track Panning changes. | X | X | X | X | X | X | X | X | X |
Track Mute | Listener | When the value of ANY Track Mute changes. | X | X | X | X | X | X | X | X | X |
Track Solo | Listener | When the value of ANY Track Solo changes. | X | X | X | X | X | X | X | X | X |
Track Arm | Listener | When the value of ANY Track Arm changes. | X | X | X | X | X | X | X | X | X |
show message | Reaction | X | X | X | X | X | Display a Message in Live's Status Bar. | leave empty | ( ) | Input | Text must be wrapped in quotation marks. Example: "this is a message" |
log message | Reaction | X | X | X | X | X | Output a Message in the log.txt file. | leave empty | ( ) | Input | Text must be wrapped in quotation marks. Example: "this is a message"" |
cue points | Reaction | X | X | X | X | X | Jump to a specific Cue Point in the Arranger | leave empty | ( ) | Input | Example, jump to first cue point: .[1].jump |
return tracks | Listener, Condition, Reaction | When a Return Track is added or removed | see 'Targeting Mixer Controls & Devices on Tracks & Scenes' | see 'Targeting Mixer Controls & Devices on Tracks & Scenes' | |||||||
scenes | Listener, Condition, Reaction | When a Scene is added, deleted or moved to a new position. | see 'Targeting Mixer Controls & Devices on Tracks & Scenes' | see 'Targeting Mixer Controls & Devices on Tracks & Scenes' | |||||||
tracks | Listener, Condition, Reaction | When a Track is added, deleted or moved to a new position. When a Track group is folded or unfolded. | see 'Targeting Mixer Controls & Devices on Tracks & Scenes' | see 'Targeting Mixer Controls & Devices on Tracks & Scenes' | |||||||
visible tracks | Listener, Condition, Reaction | When a Visible Track is added, deleted or moved to a new position. When a Visible Track group is expanded or collapsed. | see 'Targeting Mixer Controls & Devices on Tracks & Scenes' | see 'Targeting Mixer Controls & Devices on Tracks & Scenes' | |||||||
master track | Condition, Reaction | X | see 'Targeting Mixer Controls & Devices on Tracks & Scenes' | see 'Targeting Mixer Controls & Devices on Tracks & Scenes' | |||||||
view | Condition, Reaction | X | see 'Targeting Mixer Controls & Devices on Tracks & Scenes' | see 'Targeting Mixer Controls & Devices on Tracks & Scenes' | |||||||
appointed device | Listener, Reaction | When the Blue hand is moved to a different Device | X | X | X | X | Move the Blue Hand to a specific Device. | leave empty | = | Input | Example: self.song().tracks[0].devices[0] |
arrangement overdub | Listener, | When Arrangement Overdub is turned on or off. | X | X | X | X | X | X | X | X | X |
back to arranger | Listener, | When Back to Arranger button is pressed or when arrangement is overridden. | X | X | X | X | X | X | X | X | X |
can jump to next cue | Listener, | In arrangement view. when 'previous locator' / 'next locator' buttons are pressed (does not fire when the playhead is moved to the very start). Also fires when you click inside the arrangement view and the orange playhead marker is moved to a new position. | Is there a next cue jump to move to. | leave empty | True, False | leave empty | X | X | X | X | X |
can jump to prev cue point | Listener, | In arrangement view. when 'previous locator' / 'next locator' buttons are pressed (does not fire when the playhead is moved to the the last cue point). Also fires when you click inside the arrangement view and the orange playhead marker is moved to a new position. | Is there a previous cue jump to move to. | leave empty | True, False | leave empty | X | X | X | X | X |
can redo | Condition, | X | Is there something in the history to redo | leave empty | True, False | leave empty | X | X | X | X | X |
can undo | Condition, | X | Is there something in the history to undo | leave empty | True, False | leave empty | X | X | X | X | X |
clip trigger quantization | ? | X | X | X | X | X | X | ||||
current song time | Listener, Condition, Reaction | Fires whenever the Current Song time changes. Will continuously fire when play back is active. | Arrangement play position in beats. | leave empty | Input | Example: 87.5801058317 | Set the current song time (in beats). | leave empty | = | Input | Numerical Value, example 87.5801058317 |
exclusive arm | Condition, | X | Is exclusive arm enabled. | leave empty | True, False | leave empty | X | X | X | X | X |
exclusive solo | Condition | X | Is exclusive solo enabled. | leave empty | True, False | leave empty | X | X | X | X | X |
groove amount | X | X | X | X | X | ? | ? | ? | ? | ? | |
is playing | Condition, Reaction | X | Is the Song currently playing | leave empty | True, False | leave empty | Start / Stop playing | leave empty | = | True / False | leave empty |
last event time | Condition, | X | ? | Input | numerical value, example: 104 | X | X | X | X | X | |
loop | Condition, Reaction | X | Is Arrangment Loop Switch On / Off. | leave empty | True, False | leave empty | Turn Arrangement Loop on/off | leave empty | = | True / False | True / False |
loop length | Condition, Reaction | X | Length of the loop - in bars. | leave empty | Input | 4.0 = 4 bars, Example : 4.0 | Sets the Arrangement Loop Length | leave empty | = | Input | Numerical Value. Example, 1 Bar: 1.0 |
loop start | Listener, Condition, Reaction | When the arrangement Loop Start position is moved. | Loop start position - in bars. | leave empty | Input | 4.0 = 4 bars, Example : 4.0 | Sets the Arrangement Loop Start Position | leave empty | = | Input | Numerical Value. Example, 1 Bar: 1.0 |
metronome | Listener, Condition, Reaction | When the Metronome is turned on or off. | Is Metronome turned on/off | leave empty | True, False | leave empty | Turns the Metronome on/off | leave empty | = | True / False | leave empty |
midi recording quantization | Listener, Condition, Reaction | When the MIDI Recording Quantization is changed. | The current MIDI Recording Quantization Amount. | leave empty | Input | Possible values: rec_q_no_q, rec_q_quarter, rec_q_eight, rec_q_eight_triplet, rec_q_eight_eight_triplet, rec_q_sixtenth, rec_q_sixtenth_triplet, rec_q_sixtenth_sixtenth_triplet, rec_q_thirtysecond |
Sets the MIDI Recording Quantization amount. | leave empty | = | Input | Example: Live.Song.RecordingQuantization.rec_q_eight_triplet Possible options rec_q_no_q, rec_q_quarter, rec_q_eight, rec_q_eight_triplet, rec_q_eight_eight_triplet, rec_q_sixtenth, rec_q_sixtenth_triplet, rec_q_sixtenth_sixtenth_triplet, rec_q_thirtysecond |
nudge down | Listener, Condition, Reaction | When Nudge Down is pressed/fired | Is nudge down button on / off | leave empty | True, False | leave empty | Turn Nudge Down On / Off | leave empty | = | True / False | leave empty |
overdub | Listener, Condition, Reaction | When Overdub is turned on / off via the Session Record Button | Is overdub button on / off | leave empty | True, False | leave empty | Turn overdub On / Off | leave empty | = | True / False | leave empty |
punch in | Listener, Condition, Reaction | When Punch In is turned on or off. | Is punch in button on / off | leave empty | True, False | leave empty | Turn Punch In On / Off | leave empty | = | True / False | leave empty |
punch out | Listener, Condition, Reaction | When Punch Out is turned on or off. | Is punch out button on / off | leave empty | True, False | leave empty | Turn Punch In On / Off | leave empty | = | True / False | leave empty |
nudge up | Listener, Condition, Reaction | When Nudge Up is pressed/fired | Is nudge up button on / off | leave empty | True, False | leave empty | Turn Nudge Up On/Off | leave empty | = | True / False | leave empty |
re enable automation enabled | Condition, | X | Is re-enable automation button on/off | leave empty | True, False | leave empty | X | X | X | X | X |
record mode | Condition, | X | Is global record enabled (record switch in transport is red) | leave empty | True, False | leave empty | X | X | X | X | X |
root note | Condition, | X | ? | leave empty | Input | numerical value, example: 0 | X | X | X | X | X |
scale name | X | ? | ? | ? | ? | ? | |||||
select on launch | Condition, | X | Current status of the respective option set in the launch preferences. | leave empty | True, False | leave empty | X | X | X | X | X |
session automation record | Listener, Condition, | When Automation Arm is turned on or off. | Is session automation record on / off | leave empty | True, False | leave empty | ? | ||||
session record | Listener, Condition, Reaction | When Session Record begins or ends. | If session record is currently on / off. | leave empty | True, False | leave empty | Turn Session Record on/off | leave empty | = | True / False | leave empty |
session record status | Listener, Condition, | When Session Record is about to begin. | If clip session record is on / off. | leave empty | True, False | leave empty | ? | ||||
signature denominator | Condition, | X | The current time signature denominator | leave empty | Input | numerical value, example: 4 | X | X | X | X | X |
signature numerator | Listener, Condition, | When Time Signature Denominator is changed. | The current time signature numerator | leave empty | Input | numerical value, example: 4 | X | X | X | X | X |
song length | Listener, Condition, | When the Song Length changes. | The current length of the Song. | leave empty | Input | numerical value (in bars), example: 243.0 | X | X | X | X | X |
swing amount | Condition, | X | The current swing amount | leave empty | Input | numerical value, example. 0.0 | ? | ||||
tempo | Condition, Reaction, Reaction | X | The current tempo of the song. | leave empty | Input | numerical value, example: 112.20 | Sets the tempo of the song | leave empty | = | Input | Numerical Value, example: 120.90 |
capture and insert scene | Reaction | X | X | X | X | X | Create a new scene with copies of the playing clips in each track. | leave empty | ( ) | Input | leave empty |
continue playing | Reaction | X | X | X | X | X | Continue Arrangement playback from current position. | leave empty | ( ) | Input | leave empty |
create audio track | Reaction | X | X | X | X | X | Insert a new Audio Track | leave empty | ( ) | Input | Numerical Value of position to insert audio track. Example: 1 |
create midi track | Reaction | X | X | X | X | X | Insert a new MIDI Track | leave empty | ( ) | Input | Numerical Value of position to insert midi track. Example: 1 |
create return track | Reaction | X | X | X | X | X | Insert a new Return track | leave empty | ( ) | Input | Numerical Value of position to insert return track. Example: 1 |
create scene | Reaction | X | X | X | X | X | Insert a new Scene | leave empty | ( ) | Input | Numerical Value of position to insert scene. Example: 1 |
delete scene | Reaction | X | X | X | X | X | Delete a Scene | leave empty | ( ) | Input | Numerical Value of Scene position to delete. Example: 1 |
delete track | Reaction | X | X | X | X | X | Delete a Track | leave empty | ( ) | Input | Numerical Value of Track position to delete. Example: 1 |
duplicate scene | Reaction | X | X | X | X | X | Duplicate a Scene | leave empty | ( ) | Input | Numerical Value of Scene position to duplicate. Example: 1 |
duplicate track | Reaction | X | X | X | X | X | Duplicate a Track | leave empty | ( ) | Input | Numerical Value of Track position to duplicate. Example: 1 |
find device position | X | ? | ? | ? | ? | X | X | X | X | X | |
get beats loop length | Condition, | X | Current length of the Arrangement Loop. | () | Input | Numerical value in bars.beats.sixteenths.ticks example: 026.00.00.000 | X | X | X | X | X |
get beats loop start | Condition, | X | Current Arrangement Loop Start position. | () | Input | Numerical value in bars.beats.sixteenths.ticks example: 001.01.01.001 | X | X | X | X | X |
get current beats song time | Condition, | X | The current Arrangement playback position. | () | Input | Numerical value in bars.beats.sixteenths.ticks example: 022.04.03.020 | X | X | X | X | X |
get current smpte song time | Condition, Reaction | X | The current Arrangement playback position. | (0) | Input | Numerical value in hours:min:sec:frames example: 000:00:46:918 | X | X | X | X | X |
is cue point selected | Condition, | X | Is a cue point selected | leave empty | True, False | leave empty | X | X | X | X | X |
jump by | Reaction | X | X | X | X | X | Jump Arrangement Insert Marker | leave empty | ( ) | Input | "Numerical value to jump by (in bars). Use a minus value to jump backwards. Examples: 1, -1 |
jump to next cue | Reaction | X | X | X | X | X | Jump to next Cue Point in Arrangement | leave empty | ( ) | Input | leave empty |
jump to prev cue | Reaction | X | X | X | X | X | Jump to previous Cue Point in Arrangement | leave empty | ( ) | Input | leave empty |
move device | X | ? | ? | ? | ? | X | X | X | X | X | |
play selection | Reaction | X | X | X | X | X | Plays selection in Arranger (if there is a selection) | leave empty | ( ) | Input | leave empty |
re enable automation | Reaction | X | X | X | X | X | Re-enables Automation | leave empty | ( ) | Input | leave empty |
redo | Reaction | X | X | X | X | X | Redo last change | leave empty | ( ) | Input | leave empty |
scrub by | Reaction | X | X | X | X | X | scrub by an amount | leave empty | ( ) | Input | Numerical Value (in Bars). Use a minus value to Scrub left. Examples: 1, -1 |
set or delete cue | Reaction | X | X | X | X | X | Sets or deletes a Cue Point at current position in Arrangement | leave empty | ( ) | Input | leave empty |
start playing | Reaction | X | X | X | X | X | Start Arrangement playing | leave empty | ( ) | Input | leave empty |
stop all clips | Reaction | X | X | X | X | X | Stop all playing clips | leave empty | ( ) | Input | leave empty |
stop playing | Reaction | X | X | X | X | X | Stop Arrangement playing | leave empty | ( ) | Input | leave empty |
tap tempo | Reaction | X | X | X | X | X | Tap Tempo | leave empty | ( ) | Input | leave empty |
trigger session record | X | X | X | X | X | ? | ? | ? | ? | ? | |
undo | Reaction | X | X | X | X | X | Undo last change | leave empty | ( ) | Input | leave empty |
Targeting Mixer Controls & Devices on Tracks & Scenes
Setting the Track number
The Track number is contained inside the set of square brackets: [0]. They count from zero (Zero Indexed). Example: if you want to set the Mute Button on Track 3, it would be input like this: track [2].mute Return Tracks and Visible Tracks follow this same pattern.
The Track number for Tracks 'Relative to Session Box position' are input inside the set of the parenthesis ( ) like so: track [self.track_num(2)].mute Selected Tracks do not require a Track number to be input.
Setting the Device Number / Device Parameter Number
To select a Device Parameter, you also need to select the Track Number (as above), the Device Number and the Parameter Number. They are entered from left to right. This example selects Track 1, Device 2, Parameter 1. track [0].devices[1].parameters[1].value Note that For Device Parameters, '0' is the Device On/off button, which makes '1' the first Parameter.
Use the table below to see examples for all of the different possibilities.
Values | Track | Visible Track | Selected Track | Track (Relative to Session Box) | Return | |
---|---|---|---|---|---|---|
tracks | visible tracks | view .selected_track | tracks [self.track_num(0)] | return tracks [0] | ||
Mute | True / False | tracks [0].mute | visible tracks [0].mute | view .selected_track.mute | tracks [self.track_num(0)].mute | return tracks [0].mute |
Solo | True / False | tracks [0].solo | visible tracks [0].solo | view .selected_track.solo | tracks [self.track_num(0)].solo | return tracks [0].solo |
Arm | True / False | tracks [0].arm | visible tracks [0].arm | view .selected_track.arm | tracks [self.track_num(0)].arm | return tracks [0].arm |
Volume | Range: 0 - 100 | tracks [0].mixer_device.volume.value | visible tracks [0].mixer_device.volume.value | view .selected_track.mixer_device.volume.value | tracks [self.track_num(0)].mixer_device.volume.value | return tracks [0].mixer_device.volume.value |
Panning | Range: 0 - 100 | tracks [0].mixer_device.panning.value | visible tracks [0].mixer_device.panning.value | view .selected_track.mixer_device.panning.value | tracks [self.track_num(0)].mixer_device.panning.value | return tracks [0].mixer_device.panning.value |
Send | Range: 0 - 100 | tracks [0].mixer_device.sends[0].value | visible tracks [0].mixer_device.sends[0].value | view .selected_track.mixer_device.sends[0].value | tracks [self.track_num(0)].mixer_device.sends[0].value | return tracks [0].mixer_device.sends[0].value |
Device | tracks [0].devices[0] | visible tracks [0].devices[0] | view .selected_track.devices[0] | tracks [self.track_num(0)].devices[0] | return tracks [0].devices[0] | |
Selected Device | tracks [0].view.selected_device | visible tracks [0].view.selected_device | view .selected_track.view.selected_device | tracks [self.track_num(0)].view.selected_device | return tracks [0].view.selected_device | |
Device Parameter | Range: 0 - 100 | tracks [0].devices[0].parameters[1].value | visible tracks [0].devices[0].parameters[1].value | view .selected_track.devices[0].parameters[1].value | tracks [self.track_num(0)].devices[0].parameters[1].value | return tracks [0].devices[0].parameters[1].value |
Device On / Off Button | 1 / 0 | tracks [0].devices[0].parameters[0].value | visible tracks [0].devices[0].parameters[0].value | view .selected_track.devices[0].parameters[0].value | tracks [self.track_num(0)].devices[0].parameters[0].value | return tracks [0].devices[0].parameters[0].value |
Device Chain | tracks [0].devices[0].chains[0] | visible tracks [0].devices[0].chains[0] | view .selected_track.[0].devices[0].chains[0] | tracks [self.track_num(0)].[0].devices[0].chains[0] | return tracks [0].devices[0].chains[0] | |
Device in Chain | tracks [0].devices[0].chains[0].devices[0] | visible tracks [0].devices[0].chains[0].devices[0] | view .selected_track.[0].devices[0].chains[0].devices[0] | tracks [self.track_num(0)].[0].devices[0].chains[0].devices[0] | return tracks [0].devices[0].chains[0].devices[0] |