What is LTX 2.5?

LTX 2.5 is a new version of Lightricks' video generation model, following LTX-2 and LTX 2.3.

The basic architecture is the same as LTX 2.3, but it does more than simply produce cleaner output. It also comes with several major improvements.

  • Multi-shot
    • Generate multiple shots in a single run
  • Gemma 4 Text Encoder
    • The Text Encoder has changed from Gemma 3 to Gemma 4
  • Diffusion Decoder
    • Instead of VAE Decode, it uses a diffusion model to reconstruct video from the latent
    • The basic idea is similar to PiD

There are several other improvements, but this is enough to know for now if you are using it in ComfyUI.


Recommended Settings

  • Resolution
    • Must be a multiple of 32
  • FPS
    • It is not restricted to a fixed set of values
    • The default is 24 FPS
  • Frames
    • Must be 8n + 1
  • Maximum video length
    • 481 frames
    • About 20 seconds at 24 FPS

Model Download

LTX 2.5 models cannot be downloaded without authentication. Log in with your Hugging Face account and click Agree and Access on the LTX-2.5 page.

The IC-LoRAs used later on also need the same agreement on each of their pages.

📂ComfyUI/
└── 📂models/
    ├── 📂diffusion_models/
    │   └── ltx-2.5-22b-distilled-transformer-comfy-int8-convrot.safetensors
    ├── 📂latent_upscale_models/
    │   └── ltx-2.5-latent-spatial-upscaler-x2-bf16-1.0.safetensors
    ├── 📂text_encoders/
    │   └── gemma4-12b-with-proj-ltx-2.5-comfy-int8-convrot.safetensors
    └── 📂vae/
        ├── ltx-2.5-video-vae-bf16.safetensors
        └── ltx-2.5-audio-vae-bf16.safetensors

text2video

ltx_2_5_text2video.json

Like LTX-2, this is a 2-stage workflow. It first generates at half the target resolution, then upscales the result by 2x.

Deep divetext2video

Resolution settings

Enter half the target resolution in EmptyLTXVLatentVideo, since the result will be upscaled by 2x afterward.

This value must also be a multiple of 32, so set the target width and height to multiples of 64.

Frame count settings

In this workflow, enter the desired duration in seconds (sec) and the FPS, and the frame count is rounded to a suitable 8n + 1 value.

Outputs

Multi-shot

This has become more common with models such as Seedance 2: you can generate multiple shots in a single run.

ltx_2_5_text2video_multishot.json

There is no special format. You can simply write something natural such as “a cut happens here...” and the model will recognize it.

This makes prompts easy to write, but the model may not always recognize them as Multi-shot. If it does not work, be patient and try a few times.

Outputs

Duration Predictor

Video length is normally set manually, but deciding how many seconds best fit a prompt can be surprisingly difficult.

LTX 2.5 can automatically estimate how long a video needs to be to express the content of the prompt.

Model download

📂ComfyUI/
└── 📂models/
    └── 📂model_patches/
        └── ltx-2.5-duration-head-bf16.safetensors
ltx_2_5_text2video_duration_predictor.json
Deep diveDuration Predictor

LTXV Duration Predictor

It outputs the predicted frame count, which is connected to length in the regular text2video workflow.

It is only a prediction, so the result may be shorter or longer than expected. Even so, automatically predicting the video length is an interesting feature.

Outputs

image2video

ltx_2_5_image2video.json

This works the same way as image2video in LTX 2. LTXVImgToVideoInplace inserts the input image as the first frame.

For various reasons, earlier workflows deliberately degraded the input image with LTXV Preprocess. With LTX 2.5, at least in my experience, it no longer seems necessary, so I have left it out.

Outputs
Input
Input
Output

Generative Interpolation / FLF2V

This workflow takes any number of images and smoothly fills in the gaps between them.

If you specify only the first and last images of the video, it becomes what is commonly called FLF2V.

ltx_2_5_generative_interpolation.json
Deep diveGenerative Interpolation / FLF2V

LTXV Add Guide

Use frame_idx to specify where each image is inserted.

  • 0: First frame
  • -1: Last frame

Add more nodes and connect them in sequence to create Generative Interpolation.

Depending on the images, the result may look more like a transition than frame interpolation.
For an intermediate LTXVAddGuide, it may help to lower strength to around 0.3–0.4.

Outputs
Input 1
Input 1
Input 2
Input 2
Input 3
Input 3
Output

IC-LoRA

IC-LoRA plays a role similar to ControlNet or a video-editing LoRA for LTX.

LTX 2.5 is compatible with many IC-LoRAs made for LTX 2.3, and they can be used without modification.

Union Control

Like a regular ControlNet, it can control the generated video with line art, depth maps, or pose videos.

Model download

📂ComfyUI/
└── 📂models/
    └── 📂loras/
        └── ltx-2.3-22b-ic-lora-union-control-ref0.5.safetensors
ltx_2_5_ic_lora_union_control_pose.json

For a more detailed explanation of IC-LoRA, see LTX 2 / IC-LoRA (Pose).

Outputs
Input / pose
Output

Clean Plate

Lightricks has released plenty of fun IC-LoRAs for VFX work with LTX 2.5.

There are all sorts, from turning day into night to flooding a scene. This time, let's try Clean Plate, which removes a specific thing from a video.

Model download

📂ComfyUI/
└── 📂models/
    └── 📂loras/
        └── ltx-2.5-22b-ic-lora-clean-plate-1.0.safetensors
ltx_2_5_ic_lora_clean_plate.json

The prompt needs a little care.

Instead of writing "remove ○○" as you would for image editing, describe the scene after ○○ is gone, as ordinary text. When you know exactly what should disappear, adding that it is absent, as in no bicycle anywhere in the frame, makes it work more reliably.

Things at the edge of the frame or partly hidden seem to disappear cleanly, while something filling the center of the frame seems hard for it. There is probably too little background left in the video to reconstruct from.

Outputs
Input
Output

In most cases, this workflow can run other IC-LoRAs too. A few need a dedicated workflow, though, so let's look at those below.

Alpha Gen

It cuts the foreground out of a video.

It does not output a video with a transparent background directly, though, so a little post-processing is needed.

Model download

📂ComfyUI/
└── 📂models/
    └── 📂loras/
        └── ltx-2.5-22b-ic-lora-alpha-gen-0.9.safetensors
ltx_2_5_ic_lora_alpha_gen.json

It does not use a prompt. Leave it empty.

The output is a black-and-white mask video.

ComfyUI cannot make transparent video, so here we turn it into a green-screen video.

Deep diveAlpha Gen

Composite onto a green screen

  • Turn the black-and-white video into a mask with ImageToMask
  • Invert it with InvertMask
  • With ImageCompositeMasked, composite a solid green EmptyImage onto the background

With videos longer than 145 frames, the original footage seems to start leaking into the mask. The workflow cuts the video at 145 frames.

Outputs
Input
Mask
Green screen

Refine Details

It upscales any video to a high resolution such as 4K while drawing in fine detail.

To keep the computation down it processes the video in tiles, so it needs a custom node.

Custom node

Model download

📂ComfyUI/
└── 📂models/
    └── 📂loras/
        └── ltx-2.5-22b-ic-lora-refine-details-1.0.safetensors
ltx_2_5_ic_lora_refine_details.json

Deep diveRefine Details

Resize the video first

First, enlarge the video to a large size (about 4 MP in this workflow).

What Refine Details does is redraw that stretched, blurry video cleanly.

Tiled Fusion Sampler

LTXVTiledFusionSampler splits the video into tiles and samples them.

There is no need to change its settings.

In the prompt, write words about image quality, such as sharp photographic detail or natural film grain, not about what is in the video. Every tile receives the whole prompt, so if you name a person, that person can get drawn into tiles where they are not.

Outputs
Input
Output