LTX Flow - Tail Guide
Feed the previous clip's tail into the next generation so LTX keeps the action going
- positive
- negative
- vae
- latent
- tail_frames
- positive
- negative
- latent
- overlap_frames
Extract Tail hands you the ending of your last clip. Tail Guide is what you do with it: it injects those tail frames into the next generation as keyframes, so the new clip starts exactly where the old one stopped. That's the "Flow" in this pack's name - the loop that turns short LTX clips into long continuous scenes.
First/Last Guide and Tail Guide look similar and are easy to confuse. First/Last Guide takes a start and end image and animates between them - it's the Frames-to-Video trick. Tail Guide takes the ending of an existing clip and says "continue from here," anchoring the new clip's start (and optionally a couple of frames in) to footage that already exists. Different jobs, same mechanism under the hood.
How it works
Like First/Last Guide, it goes through ComfyUI's built-in LTXVAddGuide (no extra pack needed), encoding each keyframe with your video VAE and appending it to the positive/negative conditioning and the latent. The difference is in what it selects from your input. guide_mode gives you two flavors:
last_only- one keyframe: the tail's last frame, planted at the start of the new clip.overlap_framesreports 1.first_mid_last(default) - three keyframes from the tail: its first frame at target frame 0, its middle frame atframe_spacing, and its last frame atframe_spacing * 2. This one's for keeping motion continuity, not just position - the model gets a short arc of how things were moving.
frame_spacing defaults to 8, which the tooltip ties to LTX's 8-frame alignment interval. The overlap_frames output is the number of frames the new clip re-renders from the tail - and that number is exactly what you feed into Trim Frames afterward.
The inputs that matter
tail_frames- the output of an Extract Tail node.guide_mode-first_mid_lastfor smooth continuation,last_onlyfor a cheap quick continue.strength- 1.0 holds the tail tight. If the model locks on and produces a frozen replay instead of forward motion, ease it down toward 0.7.frame_spacing- 8 works for most LTX clips.
Outputs: guided positive, negative, latent for the sampler, plus overlap_frames for the trim step.
Install
Search "comfyui-extend" in ComfyUI Manager, or:
cd ComfyUI/custom_nodes
git clone https://github.com/balarooty/comfyui-extend
Restart ComfyUI. The pack has no Python deps; you'll need the LTX 2.3 checkpoint and its VAE to actually sample, but the node itself is just wiring.
Common issues
- Feeding it a combined audio+video latent. Unlike First/Last Guide, Tail Guide doesn't special-case the AV
NestedTensorlatent that 2.3's audio path produces - the code expects a plain video latent. If you're running synchronized audio, keep the audio stream separate from the latent you feed this node, or expect a shape error. - Stalled, frozen output after an extension. Over-anchored on the tail. Lower
strengthand re-run; if it still won't move, the tail itself was too chaotic to continue from. overlap_framesdoesn't match what you expected. It's computed fromframe_spacing, not from your tail length. That's fine - it's the overlap into the new clip, which is what you trim.
The README's recommended full pipeline is the loop this node was built for: Extract Tail from clip one → Tail Guide → generate clip two → Trim Frames → Scene Builder. Get that loop stable and you can stretch LTX clips out as long as you have patience and VRAM.
Inputs (8)
| Name | Type | Default | Description |
|---|---|---|---|
| positive | CONDITIONING | — | |
| negative | CONDITIONING | — | |
| vae | VAE | — | |
| latent | LATENT | — | |
| tail_frames | IMAGE | — | |
| guide_mode | COMBO | first_mid_last | 2 options: last_only, first_mid_last |
| strength | FLOAT | 1.000–1 | — |
| frame_spacing | INT | 81–64 | Pixel-frame spacing for tail keyframes. LTX commonly aligns well on 8-frame intervals. |
Outputs (4)
| Name | Type | Description |
|---|---|---|
| positive | CONDITIONING | — |
| negative | CONDITIONING | — |
| latent | LATENT | — |
| overlap_frames | INT | — |