Readme
LTX 2.3 Video + Audio Creative Lab
Generate video with synchronized audio, or transform existing images and videos with a collection of specialized LTX 2.3 task adapters.
Start from a text prompt for a completely new shot, or choose a task to preserve, restore, animate, upscale, or edit supplied media. The model also supports identity and concept injection from a single asset sheet.
Quick start
For text-to-video:
- Leave Task LoRA set to None — Text to video.
- Describe the shot in Prompt.
- Choose the output size, frame count, and frame rate.
- Leave Seed at
0for a new result each time, or enter a previous seed to reproduce and refine a result.
A useful starting preset is:
- Width:
768 - Height:
512 - Frames:
121 - Frame rate:
24 - LoRA strength:
0
At 24 fps, 121 frames produces about five seconds of video. For a larger
landscape result, try 1280 × 704.
Choose a task
input_media changes meaning with the selected task:
| Task | Required input | What it does |
|---|---|---|
| None — Text to video | None | Creates a new video and synchronized audio from text |
| Ingredients | One composite asset-sheet image | Injects characters, props, and locations into a new shot |
| Inpaint / Outpaint | Source video and mask | Regenerates the white area while preserving the black area |
| Upscale video 2× | Video at half the output dimensions | Produces a 2× spatial upscale |
| Upscale video 4× | Video at one-quarter of the output dimensions | Produces a 4× spatial upscale |
| Add water | Source video | Adds water while retaining the original scene |
| Deblur | Blurred source video | Restores focus and fine detail |
| Remove compression artifacts | Compressed source video | Reduces blocking, ringing, and chroma artifacts |
| Cross-eyed effect | Source video | Applies the specialized eye-direction edit |
| Remove facial hair | Source video | Removes beards or other facial hair |
| Colorize | Grayscale source video | Restores natural-looking color |
| Day to night | Daytime source video | Converts the scene to nighttime |
| Cinemagraph | One still image | Animates selected natural motion into a video |
| Foley sound effects | Source video | Generates synchronized sound effects for the clip |
| Clean plate | Source video | Removes people or objects to recover the background |
| CrossView Warp | Original video and depth-warp video | Synthesizes a new camera viewpoint |
Set LoRA strength to 0 to use the recommended strength for the selected
task. This is the best default in most cases. The current automatic defaults
are Ingredients 1.4, CrossView Warp 1.3, Add Water 1.2, and 1.0 for
the other adapters.
Write a strong prompt
Describe a shot, not a list of keywords. Include the subject, action, setting, camera behavior, visual treatment, and important sounds.
For example:
A medium-wide tracking shot of a woman in a yellow raincoat running through a neon-lit market at night. Handheld camera, wet pavement reflecting signs, realistic motion and shallow depth of field. Footsteps splash through puddles beneath distant traffic and market chatter.
For an edit task, describe the desired finished shot. You do not need to add
adapter trigger phrases such as COLORIZE, DEBLUR, or Crossview.; the
model adds them automatically.
Use Negative prompt only for problems you specifically want to discourage. The supplied default is a good general-purpose starting point.
Ingredients: characters and concepts from one image
Ingredients is identity and concept injection rather than a conventional style filter. Supply one clean composite asset sheet containing the people, objects, and locations that should appear in the generated video.
For best results:
- Separate references into clear, uncluttered panels.
- Include useful views of each character, especially the face, clothing, and full-body proportions.
- Include important props and environments as their own panels.
- Avoid contradictory versions of the same identity.
- Use Prompt to describe the new action, shot, and sound—not the sheet layout.
Reference description is optional. When it is empty, the model examines the asset sheet and writes its own panel-by-panel description. Supplying your own description is useful when names, roles, or subtle identity details matter.
Example:
Reference description: Top left and top center show Mara, a woman with a short black bob, brown eyes, a red motorcycle jacket, and a small scar over her right eyebrow. Bottom left shows her silver retro motorcycle. The right half shows a foggy coastal road at dawn.
Prompt: Mara rides the silver motorcycle around a sharp coastal bend as the camera follows low beside the rear wheel. Wind pulls at her red jacket; the engine growls and waves crash below the cliffs.
Inpainting and outpainting
Choose Inpaint / Outpaint, supply the source video in input_media, and
provide a mask:
- White: generate or replace this area.
- Black: preserve the source content.
The mask may be a still image, which is repeated for the whole clip, or a video with at least as many frames as the requested output. Use a video mask when the edit region moves.
For outpainting, set the requested output dimensions to the expanded canvas and mask the newly exposed area white.
Upscaling
width and height always describe the final output size.
- For Upscale video 2×, a
1280 × 704output expects source media near640 × 352. - For Upscale video 4×, a
1280 × 704output expects source media near320 × 176.
Use a prompt that accurately describes the source content and the detail you want preserved. Upscaling cannot reliably reconstruct text, faces, or objects that are absent or unrecognizable in the source.
CrossView Warp
CrossView Warp creates a new viewpoint from two frame-aligned guides:
- Put the original source video in
input_media. - Create a depth-warp control video from those same frames using Depth Anything V2 and ComfyUI-CrossViewWarp.
- Put that control video in
crossview_warp_media.
The control video normally contains magenta holes where the new view exposes previously hidden parts of the scene. Both videos must:
- Have the same resolution.
- Contain at least
num_framesframes. - Use the same frame order and timing.
Describe the desired finished view in Prompt. Keep the default strength unless the camera transformation is too weak or begins to distort the scene.
Input and output rules
widthandheightmust be divisible by32.num_framesmust equal8k + 1: for example81,121,181, or257.- A video input must contain at least
num_framesframes. Extra frames after that point are not used. - Ingredients and Cinemagraph expect an image. Video edit tasks expect a video.
- The output is an MP4 containing generated video and audio.
frame_ratecontrols playback and audio/video timing;24fps is a good default.
Higher resolutions and longer clips require more generation time and memory.
When exploring an idea, start at 768 × 512 and 81 or 121 frames, then increase
the size or duration for the final result.
Reproducibility and variation
Use Seed to control the random starting point:
0chooses a random seed.- Any positive integer makes the run repeatable with the same inputs and model version.
To refine a promising result, keep the seed fixed and make small prompt or strength changes. To explore different staging and motion, keep the prompt and change the seed.
Notes and limitations
- Complex physical interactions, legible text, exact hand motion, and crowded scenes can still be challenging.
- Strong task-adapter values may introduce distortion or change details that should have been preserved.
- Restoration and upscaling are generative: plausible detail may be created rather than recovered exactly.
- Input video frame rates are not automatically retimed. Prepare source and control clips with matching frame sequences when exact timing matters.
- A repeated seed is only reproducible when all inputs, settings, and the model version remain unchanged.
Credits
Built on LTX 2.3 by Lightricks, with task adapters from the LTX 2.3 Creative Lab. CrossView Warp is provided by Cseti.