Nodes/civitai-comfy-nodes/LTX 2 / extendVideo
ComfyUI Node

LTX 2 / extendVideo

Continue a clip with the 19B, hosted by Civitai

By civitai·Created 2 months ago·Updated about a month ago· 42
LTX 2 / extendVideo
  • source_video
  • loras
  • api_config
  • video
  • workflow_id
  • raw_json
prompt
negative_prompt
seed0
duration5
width1280
height720
fps24.00
generate_audiotrue
guidance_scale4.00
steps20
model19b-dev
num_frames121

LTX 2's video-extension node, hosted on Civitai's cloud: feed it a source clip plus a prompt, and it generates the continuation - same scene, same subjects, new frames after the cut. It's the 19B-era version of the LTX 2.3 extendVideo node, and the honest framing is that extension was one of LTX 2's genuinely loved tricks.

The KB's ltx-video doc has a striking detail from the LTX-2 launch days: a user continued a clip from a real video and the model picked up the person's voice "scarily well" from a few seconds of audio, and continuation was widely cited as one of the strongest LTX-2 behaviors. That capability is what this node rents you - a hosted 19B that carries motion, look, and (when audio is on) voice across the seam, with none of the local setup that era demanded (32GB+ VRAM officially, or the Gemma text-encoder juggling act). The one dial that defines the node is num_frames - how much footage to add.

How it works

Standard orchestration: videoGen workflow with the LTX 2 engine, submit to the Civitai Orchestration API, long-poll, download as VIDEO. Your source video is uploaded with the job and conditioned on as the opening segment; the hosted Comfy workflow generates num_frames more and appends them. Frame-count hygiene still applies - LTX wants frame counts divisible by 8 plus 1, which is why the default is 121 and the range runs 9–481.

Inputs and outputs that matter

  • prompt (required) - what happens next. Describe the ongoing action, not a jump cut.
  • source_video (required) - the VIDEO socket with the clip to extend.
  • negative_prompt - what to avoid.
  • num_frames - default 121, range 9–481. Longer extensions cost more and raise drift risk; iterative extending beats one giant jump.
  • duration - tooltip: 3 or 5 seconds.
  • width / height - default 1280×720.
  • fps - default 24; steps - default 20 (8–50); guidance_scale - default 4; generate_audio - default true.
  • model - 19b-dev / 19b-distilled.
  • loras - CIVITAI_LORAS socket.
  • api_config - auth override.

Outputs: video, workflow_id, raw_json.

Installing it

ComfyUI Manager → Custom Nodes Manager → "Civitai Comfy Nodes" (publisher civitai) → Install → restart, or clone into ComfyUI/custom_nodes + pip install -r civitai-comfy-nodes/requirements.txt. Just requests; no models.

Common issues

  • Auth & Buzz. Civitai account with Buzz; CIVITAI_API_TOKEN for headless installs.
  • Seam drift. Extensions can wander at the cut, more so on 2.x than 2.3. Keep num_frames modest and extend iteratively; lower guidance_scale a notch if the hand-off gets jumpy.
  • Voice/audio carries - or doesn't. With generate_audio on, the extension often inherits the source's audio character (the "scary good" voice copying). If the new audio doesn't match, keep the source track downstream instead.
  • Don't fight the frame math. Set num_frames to values that fit the divisible-by-8-plus-1 rule to avoid server-side rejections.
  • Early preview. Behavior may change without notice; pin the version.
  • Cost. Extensions bill by length; read the per-run cost on the node's status line.
CategoryCivitai/Video/LTX 2

Inputs (15)

NameTypeDefaultDescription
promptSTRING
source_videoVIDEO
negative_promptoptSTRING
seedoptINT00–4294967295
durationoptCOMBO5Duration in seconds (3 or 5)
widthoptINT12800–2147483647
heightoptINT7200–2147483647
fpsoptFLOAT24.001–60
generate_audiooptBOOLEANtrue
guidance_scaleoptFLOAT4.001–10
stepsoptINT208–50
modeloptCOMBO19b-dev2 options: 19b-dev, 19b-distilled
lorasoptCIVITAI_LORAS
num_framesoptINT1219–481
api_configoptCIVITAI_CONFIGOptional Civitai Auth connection; defaults to CIVITAI_API_TOKEN or stored OAuth login.

Outputs (3)

NameTypeDescription
videoVIDEO
workflow_idSTRING
raw_jsonSTRING