QLab 3 Tips and Tricks


QLab 3 Keyboard Shortcuts


Controlling ETC ION with QLab 3 via OSC

Note: Requires QLab version 3.0.8 or later and a minimum ETC Eos Family software of 2.3.1.

On the console:

In the shell's network tab enable "UDP Strings & OSC"

Press [Displays] and expand {Setup} and then double click on Show Settings

Under the Show Control section, ensure these settings:

String RX: Enabled

String RX Port: 0
OSC RX Port Number: 3032

Note: Make sure your QLab machine and console are on the same network (and subnet) and can communicate before continuing (try pinging the console from the QLab machine).

Within QLab:

Head to settings > OSC NOT OSC CONTROL (in QLab 4, this settings section was renamed "Network")
Set up a patch with the IP address of the console (find this from the about view on your console) and port 3032

Create an OSC cue (or, if using QLab 4, a Network cue)
Select the Destination as the patch you create above
Set the Message Type to "Custom OSC message"
Set the message to:

"/eos/cue/XX/YY/fire"

Where XX is the cue list (normally 1) and YY is the cue, you can omit the cue list if you are using a single cue list in the file

Try hitting "Send message" to see if this works!

I have a hope that at some point figure 53 might integrate the eos OSC language directly into Qlab, however for now this appears to work fine!


Controlling QLab 3 with ETC ION via UDP

Note: Requires QLab version 3.0.8 or later and a minimum ETC Eos Family software of 1.9.5.

On the console:

Press [Displays] and expand {Setup} and then double click on Show Settings

Under the Show Control section, ensure these settings:

String TX: Enabled

String TX Group ID: 1 [ This should match the group id setting in the shell]

String TX Port: 53535

String TX IP Address: [this should be the IP Address of your QLab Machine]

Note: Make sure your QLab machine are on the same network and can communicate before continuing.

Recording commands into Macros

  1. Press [Macro] [Macro] to enter the Macro Editor
  2. Type the number of the Macro you would like to record, in this example I will use 101
  3. Press [Enter]
  4. Press the [Edit] Softkey
  5. Click on Send_String
  6. Type the OSCcommand that you would like to use

    • An example command is /go or /cue/1/start
    • Note: Use an external keyboard or onscreen keyboard as the ION keypad will add additional characters
  7. Press the [Done] Softkey when complete

Linking macros to Lighting Cues

  1. Press [Cue]
  2. Key in the number of the lighting cue (in this example, 100)
  3. Press the [Execute] Softkey
  4. Press [Macro] and the number of the macro you'd like to link (ex. 101)
  5. Press [Enter]

These steps have now ensured that any time Cue 100 is executed it will fire Macro 101, which sends a UDP command to QLab. To un-link a cue from a Macro simply follow the steps above omitting step 4.

You can also directly execute a Send_String command on a cue from Live, however this makes it a bit more work to move around and link cues.

Usage Scenarios


Using QLab 3 with StageCaller

Need to Trigger a phone to ring or vibrate onstage? Learn more about the StageCaller app here

These instructions assume:

Finding your iPhone's IP Address

  1. From the home screen - Press the Settings icon
  2. Press the WiFi icon
  3. Press the Blue Arrow (iOS 5/6) or Blue Info Icon beside your wireless network
  4. Your IP address will be listed on this screen below the DHCP/Boot/Static buttoms

StageCaller Start Action Setup

  1. Press Actions at the bottom of the App
  2. Press + to add a new action
  3. Type in the Action Name [Ex. Play Marimba]
  4. Select either Sound or Vibrate
  5. If using a sound - Press No Sound Selected
    5a. Press the file you would like to use and then press Select
  6. Press Start action when trigger received
  7. Select OSC

The default OSC start trigger is "/cue/1/start" which conveniently is in the same format as a QLab OSC message. You can keep this format and assign any numerical or alphanumerical value between /cue / and /sta** rt/** but just remember what it is. For this example I'll be sticking with the default cue number of 1.

Note: StageCaller receives on port 1234.

StageCaller 3

  1. Press Save to return to the Action Setup

*Press Save again if you are done configuring this Action.

StageCaller Stop Action Setup [Optional]

  1. Toggle Play Until Trigger Received to ON

The default OSC stop trigger is "/cue/1/stop" which conveniently is in the same format as a QLab OSC message. You can keep this format and assign any numerical or alphanumerical value between /cue / and /sta** rt/** but just remember what it is. For this example I'll be sticking with the default cue number of 1.

StageCaller stop action.png

  1. Press Save to Return to the Action Setup

*Press Save again if you are done configuring this Action.

Setting the Number of Rings [Optional]

  1. Toggle the 1 Time Heading to ON
  2. Slide to the right to increase the number of rings or all the way right to ring forever!

*Press Save again if you are done configuring this Action.

stagecaller complete.png

QLab StageCaller OSC Setup

  1. Click the Gear/Sprocket Icon at the Bottom right of the Workspace
  2. Click on OSC
  3. If this is the only device QLab is sending messages to you can type the iPhone's IP Address in the OSC Patch 2 row, if it is not the only device QLab is sending messages to then enter the iPhone's IP Address in the next available row. In My Exampe
  4. Enter 1234 as the Port Number

StageCaller Patch.png

  1. Press Done

QLab Message Setup

  1. Add a New OSC cue
  2. Click the Settings Tab

OSC Message Setup 1.png

  1. Configure OSC Destination - Select the OSC Patch you configured with your iPhone's IP address in the previous section (Patch 2 is selected in this example)
  2. Enter Cue Number - Type the cue number you assigned to trigger your start action in StageCaller [what comes between /cue/ and /start/ in the Action Setup of StageCaller. I used cue 1 in this example.
  3. Select Command - Select Start to send a start message or Stop ( if configured in StageCaller).
  4. Fire the cue and test!

Notes:

Tested AU reverb Plugins

Apple Matrix Verb - works well on 2 channel audio cues (does report tail time). DOES NOT work on the Cue Output

Flux Ircam VERB - Works both on cues and on cue output

VOXENGO OldSkoolVerb - Issues with reverb tail dropping out before completion in both places but routes correctly

Metric Halo Haloverb - Doesn't report tail time.

PSP EasyVerb - Doesn't report tail time, but does work on cue outputs.

QLab 3 scripting

A lot of the simpler things that we used to do with applescripts (and even some things that weren't possible) can now be done with OSC-commands.

The Playback rate of an audio/video cue is an example of a hook that isn't yet supported through Applescript.

So you could assign a hotkey to an OSC-que with the custom message: "/cue/selected/rate 0.5", to slow down the selected que to 50% playback rate.

You can also mix and match by issuing OSC commands from inside an applescript by using this format:

set oscCmd to "/cue/selected/rate 0.5"

do shell script "echo " & oscCmd & " | nc -u -w 0 127.0.0.1 53535"

This method takes advantage of the fact that QLab listens to simple ASCII formatted OSC commands on port 53535, and the "nc" command that can send a simple string over the network from the command line.

Because OSC can use wildcards, you can also do stuff through the OSC-syntax that would be much more complex in applescript. e.g.

set oscCmd to "/cue/2*/colorName red"

do shell script "echo " & oscCmd & " | nc -u -w 0 127.0.0.1 53535"

this would give every cue who's cue number starts with 2 a red label.

Or you could use some other Applescript to first get a list of cue-numbers (or unique IDS) and then pass them as a comma-delimited list like this:

tell application "QLab"
    tell front workspace
       set theList to (the uniqueID of the cues whose q type is "Video")  
       set AppleScript'stext item delimiters to ","  
       set cue_ids to theList as string
       set oscCmd to "cue_id" & cue_ids & "/colorName yellow"  
       do shell script "echo " & oscCmd & " | nc -u -w 0 127.0.0.1 53535"  
 end tell
end tell

This would color every Video Cue in project green. Taking advantage of the fact that you can target multiple cues by using commas in your address like /cue/1,2,3/ Also note that we're using the /cue_id/ variant to target cues by their unique_id and not by their cue numbers.