Sync project to external timecode
sync_timecodeSync external SMPTE, MTC, LTC, or OSC timecode to the TouchDesigner timeline. Creates input and normalization nodes, optionally drives project frame from house clock.
Instructions
Wire an external SMPTE/MTC/LTC/OSC timecode source into the TouchDesigner timeline. Creates the input op + Math CHOP normaliser + Null CHOP 'tc_out' (channels 'frame' and 'seconds'); optionally adds an Execute DAT that writes project.frame = tc_out['frame'] each cook so the timeline follows house clock. Requires the project to be playing — paused TD will not advance. LTC has no native TD decoder; the tool surfaces a warning and creates the audio input so the artist can attach an external decoder. MTC operator availability is build-dependent.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Name prefix for the timecode subsystem COMP (defaults to 'tc_in1'). | |
| parent | No | COMP to host the timecode subsystem in. | /project1 |
| source | Yes | Timecode transport: 'mtc' = MIDI Time Code (MIDI In), 'ltc' = Linear Time Code from audio (no native TD decoder — surfaces a warning), 'osc' = OSC In CHOP listening on host:port. | |
| host | No | (osc) Bind interface; ignored for mtc/ltc. Defaults to '0.0.0.0'. | |
| port | No | (osc) UDP port (default 7000) or (mtc/ltc) device index (default 0). The device picker can hang on a macOS permission modal — keep the default unless you know the device. | |
| osc_address | No | (osc) OSC address pattern carrying the timecode payload. Defaults to '/timecode'. | |
| fps | No | Reference frame-rate for SMPTE→frame conversion (24/25/29.97/30). | |
| drive_timeline | No | When true, an Execute DAT writes project.frame = tc_out['frame'] each cook. Requires the project to be playing — paused TD will not advance. | |
| cue_on_label | No | (osc) If the payload is a string matching a project cue name, call project.cue(name) instead of seeking. |