X32 Theatre Control

Feature guide

Cue list

X32 Theatre Control's cue list shows the DCA assignments for each cue. When connected to a console, the active cue is highlighted in blue.


DCA assignments for each cue can be changed directly in the cue list when editing is unlocked. Cues are sorted in numerical order, so if you wish to move a cue just change its number. DCAs are colour coded according to their assigned channels and position in the cue list.

DCA colour coding

X32 Theatre Control automatically colour codes DCA labels so you know what is coming up in the next cue.

Ensemble groups

Actors – particularly swings – are often in multiple ensembles within a show, e.g. townspeople, minstrels, nuns, soldiers, sea creatures, etc. These can be predefined in X32 Theatre Control for easier show programming.

During show setup the gender is set for each channel to provide starter male/female ensembles, and a default "All" ensemble is created containing every channel. Additional ensembles can be defined in ensemble setup – if desired, individual channel profiles can be specified to accommodate headgear changes or bodypack swaps (see channel profiles below).


Once created, ensembles can be merged into a cue from the assign dialog or by just typing the ensemble name into a DCA on the cue list. Generally when programming a show individual channels are first assigned to DCAs and then the (potentially overlapping) ensembles are added later, so ensembles are always merged in to prevent unwanted de-assignments on other DCAs. If you wish to force assign an ensemble to a DCA, type the ensemble name and then press ⌘/Ctrl+Enter.

Important: X32TC only uses ensemble definitions at the time when channels are assigned to a DCA: once a DCA's channels have been assigned in a cue X32TC will not track any changes made in ensemble setup.

Position presets

For a natural sounding mix it is useful to delay microphones as actors move upstage in proportion to their distance from the FOH sound system. This is a complex aspect of theatrical sound design, to the extent that large productions precisely set delays of individual FOH subsystems relative to each acting position on the stage at matrix crosspoints. The X32 console only supports basic channel delays but these can still be useful in venues with simpler FOH sound systems, especially if wireless microphones are routed through a dedicated centre speaker system.

X32 Theatre Control allows acting positions to be defined in terms of channel delay and pan, and these positions are then assigned to channels in cues. Position codes can be shown or hidden in the cue list for readability, they are hidden by default. The delay/pan of a position can be edited in position setup at any time to allow refinements during rehearsals.


The clone cue feature can assist with programming position changes: first create base cues in the initial plot with DCA assignments to the default position, then clone these cues to add point cues covering actor movements within a scene or musical number.

Tip: positions are assigned to a channel and not a DCA, so channels within an ensemble DCA can be assigned different positions in the assign dialog.

Channel profiles

During a show actors may change headgear which can dramatically alter the acoustic environment of their microphones, so a different EQ could be required for a channel depending on what headgear is worn. Alternatively, wireless bodypacks may be shared between actors so different gain, high-pass, EQ, or dynamics values may be required for a channel depending on which actor is using the microphone.

X32 Theatre Control can store multiple gain, high-pass, EQ, and dynamics profiles for each channel and switch between them in the cue list. In show setup, profiles are added to a channel using the + button, and storage for each processing type can be enabled for a channel by checking its "store" box. As the show is programmed, the profile for a channel can be selected when it is assigned to a DCA.


Initially all profiles for a channel inherit processing values from the channel's default profile. When a cue is fired that uses a different channel profile, if no value change was previously recorded X32TC will just recall the values from the default profile. Once a value change is made to a profile, the full state for the respective processing type is automatically captured and stored in the profile, and recalled in subsequent cues.

All changes to a channel's stored processing types will be automatically captured and updated in the active profile. When a channel is using a non-default profile its scribble strip is inverted and its label is changed to the profile name.

To verify which profiles have stored values, open show setup and inspect the profiles for a channel. Profiles that have stored values will indicate ◆ in their respective "store" columns (backup channel storage will be indicated with ◇).

Click the "gain", "hpf", "eq", or "dyn" buttons to view the respective stored values for each profile – any modifications made in the current session will be highlighted, and values can be cleared or reverted in specific profiles if required. To delete all stored processing data for a channel, uncheck its "store" boxes and click OK.



Important: when using channel profiles, the line checks cue will recall the last used values for each channel's default profile. Please ensure you connect X32TC to your console and fire the line checks cue before performing any checks that modify channel processing.

FX assignments

In some scenes or musical numbers you may wish to apply different effects to channels – e.g. a longer reverb for ensemble members, or a special delay on a lead character, or no effects on a character speaking over music, etc.

X32 Theatre Control allows channels to be assigned to FX busses in cues. The FX busses available for channel assignment are selected in show setup, and a default FX bus is also specified for DCAs with no explicit FX assignments. The default FX bus can be used in one of two ways:
  • an FX bus can be set as the default with only FX changes being assigned in cues (e.g. a standard vocal reverb is automatically applied to all cues, but a special delay can be assigned when required), or
  • no FX bus can be set as the default in which case all FX usage has to be assigned in cues
FX numbers can be shown or hidden in the cue list for readability, they are hidden by default. X32TC does not modify send levels nor send modes so please ensure these are correctly configured on the console for channels requiring effects.

Tip: FX are assigned to a channel and not a DCA, so channels within an ensemble DCA can be assigned different FX in the assign dialog.

Tip: X32TC FX bus numbers are mapped to console mix busses in advanced console setup. Initially they are configured to match the console defaults, i.e. FX 1 is mapped to Mix Bus 13 as it is internally routed to effects slot 1.

FX mix bus mutes

Some operators prefer to use a single go button to control everything in a show, including turning effects on and off as the show moves between musical numbers and dialogue scenes.

X32 Theatre Control can be programmed to mute and unmute FX send busses in cues. The FX mix busses available for muting are selected in show setup. This feature can be used independently of – or in conjunction with – the FX assignment feature above, depending on what suits your workflow. The diagram below shows the routing points that each feature is applied to.


When FX mix bus mutes are enabled an FX column is added next to the cue text column in the cue list. Type in the FX busses you would like unmuted in each cue (comma separated), and the other FX busses will be automatically muted.

Tip: X32TC FX bus numbers are mapped to console mix busses in advanced console setup. Initially they are configured to match the console defaults, i.e. FX 1 is mapped to Mix Bus 13 as it is internally routed to effects slot 1.

Backup channels

In some shows the lead characters are on stage so frequently there is no time to repair their microphones should they fail. To alleviate this the actor can be double miced with two separate wireless bodypacks so a backup microphone is always ready to go. However, switching to the backup microphone can be problematic, especially if the primary microphone fails during a fast-paced musical number.

In show setup X32 Theatre Control allows a backup channel to be assigned to each channel for seamless switching. If the primary channel fails during the show, just press its DCA's mute button and X32TC will swap to the backup channel with a barely perceptible break in audio (although it's best to do this when the actor is neither talking nor singing). The DCA's scribble strip will show a tilde (~) before the label to indicate the backup channel is in use. The backup channel will be used for all subsequent cues until it is switched back to the primary channel.

The status of primary/backup channels is displayed in the channel tray underneath the cue list in X32TC: the active channel has green text, the standby channel has grey text. These channels can be also be switched by double-clicking on them in the channel tray, which is useful if the channel is not currently assigned to an individual DCA.


When it is not feasible to double mic specific actors (or there is a risk of multiple microphones failing), a floating spare microphone can be used which gets fitted to any actor that requires it during the show. In X32TC a spare backup channel can be nominated in show setup which allows it to be dynamically allocated as a backup to any channel on demand.



During the show, click the toolbar icon to allocate the spare backup when needed. Once allocated, the spare backup switches seamlessly with its primary channel in the same manner as a fixed backup channel (described above). When it is no longer required the spare backup allocation can be removed or changed to a different channel.

Channel utilisation view

For large shows it can be hard to track when microphones are used in scenes or musical numbers, particularly for ensemble members or swings that are rarely assigned to an individual DCA. Channel utilisation view provides a timeline of the show with each channel indicating when it is used in a cue and which DCA it is assigned to.

This can help verify that the show programming matches the mic plot, and allows quick edits of any erroneous assignments.

Automatic channel monitoring

Unless you have an A2 monitoring wireless microphone receivers, during a show it's difficult to know whether wireless microphones are working OK or not. X32 Theatre Control uses channel meter data from the console to determine when microphones have gone silent (disconnected, flat batteries, out of range) or are nearly clipping (faulty cable or connector). Whilst this is fairly rudimentary and does not cover all possible failure scenarios, it allows you to immediately know which microphones may be problematic and request crew to inspect them.

Channels that have been silent for a period of time will change to blue, then restore back to white once signal is detected.
Channels that are nearly clipping will change to red, be held for a period of time to allow investigation, and then restore back to white.
Optionally, channels that are active in the current cue can be highlighted in yellow for easier identification.


Indicators for each channel are displayed on the channel's scribble strip, on the scribble strip of the channel's assigned DCA, and in the channel tray under the cue list in X32TC. This allows smaller X32/M32 consoles to be used for large shows without having to worry about limited visibility of input channel layers.

Tip: to ensure a broken microphone does not get turned on in an ensemble DCA, pull its channel fader out to −∞.

Tip: it is useful to disable this feature when practising on a console without live inputs, it can be toggled in advanced console setup.

Live editing

During tech week things don't turn out as planned: some actors that are supposed to be singing off stage are chatting in dressing rooms, the musical director cuts a vamp because the actors keep missing their cue, a scene change doesn't work so it's cut and turns into a fast segue... in these sorts of rehearsal situations it can be easier to make quick DCA assignment changes on the fly, rather than edit the cue list on the computer.

X32 Theatre Control captures DCA assignment changes made on the console and updates the active cue. On the X32 console you can easily modify DCA assignments by holding down a DCA's select button and tapping a channel's select button. Ordinarily this action does not (un)mute the channel nor update the DCA's scribble strip, however when X32TC detects the assignment change it automatically updates the cue and sets the corresponding channel mute and DCA label.

This allows incorrectly assigned channels to be quickly removed from cues, or missing channels to be quickly added in – with all changes reflected in X32TC's cue list. Additionally, if an assignment change on the console is made in error it can be undone using ⌘/Ctrl+Z.

Important: live editing from the console is only active when editing is unlocked in X32TC. If DCA assignments are changed on the console when editing is locked in X32TC it will take no action... probably not the desired outcome :)

Tip: live editing also works the other way! Changes made to the active cue in X32TC are automatically updated on the console – screen sharing/VNC can let the designer tweak X32TC while the operator runs the show.

Snippet recall

Not all console parameters are controlled by X32 Theatre Control, and it would be impossible for the software to cover every console feature that might be useful in a show. Instead, X32TC is able to recall snippets programmed on the console to accommodate situations where additional parameters need to be changed.

This allows parameters not available in X32TC to be controlled via console snippets, e.g. effects parameter changes, or custom channel routing, or band instrument levels, etc. Please note that X32TC does not track the state of console snippets, so cues must be carefully programmed to ensure the console behaves as expected during the show.

Snippet recall is enabled from show setup. When enabled, a snippet column is added next to the first DCA column in the cue list. Type the snippet numbers you would like recalled in each cue (comma separated), or double click or ⌘/Ctrl+E to open the assign dialog for more options.


If you are frequently using common snippets in a show, please consider raising a feature request to include extra functionality in X32TC, as it may help make the software more useful for others.

Tip: to temporarily turn off snippet recall, simply uncheck the box from show setup. Snippet data will not be removed from the show file and can be recalled again when the box is checked.

Tip: snippets can also be assigned to the line checks cue, this can be used to initialise additional parameters before the show.

QLab remote control

QLab is excellent playback software for macOS commonly used in theatre shows for sound effects and backing tracks. But firing cues by reaching outside the console to hit spacebar is not ideal, and when running multiple applications on a Mac you can't always be sure that the QLab window will be active.

X32 Theatre Control can map console assign and mute group buttons to QLab running on the same Mac. This allows QLab cues to be fired similar to X32TC cues, but using separate buttons so the two don't get mixed up. X32TC and QLab can be displayed on the same screen with no concerns about which window is active.

In console setup, assign and mute group buttons can be configured with QLab Go, QLab Stop, and QLab Panic actions. The stop action is a combination of immediate stop and select previous cue, primarily intended for rehearsals where sound effect cues or backing tracks may need to be repeated.



Important: X32TC uses QLab's OSC interface, please do not set an OSC passcode in your QLab workspace.

Tip: stick some tape to the QLab Go button so it has a different tactile feel to the X32TC Go button – helps prevent misfired sound effects :)

Tip: configuring mute group buttons allows you to mix the show from an X-Touch controller!

QLab cue recall

Some operators prefer to use a single go button to control everything in a show, including firing playback cues along with DCA assignments.

As well as dedicated remote control buttons, X32 Theatre Control can recall specific cues in QLab running on the same Mac. This allows QLab cues to be fired with X32TC cues for playback synchronisation or to use QLab to control external devices (e.g. via OSC or MIDI). Please note that X32TC does not track the state of QLab cues, so X32TC cues must be carefully programmed to ensure QLab behaves as expected during the show.

QLab cue recall is enabled from show setup. When enabled, a QLab column is added next to the first DCA column in the cue list. Type the QLab cue number you would like recalled in each cue – please be aware that QLab cue numbers are case and whitespace sensitive.


Important: X32TC uses QLab's OSC interface, please do not set an OSC passcode in your QLab workspace.

Tip: to temporarily turn off QLab cue recall, simply uncheck the box from show setup. QLab cue data will not be removed from the show file and can be recalled again when the box is checked.

LR fader ganging

Unfortunately the X32 console doesn't really have enough DCAs for larger shows, many of which were originally mixed on consoles with 12+ DCAs. However, when using control group theatre mixing the console's LR fader is often redundant: it usually stays parked at 0 dB. By using the LR fader to control other channels that may have been statically assigned to a DCA, the number of DCAs available for microphones can be maximised.

X32 Theatre Control can create a virtual fader gang with the LR fader and any channels not under X32TC control, e.g. the band submix, or the backing track, or a reverb return, etc. The fader level of the selected channels will track the level of the LR fader. Only the LR fader is ganged with the selected channels: the LR select/solo/mute buttons continue to select/solo/mute the LR bus.


When this feature is activated the console's LR bus routing is changed from post-fader to pre-fader w/mute for outputs and matrix sends. Fader ganging only operates when X32TC is connected to the console, when X32TC is not connected moving the LR fader will have no effect.

Important: it is highly recommended to take a backup of the console's configuration (using the inbuilt scenes screen) before enabling this feature.

Active cue info

The front of house mix position can be very cramped: sometimes it's difficult to find space for an extra monitor to display the cue list, or you may not wish to see all of the detail in the cue list during a show.

The active cue info display pops out of X32 Theatre Control and shows a summary of the current and next cue. This allows cue information to be displayed on the same screen as playback software or on a dedicated small monitor close to the console (e.g. DoubleSight or Mimo USB monitor). The window can be resized as required, and the font size can be adjusted by scrolling the mouse wheel over the cue text.


Tip: to reset the window and font size to default, double click on the cue text.

Tip: the current or next cue number can also be displayed on the LR scribble strip, this can be configured in advanced console setup.

OSC API

Some operators prefer to use a master cue list in playback software to control everything in a show, including DCA assignment cues. It can also be useful to have dedicated hardware buttons to access editing functions during rehearsals (e.g. Elgato Stream Deck via Bitfocus Companion).

X32 Theatre Control contains an OSC server to accept cue fire requests and notify up to five OSC clients of cue fire events. The server runs on UDP port 32000 and accepts the following commands:
  • /go
    Fire the next cue
  • /back
    Fire the previous cue
  • /jump {number}
    Jump to the specified cue: {number} can be a string, int32 or float32

  • /unlock
    Unlock editing
  • /lock
    Lock editing

  • /select [up|down|current]
    Move the edit selector up, down, or to the current cue: [up|down|current] is a string
  • /jump selected
    Jump to the selected cue
  • /insertcue
    Insert a new cue after the selected cue
  • /clonecue
    Clone the selected cue
  • /deletecue
    Delete the selected cue

  • /undo
    Undo the last edit
  • /redo
    Redo an undone edit

  • /togglebackup {channel}
    Toggle backup channel: {channel} is an int32 or string (prefix aux ins with A)

  • /allocatespare {channel}
    Allocate spare backup: {channel} is an int32 or string (prefix aux ins with A)
  • /togglespare
    Toggle spare backup
  • /removespare
    Remove spare backup allocation

  • /thump
    Connection heartbeat (X32TC replies with /thump)
  • /subscribe
    Subscribe to events
On subscription, X32TC returns the following messages:
  • /subscribeok {expires}
    Event subscription was successful and will expire in {expires} seconds. The client should renew the subscription at half the expiry interval; {expires} is an int32.
  • /subscribefail
    Event subscription was unsuccessful, the maximum number of clients is subscribed
  • /cuefired {number}
    Cue {number} was fired; {number} is a string
  • /ganglr [on|off]
    LR fader gang level: −∞ = off, otherwise on; [on|off] is a string

All third-party product names, logos, and trademarks are the property of their respective owners. Their use in this documentation is for identification purposes only and does not imply endorsement.