
Ltx 2.3 Quality Extend Video API
Generate high-quality video with audio from images using LTX-2.3
LTX 2.3 Quality Extend Video
LTX 2.3 Quality Extend Video seamlessly extends an existing video forward or backward, generating new frames that match the source video's style, lighting, and motion dynamics. Only the generated extension is billed — source frames are never charged.
🌟 Key Features
⏩ Bidirectional Extension
Extend a video forward to continue the scene, or backward to generate a natural-looking prequel — all from the same model.
🎨 Style-Consistent Generation
The model analyzes the source video's visual style, color grading, and motion patterns, producing extensions that blend seamlessly with the original.
🎞 Frame Rate Matching
Optionally match the source video's frame rate for a perfectly smooth, artifact-free result.
🔊 Optional Audio Generation
Optionally generate audio for the extended segment.
🔁 Reproducible Results
Pin a seed value to reproduce or iterate on a specific generation.
⚙️ Parameters
| Parameter | Required | Description |
|---|---|---|
prompt | ✅ | Text description of the extended scene. Maximum 2,000 characters. |
video_url | ✅ | URL of the input video to extend. Supported: mp4, mov, webm, m4v, gif. |
extend_direction | ❌ | Direction of extension: forward (default) or backward. |
num_frames | ❌ | Number of frames to generate for the extension (default: 81). |
resolution | ❌ | Output video resolution preset (default: landscape_16_9). See options below. |
match_input_fps | ❌ | Whether to match the source video's frame rate (default: true). |
generate_audio | ❌ | Whether to generate accompanying audio (default: false). |
seed | ❌ | Random seed for reproducibility. Omit for random results. |
Resolution Options
| Value | Description |
|---|---|
square_hd | Square HD (1024×1024) |
square | Square (512×512) |
portrait_3_4 | Portrait 3:4 |
portrait_9_16 | Portrait 9:16 |
landscape_4_3 | Landscape 4:3 |
landscape_16_9 | Landscape 16:9 |
Extend Direction Options
| Value | Description |
|---|---|
forward | Append new frames after the end of the source video |
backward | Prepend new frames before the start of the source video |
💲 Pricing
Billed at $0.0024075 per megapixel of generated video data (width × height × num_frames), rounded upward. Source video frames are not billed.
Example: landscape_16_9 (1280×720) at 81 frames ≈ 75 MP ≈ $0.18
💡 Prompt Tips
Continue the scene naturally — the character keeps walking down the moonlit street, footsteps echoing, same cinematic lighting.
- For
forward: describe what happens next — new actions, camera movements, scene transitions. - For
backward: describe the preceding context — where the scene came from, setup shots. - Keep the style description consistent with the source video to avoid jarring transitions.
- Reference the source video's existing elements (characters, lighting, environment) to anchor the generation.
🎯 Use Cases
- Film & Short Video — Extend short clips into longer sequences without re-shooting.
- Loop Creation — Generate seamless extensions to create looping background videos.
- Scene Padding — Add establishing or trailing shots to existing footage.
- Creative Exploration — Explore alternate continuations of a scene with different prompts.
📝 Notes
- Both
promptandvideo_urlare required. num_framesmust satisfy:(num_frames - 1) % 8 == 0(e.g. 25, 33, 41, 81, 121).- Only the generated extension segment is billed; source video frames are never charged.
- Task status values:
created,processing,completed,failed. - Generated video URLs are returned in
outputsonce status iscompleted.


















