Setup, operation, and troubleshooting — written for production crews.
From zero to triggering your first clip in about ten minutes.
You'll need:
Open Resolume Arena. Go to Arena → Preferences → OSC. Make sure OSC Input is enabled and note the Incoming Port — Arena's default is 7000.
LTCue sends OSC to Resolume on port 7000 and listens for replies on port 7001. Both are configurable per engine inside LTCue.
Open the composition you'll be triggering. Note the layer and column numbers of the clips you want to fire — LTCue targets clips by their position in the deck, not by name.
Open the Settings tab. Under Audio & OSC Configuration you'll see two side-by-side panels labeled ENGINE 1 and ENGINE 2. Engine 1 is the primary engine; Engine 2 is for redundant or A/B setups.
For Engine 1, pick the audio device receiving your LTC source from Device, then choose the Channel. Confirm Framerate matches your timecode source. The IP, Outgoing Port, and Incoming Port default to 127.0.0.1, 7000, and 7001 — fine if Resolume is on the same machine.
If you don't have external timecode handy, click TC Generator in the top toolbar and set a Free Run start time like 01:00:00:00.
With LTC playing into the selected input, the signal level meter should show activity and the timecode display should advance in sync with your source. If you don't see lock, jump to Troubleshooting.
Switch to Main View and open the cue list editor. The fastest way to fill it is Scan Resolume (⌘R / Ctrl+R) — LTCue reads your loaded composition and builds the cues automatically. See Scanning your composition for what it picks up and what it doesn't.
To add a cue by hand — or for clips that aren't on SMPTE transport — click + Add Clip and set at minimum:
01:00:10:00)The other fields (Type, Mode, Duration, Transport) have sensible defaults for a basic clip trigger and can be left alone for now.
Click Save Changes, then save the show with File → Save or ⌘S / Ctrl+S.
Roll your timecode source past the trigger time. When the timecode value reaches your cue's trigger point, LTCue sends OSC to Resolume and the clip fires.
That's it. From here, you can:
.ltcue file with your show laptop — drag and drop, it just worksHow to configure Resolume Arena to receive OSC from LTCue, and how to verify the connection is working.
7000The OSC pane also shows your machine's IP address at the top — useful if you'll be sending OSC from a different machine on the network.
LTCue and Resolume use two separate ports:
| Direction | Default port | Used for |
|---|---|---|
| LTCue → Resolume | 7000 | Triggering clips |
| Resolume → LTCue | 7001 | Composition data (clip durations during scanning) |
If port 7000 is in use by another application on your machine, pick something else (e.g. 7700) — just match the value in both Resolume's preferences and LTCue's engine OSC settings.
The fastest way to confirm LTCue is reaching Resolume:
If the cue fires in LTCue but Resolume doesn't respond, see Troubleshooting → Clips don't fire in Resolume.
Rather than typing out every cue by hand, LTCue can read your loaded Resolume composition and build the cue list for you — layer, column, clip name, SMPTE trigger time, and duration for every clip it finds.
Open the cue list editor and click Scan Resolume (⌘R / Ctrl+R). A progress dialog shows how far along it is, and you can cancel at any point. When it finishes, the status line reports how many clips were found.
In Resolume, every clip has a transport type — Timeline, BPM Sync, SMPTE 1, SMPTE 2, or one of the DJ options. LTCue only picks up clips set to SMPTE 1 or SMPTE 2, because those are the ones with a timecode offset to trigger from. If a scan comes back empty, this is almost always why.
Clips that aren't on SMPTE transport won't appear in a scan. You can still trigger them — add them by hand with + Add Clip and set the trigger timecode yourself.
You can re-scan whenever the composition changes. Cues you added manually and edits you've made are preserved — re-scanning updates what came from Resolume without wiping your own work.
7001).Both apps support networked operation. In LTCue's Settings, change the engine's IP field from 127.0.0.1 to the Resolume host's IP address (e.g. 192.168.1.42).
For touring, networked operation is generally less reliable than running both apps on a single machine. Consider it carefully — fewer wires, fewer failure points.
LTCue is built and tested against Resolume Arena only. Avenue is not officially tested. Composition scanning in particular relies on Arena-specific OSC responses and may not work in Avenue.
How to get SMPTE/LTC timecode into LTCue from the source you're actually using.
LTCue decodes standard SMPTE LTC delivered as audio on any input channel of any audio device the OS exposes. It works with:
Standard frame rates supported: 24, 25, 29.97, 30 fps, including 29.97 drop-frame. LTCue auto-detects frame rate when it locks; drop-frame is configured separately in your engine framerate setting.
LTC should be at a healthy line level — roughly the same range as a music signal. Too quiet and the decoder won't lock. The most important thing: don't let it clip on the way into LTCue. Clean LTC at line level will lock without issue; LTCue's signal meter will show level activity once your source is rolling.
Most consoles can output LTC as part of their matrix or aux send routing. Patch a console output to one channel of your audio interface, select that input device and channel in LTCue's engine settings, and you're done.
Common pattern for studio rehearsal:
This lets you build and rehearse cue lists against the actual show timecode without needing the touring rig present.
Hardware generators (Tentacle Sync, MOTU MIDI Express XT, Rosendahl Nanosyncs, etc.) output LTC as an audio signal. Patch the LTC output to your audio interface input and proceed as above — balanced or unbalanced doesn't matter to LTCue, just don't let the signal clip on its way in.
For testing without external hardware, click TC Generator in the top toolbar. Three modes:
11:59:59:00) and advances at your chosen speedThree settings under Settings → Trigger Parameters control exactly when LTCue fires a clip. The defaults work for most shows — but knowing what they do makes the difference when something feels off.
LTCue watches the incoming timecode. When the timecode reaches a cue's trigger point, LTCue sends OSC to Resolume and the clip fires. Once a cue has fired, it won't fire again — unless the timecode jumps, which tells LTCue you've moved somewhere else in the show and it should re-arm.
The three parameters adjust that behaviour: how early LTCue fires, how close the timecode has to be, and how big a timecode jump has to be before LTCue re-arms.
Default: 2 frames. Range: 0–10 frames.
There's always a small delay between LTCue sending the OSC message and Resolume actually starting the clip. Lookahead compensates by firing slightly early. At 30 fps, one frame is about 33 ms, so the default 2 frames fires roughly 66 ms ahead of the cue point.
Lookahead is measured in frames, so its real-world effect changes with your framerate. Two frames is 66 ms at 30 fps but 83 ms at 24 fps.
Default: 15 seconds. Range: 0–30 seconds.
Tolerance is the window around a cue's trigger time in which that cue can still fire. With the default 15 seconds, a cue set to 01:00:10:00 will still fire if the timecode arrives anywhere from 01:00:55:00 to 01:00:25:00.
The default is deliberately wide, and that's what makes LTCue forgiving in live use: if you start playback part-way into a song, or the operator drops in mid-show, the correct clip still fires and your look is right instead of a black screen.
Default: 1 second. Range: 0.1–10 seconds.
LTCue keeps track of which cues it has already fired so they don't re-fire on every frame. When the incoming timecode jumps — you scrub, restart, or punch to a different point in the show — LTCue clears that memory and re-arms, so cues can fire again from the new position.
Jump Threshold is how large a timecode discontinuity has to be before LTCue treats it as a jump rather than normal playback.
| Parameter | Default | Range | Raise it when | Lower it when |
|---|---|---|---|---|
| Lookahead | 2 frames | 0–10 | Cues feel late | Cues feel early |
| Tolerance | 15 s | 0–30 s | Cues missed when joining mid-show | You need exact-point firing only |
| Jump Threshold | 1 s | 0.1–10 s | Jittery source causes re-firing | Small punches aren't detected |
All three can be changed while the engine is running — you don't need to stop and restart. If you've adjusted things and want to start fresh, use Reset to Defaults.
Common issues and fixes.
LTCue isn't decoding the incoming signal:
You click Scan Resolume and nothing comes back:
7001).LTCue is locked to LTC and the cue list says cues fired, but Resolume doesn't react:
127.0.0.1.If cues feel late, early, or out of sync, the most likely cause is a frame rate mismatch — confirm LTCue's framerate setting matches your timecode source (especially 29.97 drop-frame vs 30 fps non-drop).
If frame rate isn't the issue, three settings under Settings → Trigger Parameters let you fine-tune behavior (see Trigger parameters for full detail):
Click Reset to Defaults if you've adjusted things and want to start fresh.
The fastest path to a fix is a report that contains:
Email everything to support@ltcue.app. Replies are typically same-day on weekdays.
Email the developer directly. Replies typically same-day on weekdays.
support@ltcue.app