Empty LTX-2.5 AV Latent (Batch) ⚡
One wrong empty-latent node and LTX-2.5 hands you a channel mismatch
- audio_vae
- LATENT
LTX-2.5 is an audio-plus-video model, which means the thing you sample isn't an image latent and it isn't a video latent - it's a nested AV latent where the video and audio streams live side by side. This node builds that container in LTX-2.5's exact geometry, and the honest headline is in the source's own docstring: feed it the wrong empty-latent node and the difference is "between a clip and a channel-mismatch traceback."
Why a dedicated node exists
The MiniMax H3 model and the LTX-2.5 model share the same kind of nested AV latent container, but not a single dimension of it. If you're coming from an H3 workflow and you reach for the H3 empty-latent node, you'll get shapes the LTX-2.5 sampler can't chew. This is the LTX-2.5-specific version, and it's the one you want for anything in the 🤖 CCTech/LTX-2.5 family.
How it works
The node builds two things in one latent:
- Video:
[B, 128, (len-1)//8+1, H/32, W/32]- 128 channels, and 8:1 temporal compression with a causal first frame, which is why frame counts of8k+1(9, 97, 121, …) tile exactly. Thelengthinput is frame count. - Audio:
[B, z, n_latents, bins]- the shape is read straight from the audio VAE you connect.
That audio VAE is the clever bit. audio_vae expects ltx-2.5-audio-vae-bf16.safetensors, and the node reads only its geometry - latent channels, frequency bins, latents per second. No encoding happens, so the file "costs nothing" at runtime; it's being used as a ruler, not a worker.
The audio latent's length is derived from the clip duration, which frame_rate sets. So the golden rule the tooltip hammers home: use the same frame_rate on this node and on your LTX-2.5 conditioning node, or the two streams drift apart. The video says 24fps, the audio says 24fps, and the clip stays in sync.
The inputs that matter
audio_vae- the LTX-2.5 audio VAE, used for geometry.length- frames; stick to8k+1values.frame_rate- sets clip duration and therefore audio length; keep it consistent with conditioning.width/height- spatial size, in steps of 32 (defaults 768×512).batch_size- clips per job, each with its own noise from the sampler seed. LTX-2.5's DiT is batch-aware, so - unlike MiniMax H3 - no patch node is needed for batch > 1. The catch is spelled out in the tooltip: VRAM scales with the batch.
One output
LATENT - the joint AV latent, straight into your LTX-2.5 sampler.
Installing it
Part of the CCTech pack. ComfyUI Manager → search "ComfyUI-GGUF-Loader" → install → restart, or:
cd ComfyUI/custom_nodes
git clone https://github.com/ChrisColeTech/ComfyUI-GGUF-Loader
cd ComfyUI-GGUF-Loader
pip install -r requirements.txt
Common issues
The canonical failure here is mixing geometry: H3's empty-AV node feeding an LTX-2.5 sampler, or a frame count that isn't 8k+1 and doesn't tile. If you see a shape mismatch around channels or a "channel-mismatch" style error, check which empty-latent node you actually wired. And when audio and video come back out of sync, it's the frame_rate mismatch - make it identical everywhere it appears. The pack's own smoke tests validate the load paths, but nothing checks your wiring for you.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| audio_vae | VAE | ltx-2.5-audio-vae-bf16.safetensors. Only its geometry is read here (latent channels, frequency bins, latents per second) — no encoding happens, so it costs nothing. | |
| width | INT | 76864–16384 | — |
| height | INT | 51264–16384 | — |
| length | INT | 971–16384 | Frame count. The video VAE compresses 8:1 in time with a causal first frame, so 8k+1 values (9, 97, 121...) tile exactly. |
| frame_rate | FLOAT | 24.001–120 | Sets the clip duration, which sets the audio latent length. Use the same value on LTXV Conditioning or the two streams drift apart. |
| batch_size | INT | 11–64 | Clips per job, each with its own noise from the sampler seed. The LTX-2.5 DiT is batch-aware, so unlike MiniMax H3 no patch node is needed — but VRAM scales with the batch. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| LATENT | LATENT | — |