File size: 7,155 Bytes
107aaef | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 | ---
license: other
license_name: ltx-2.x-community-license
license_link: https://huggingface.co/Lightricks/LTX-2.5/blob/main/LICENSE
base_model:
- Lightricks/LTX-2.5
- jdopensource/JoyAI-Echo
base_model_relation: merge
tags:
- comfy-native
- comfy-quant
- quantized
- comfyui
- ltx-2
- ltx-2.5
- joyai-echo
- video-generation
- text-to-video
- audio-video
- lip-sync
- merge
pipeline_tag: text-to-video
---
# JoyAI-Echo x LTX-2.5 (echoVid) - comfy-native (int8 / w4a8 / w4a4 / nvfp4 / mixed)
**Try it in the browser:** [ZeroGPU demo Space](https://huggingface.co/spaces/joeygambino/joyai-echo-ltx25-echovid-comfy-native) - these exact files, the two-pass ladder, no install.
**LTX-2.5's engine with JoyAI-Echo's performance.** LTX-2.5 renders picture and sound in
one pass, at any length, in one generation. JoyAI-Echo (a fine-tune of LTX-2.3) has the
better *actor*: natural lip-sync, expressive faces, a voice that stays put. The two
transformers are shape-identical, so JoyAI-Echo's video attention/feed-forward delta was
transplanted onto the official **LTX-2.5 dev** transformer, and the official LTX-2.5 distilled LoRA (`ltx-2.5-22b-distilled-lora-450`) is baked in at 0.5 - so these are few-step files with the same speed, VRAM and nodes as LTX-2.5 distilled. Nothing was retrained. (**v2**: the first build put the delta on the distilled transformer and came out over-saturated with hard contrast; those files are gone. The plain dev merges, for people who want to apply their own distill LoRA at their own strength, are here: https://huggingface.co/joeygambino/joyai-echo-ltx25-echoVid-dev.)
What you get over stock LTX-2.5 distilled is the acting JoyAI-Echo was trained for - lip-sync,
expression, a voice that stays put - at the same speed, VRAM and nodes.
> **Workflow + nodes:** https://github.com/jlucasmcrell/ComfyUI-JoyLTX25 (the *Joy-LTX 2.5*
> canvases: one-prompt take with a VRAM planner, and multishot with AV-extend joins; the release zip bundles the writer).
> **GGUF files (Q3_K_M .. Q8_0):**
> https://huggingface.co/joeygambino/joyai-echo-ltx25-echoVid-gguf
> **All models:** https://huggingface.co/joeygambino
> **Try it live:** https://huggingface.co/spaces/joeygambino/joy-ltx-25 (one take, ZeroGPU)
> **Civitai:** *Joy-LTX 2.5* (models being uploaded now).
## What it looks like
Rendered with the files on this page (070T30, distilled LoRA baked at 0.5), the [ComfyUI-JoyLTX25](https://github.com/jlucasmcrell/ComfyUI-JoyLTX25) canvases, 8 steps at cfg 1. Sound is generated with the picture, in the same pass - turn it on.
**Three shots joined into one take**
<video src="https://huggingface.co/joeygambino/joyai-echo-ltx25-echoVid-comfy-native/resolve/main/demo/demo_seamless_3shot_23s.mp4" controls width="640"></video>
Multishot, 3 x 8 s at 1280x736, AV-extend joins - the speech and the room carry across both joins with no reference photo attached.
**Beach, hard sun**
<video src="https://huggingface.co/joeygambino/joyai-echo-ltx25-echoVid-comfy-native/resolve/main/demo/demo_beach_10s.mp4" controls width="640"></video>
10 s, single generation, picture and sound together.
**Wet neon street**
<video src="https://huggingface.co/joeygambino/joyai-echo-ltx25-echoVid-comfy-native/resolve/main/demo/demo_neon_10s.mp4" controls width="640"></video>
10 s, single generation. Reflections and rain with a voice over them.
**Snow, flat overcast**
<video src="https://huggingface.co/joeygambino/joyai-echo-ltx25-echoVid-comfy-native/resolve/main/demo/demo_snow_10s.mp4" controls width="640"></video>
10 s, single generation. The grade holds in high key - the failure mode of the first build.
## Two doses
| dose | what it is | pick it when |
|---|---|---|
| **070T30** *(default)* | 0.7 x Echo delta on video attention/FF, 0.3 x on the modulation tables, distill LoRA 0.5 | the default - cleaner skin, natural grade |
| **100T50** *(strong)* | 1.0 x / 0.5 x, distill LoRA 0.5 | loud, comic, animated performances - the livelier read, a touch hotter on contrast |
Both were reviewed blind on 20+ paired renders: scores tie; 070T30 reads a touch less
rubbery on still faces, 100T50 lands laughter and big expressions better. Start with 070T30.
## Which file (stock ComfyUI 0.32+, no custom loader - the fast family on RTX 50)
These use ComfyUI's own quantisation (`comfy_quant` + comfy-kitchen kernels), the same
machinery as Lightricks' official `int8-convrot` build. Load them with the plain **Load
Diffusion Model** node. Sizes are decimal GB. Timings: 960x544, 8 s, two-pass x2 to 1920x1088.
| file | GB | fits | RTX 5090 | RTX 3090 |
|---|---|---|---|---|
| `LTX25dist-echoVid-<dose>-v2-DiT-comfy-w4a4.safetensors` | 11.2 | 12 GB (tight) / 16 GB | 87 s | 3121 s (avoid on Ampere) |
| `LTX25dist-echoVid-<dose>-v2-DiT-comfy-w4a8.safetensors` | 12.5 | 16 GB | ~90 s | ~580 s |
| `LTX25dist-echoVid-<dose>-v2-DiT-comfy-nvfp4.safetensors` | 12.5 | 16 GB (RTX 50 only) | ~100 s | n/a |
| `LTX25dist-echoVid-<dose>-v2-DiT-comfy-mix4x8-13.8GB.safetensors` | 13.8 | 16 GB | 110 s | 1685 s |
| `LTX25dist-echoVid-<dose>-v2-DiT-comfy-mix4x8-17.0GB.safetensors` | 17.0 | 24 GB | 111 s | 3093 s (offloads) |
| `LTX25dist-echoVid-<dose>-v2-DiT-comfy-int8.safetensors` | 21.5 | 32 GB (24 GB tight) | 120 s **(32 GB default)** | - |
Rule of thumb: **RTX 50 -> this repo. RTX 30/40 -> the GGUF repo** (Q5_K_M / Q6_K are 4-8x
faster there than any 4-bit comfy-native arm). `--enable-triton-backend` on the ComfyUI
launch line roughly halves w4a8/int8 step time where triton is installed.
## fp8 and the bf16 master
Two more cuts, straight from the v2 master (same bake: dev + Echo delta + distill LoRA 0.5):
| file | GB | note |
|---|---|---|
| `LTX25dist-echoVid-<dose>-v2-DiT-comfy-fp8.safetensors` | 21.5 | comfy fp8_e4m3fn scaled; stock **Load Diffusion Model** |
| `LTX25dist-echoVid-<dose>-v2-DiT-bf16.safetensors` | 42.0 | the master; needs a card that streams 42 GB (or offload); the file to quantise from |
## Install (ComfyUI)
1. ComfyUI 0.32 or newer (the comfy-kitchen kernels ship with it).
2. Put the `.safetensors` in `models/diffusion_models/`.
3. From [Lightricks/LTX-2.5](https://huggingface.co/Lightricks/LTX-2.5): `vae/ltx-2.5-video-vae-bf16.safetensors`
and `vae/ltx-2.5-audio-vae-bf16.safetensors` -> `models/vae/`;
`latent_upscale_models/ltx-2.5-latent-spatial-upscaler-x2-bf16-1.0.safetensors` -> `models/latent_upscale_models/`;
text encoder `text_encoders/gemma4-12b-with-proj-ltx-2.5-comfy-int8-convrot.safetensors` -> `models/text_encoders/`
(16 GB cards: the 10.6 GB `gemma4-12b-ltx25-comfy-w4a8.safetensors` from
[LTX-2.5-Quantized](https://huggingface.co/joeygambino/LTX-2.5-Quantized)).
4. Load the workflow from the node pack above (or any LTX-2.5 workflow: pick this file in the
stock **Load Diffusion Model** loader). Distilled schedule: 8 steps pass 1, 3 steps pass 2,
`euler_ancestral`, CFG 1.
## Credits
JoyAI-Echo by JD ([jdopensource/JoyAI-Echo](https://huggingface.co/jdopensource/JoyAI-Echo));
LTX-2.5 by Lightricks. Merge, quantisation and workflows by joeygambino. Licensed under the
LTX-2.x Community License (inherited from both parents).
|