Appearance
Are you an LLM? You can read better optimized documentation at /operating/automation-channel-lock.md for this page in Markdown format
Automation & Channel lock
Two per-graphic settings change how a graphic behaves at take time: Automation for stepping through the rundown automatically, and Channel lock for picking which output channels a graphic fires on.
Automation
Automation lets a graphic time itself out and, optionally, fire the next graphic in the rundown without operator input. It's useful for sequences where timing is fixed, like sponsor reels, intermission cards, or pre-show countdowns.
To configure automation for a graphic, select it in the rundown and open the Automation controls in the control panel footer.
Duration
Set the duration the graphic should stay on air. The timer starts the moment the graphic is taken, and the rest of the automation behaviours run when it expires.
Auto off
Enable Auto off to fire the graphic's off-animation when the timer ends. The graphic comes off air without the operator pressing anything.
Auto next
Enable Auto next to take the next graphic in the rundown on as soon as the current one's timer ends. Combined with Auto off, this gives you a hands-off run-through of a sequence.
For shows where the next graphic shouldn't fire instantly when the previous one ends, add a delay to the Auto next trigger. The delay applies after the current graphic's timer expires and before the next one is taken, so you can build pauses into automated sequences.
Channel lock
Every graphic carries a channel lock — the set of output channels it is allowed to fire on. The lock is the only thing that decides where a graphic goes when triggered. There is no "pick a channel at take time" — graphics are assigned upfront and fire on their assigned channels.
Open the channel picker one of two ways:
- Action-bar button. With the graphic selected, click the channel button next to the play button at the bottom of the preview pane. A drop-up checkbox list opens — tick the channels the graphic should fire on, then click Done.
- Rundown right-click. Right-click the graphic in the rundown sidebar, then click Channel ▸. A flyout opens to the right with the same checkbox list; click Channel ▸ again to close it. This is the route to use when bulk-applying a channel set across multiple selected graphics (Shift+click in the rundown to select several, then right-click any one of them).
When several graphics are selected at once, channels with mixed locks (some graphics have them, some don't) show as indeterminate (—). Whatever you tick before clicking Done becomes the explicit channel set for every selected graphic — channels left indeterminate become unset on graphics that previously had them.
What the lock does at take time
Once a graphic has at least one channel ticked, the action-bar play button lights up and the graphic can fire. Triggering it — via the play button, Numpad Enter, the API, or a Stream Deck button — fires the graphic on every ticked channel that is compatible with the graphic's resolution / framerate requirements. Incompatible channels are skipped silently; the action-bar status banner tells you if there's a problem.
The rundown sidebar shows each graphic's current state with a single badge:
- LIVE (red) — the graphic is live on at least one channel
- OFF (neutral) — the graphic has channels assigned but isn't live
- OFF (greyed out) — the graphic has no channels assigned and can't fire
Taking a graphic off air clears it from every channel it was live on. Graphics fire and fall as a unit; there is no per-channel take-off.
Why graphics need a channel set
This model exists so that a single trigger source — a Stream Deck button, an automation step, a Companion macro — always sends a given graphic to the same outputs without the operator having to remember which channel was selected when the button was pressed. It is the right setting for graphics that always belong on a specific output regardless of context, such as a permanent on-screen scorebug that lives on a dedicated channel, or a backup feed that should never accidentally fire on the program output.