syncTo places a node in time by listening instead of arithmetic: the node's audio is cross-correlated against another node's audio, and its start is computed so the two recordings coincide on the timeline. It replaces manual offset measurement for multi-recorder material: a lav or voice track against camera audio, two cameras on the same take, two microphones in one room.
<scene name="Talk" width={1920} height={1080}>
<video id="camera" src="a-roll/take-3.mp4" width={1920} height={1080} sourceOut={45} muted />
<audio src="a-roll/lav.wav" syncTo="camera" />
</scene>syncTonames theidof another element in the same render. Both sides must carry an audio track; any pairing works (audio-to-video, audio-to-audio, video-to-video).- The computed placement is
start = target.start + offset, whereoffsetis the measured source-time offset between the two recordings (positive when this node's recording started after the target's; possibly negative).syncToandstartare mutually exclusive. sourceIn/sourceOutkeep their normal meaning and remain yours to set. When omitted on a synced node, the window defaults to the intersection of the node's natural extent with the target's window (instead of the usual natural-duration fit), so a lav track simply covers its take.- Alignment reads source content:
mutedandvolumeon either side do not affect the measurement. Usemutedto keep only one side audible, as on the camera track above. - Chains resolve in dependency order (A may sync to B while B syncs to C). An unknown id or a cycle is reported on the element like a failed source (see errors.md), and the node keeps its default placement.
Alignment runs at the resolve stage of the pipeline, after both sides' assets have landed (either side may be generated) and before captions read the scene. It is local and consumes no credits. A correlation too weak to trust is reported rather than guessed at (see errors.md), and the node keeps its default placement. Offsets are cached by the pair of source contents, so re-mounting an unchanged project re-measures nothing.