Everything here is free and stays free — the format spec, the nodes, the workflows, the cartridges, the LoRAs. If it saved you a night of debugging (it contains several hundred of mine), tips keep the 5090 warm:
Profil d'exécution
Description de la source
Everything here is free and stays free — the format spec, the nodes, the workflows, the cartridges, the LoRAs. If it saved you a night of debugging (it contains several hundred of mine), tips keep the 5090 warm:
☕ Buy me a coffee on Ko-fi
💛 Sponsor on GitHub
🔁 Liberapay (recurring)
⚡ Or right here: the Civitai tip button on this page sends Buzz directly.
Two-shot talking-character video on LTX-2.3 — shot 2 is a TRUE audio+video extension of shot 1, not a cut. The last ~3 seconds of shot 1's video and audio become latent context, so the model generates forward from an ongoing utterance: the voice carries over by construction, identity holds, and the join is a continuous take. The character speaks in a reference voice you supply.
Sources
1 sourceExtraits de sources
1 extraitSource context: 223 downloads · Type Workflows · Base model LTXV 2.3
Core ComfyUI nodes plus one node from ComfyUI-KJNodes ( LTXVAudioVideoMask ), which powers the extension.
A word on expectations. This is a bleeding-edge pipeline — a 22B audio+video model on consumer hardware. It works, but your first clean render will likely take some tuning to YOUR machine. Every setting that matters is documented in note blocks inside the workflow, so the guidance travels with the graph. If you get stuck, comment here or open a GitHub issue — I answer.
Quick fixes — read this first
Nearly every problem reported with this workflow is one of these.
Second shot doesn't lip-sync — voiceover over a barely-moving face Why: You are on v1.x, which chained shots on shot 1's decoded last frame. That guide is pixel-continuable, so the sampler copies it instead of animating. Structural — no setting fixes it. Fix: Update to v2.0+. Shot 2 is now a true audio+video latent extension.
LTXVAudioVideoMask node is missing (red) Why: v2 uses one node from ComfyUI-KJNodes for the extension. Fix: Install ComfyUI-KJNodes. Everything else is core ComfyUI.
Burned-in subtitles or captions appear Why: The graph ships at cfg 1, and at cfg 1 negative prompts are inert on distilled models — your negative is doing nothing. Fix: Raise cfg to about 1.3 on both CFGGuider nodes.
The voice comes out British Why: LTX drifts to a British accent unless told otherwise. Fix: Name it affirmatively in the positive prompt: “in a casual American accent”.
The model reads your scene description aloud Why: Nothing told it which words are spoken. Fix: Keep the exclusivity block: “She is the only person speaking, and the only voice on the audio track is hers ... nothing else is read aloud.”
Audio and video durations drift apart after changing length Why: In v1 the audio latent did not follow the length primitive — a silent desync. Fix: Fixed in v2. Change length , then set the AV-extend node's video_end_time / audio_end_time to (length + 72) / 25 . At the shipped 241 that is 12.52; for ~20 s use length 265 and 13.48.
Length change errors out Why: LTX-2.3 hard constraints. Fix: Frames must be 8n+1 (121, 241, 265, 329...) and both dimensions divisible by 32 .
Output is mush, or the face wanders Why: Wrong checkpoint class. Fix: This graph's 8-step sigma ladder assumes a distilled LTX-2.x checkpoint. A non-distilled one will not resolve in 8 steps.
Out of VRAM, or renders crawl Why: A bf16 LTX-2.3 checkpoint is ~40 GB of weights. Fix: Pick an fp8 checkpoint in UNETLoader , and drop resolution before you drop steps.
The one people miss most: cfg 1 makes your negative prompt do nothing. If you are fighting burned-in text, that is why.
What you get
SETUP -> SHOT 1 -> [last ~3s of video AND audio as latent context] -> SHOT 2 (extends it) -> FINISH (join + refine) -> FINAL
What you need
A distilled LTX-2.x checkpoint
The LTX-2.3 VAEs and a Gemma-3-12B text encoder
The TalkVid ID-LoRA for reference-voice mode
ComfyUI-KJNodes
Two settings worth knowing
cfg ships at 1, which makes negative prompts inert. Raise to ~1.3 if you need one.
length drives everything except the AV-extend end times, which are (length + 72) / 25 . At 241 that is 12.52; for ~20 s use 265 and 13.48.
Everything else I've published
All models on Hugging Face
JoyAI-Echo multishot patch — nodes, releases, issues
LTX-2.3 Multishot Lite — the core-node workflow
Remaining hardware or download-size estimates are not available yet.
Exigences
Text encoder · 17.4 GB · Hugging Face · HuggingbaseHuggingbase/FlixTest
ltx-2.3_text_projection_bf16.safetensors
Non résoluText encoder · Unknown
LoRA · 1.08 GB · SAFETENSORS · Unknown
VAE · 348 MB · SAFETENSORS · bf16 · full · Unknown
ltx23_echoVid-ltxAud_surgical_bf16.safetensors
Non résoluCheckpoint · Unknown
LTX23_video_vae_bf16.safetensors
Fichier non vérifiéVAE · Unknown · LTX23 Video VAE Bf16.safetensors