LTX-2.5 Image+Audio-to-Video (Lip Sync)
A ComfyUI workflow for LTX-2.5 that adds driving-audio lip sync to the stock image-to-video template. The official 2.5 I2V workflow generates its own audio from an empty latent (no lip sync); this version encodes a real input audio track and locks it in as fixed conditioning across both the base and refine/upscale sampling passes, so the generated mouth movement follows your audio.
Built on top of Comfy's own LTX-2.5 template nodes — no custom node packs required.
What it does
Takes a starting image + a driving audio clip (voice/dialogue) and outputs a video with lip-synced motion.
Uses
LTXVAudioVAEEncodeto encode the input audio into a latent, thenSetLatentNoiseMask(fully unmasked) to hold it fixed so the sampler treats it as a given rather than something to generate.That same fixed audio latent is fed into both the base pass and the refine/upscale pass, so the second pass doesn't drift from the driving audio.
Requirements
ComfyUI with the LTX-2.5 nodes (
comfy-core, no extra custom nodes)LTX-2.5 checkpoint/model files as used by the stock LTX-2.5 template
An audio VAE checkpoint (loaded via the existing
VAELoadernode in the graph)
Usage
Load the workflow into ComfyUI.
In
LoadImage, upload your starting frame.In
LoadAudio, upload your driving audio (voice track).Queue the prompt.
Notes / tuning
SolidMaskvalue is0(fully preserve the input audio latent, no noise added to it).LTXVDualCFGGuideris set tovideo_cfg: 1,audio_cfg: 1on both passes.If sync drifts, double-check the audio latent is still wired into both
LTXVConcatAVLatentnodes (base and refine) — this was the main bug in earlier iterations of this workflow, where the refine pass pulled audio from the base pass's own output instead of the original encoded audio.
Credit
Adapted from Comfy's stock LTX-2.5 image-to-video template, with the audio-conditioning path ported over from the LTX-2.3 image+audio-to-video template.