LTX Extend Video βπ¬
LTX Extend Video
- frames
- video
- fps
Got a clip that's almost right but too short - the music needs a bar more, the shot cuts a second too early, you need breathing room before the action starts? This node grows a video at either end in a single API call, instead of you stitching on a separately-generated clip and hoping the join doesn't look like a seam. It POSTs your video to LTX's /v1/extend endpoint and gets back a longer, coherent version.
The catch, and it's the one real speed bump with this node: it takes a URL, not a local file. The video_url input accepts an HTTPS link or an ltx:// storage URI, and the README is upfront about nothing else. The other nodes in this pack hand you a local MP4 path, so you can't just chain their output straight into this one. You have to host the source somewhere LTX's servers can fetch - a public URL, or an ltx:// URI if the video already lives in LTX's cloud. Plan for that when you design the workflow.
Inputs and outputs
Required: api_key and video_url (with the tooltip spelling it out: "HTTPS URL or ltx:// storage URI of the video to extend").
Optional:
- prompt - describe what should happen in the extended portion, not the whole clip. This is your chance to steer the continuation ("she walks toward the window" appended to the end, or establishing context prepended to the start).
- model -
ltx-2-3-proor legacyltx-2-pro; extension is pro models only, so don't look for a fast option here. - duration - how many seconds to add, 2β20, default 6.
- mode -
end(append) orstart(prepend). Default isend. - context - how many seconds of the input video the model should keep in mind for continuity. Default
-1lets the API auto-optimize; set it manually if the join drifts.
Outputs are the pack standard: frames (IMAGE), video (VIDEO, previews natively), fps (FLOAT - fixed at 25 here).
Install
ComfyUI Manager (search "comfyui-ltx-node"), or:
cd ComfyUI/custom_nodes
git clone https://github.com/PauldeLavallaz/comfyui-ltx-node
pip install requests pillow
Restart, paste your key from ltx.video/api-keys.
Where people get burned
The hosting requirement is the main one - a local path will just 401 or 404 on the API side and you'll be confused about why. Get the video to a reachable URL first. Also budget for the cost: every extension is a fresh paid render, and the extended result is what you get back, so if the join is bad you re-pay and re-run the whole thing rather than paying for just the new section. That's exactly the problem the retake node in this same pack solves from the other direction - retake re-renders a bad chunk inside an existing clip, while extend grows the clip outward. Use the right one for the job.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| api_key | STRING | β | |
| video_url | STRING | HTTPS URL or ltx:// storage URI of the video to extend. | |
| promptopt | STRING | Describe what should happen in the extended portion. | |
| modelopt | COMBO | ltx-2-3-pro | 2 options: ltx-2-3-pro, ltx-2-pro |
| durationopt | INT | 62β20 | Extension length in seconds (2-20). |
| modeopt | COMBO | end | Append to end or prepend to start. |
| contextopt | FLOAT | -1.0-1β20 | Context seconds from input video. -1 = auto-optimized. |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| frames | IMAGE | β |
| video | VIDEO | β |
| fps | FLOAT | β |