ComfyUI Node

LTX-2.3

The release that made LTX competitive, now without the local VRAM tax

By Runware·Created 2 years ago·Updated about a month ago· 140
LTX-2.3
  • frameImages
  • lora
  • video
positivePrompt
width1024
height1024
duration1.00
audio
negativePrompt
seed0
steps15
CFGScale4.00
fps25
numberResults1
settings.enhancePrompttrue
safetyfalse
safety.checkContentfalse
safety.modefast
ttlfalse
ttl_value60
outputFormatMP4
outputQuality95

LTX-2.3 is the release that flipped the community's verdict on Lightricks. After months of "LTX is the worst of the models," 2.3 shipped a rebuilt VAE, fixed the frozen image-to-video problem, added native portrait mode, and cleaned up the audio - and the skeptical thread was soon titled "my God have they turned things around." Running that 22B model locally still wants serious VRAM. Running it through this node wants an API key.

It's the hosted LTX-2.3, served by Runware through the ComfyUI-Runware pack. Same payoff as every node here: no checkpoint, no Gemma text encoder to offload, no distilled-LoRA stack - just widgets, a queue, and a native VIDEO back.

How it works

The node sends model AIR lightricks:[email protected] with a videoInference task to Runware's REST API, then wraps the returned MP4 as VIDEO. The control surface is richer than base LTX-2, which tells you where the model's strengths moved:

  • audio - an audio-to-video conditioning input (URL or UUID). This is the headline feature: feed it a track and the video is generated and merged to match it, trimmed to the clip's duration, up to 30 seconds. Music-video and lipsync work lives here.
  • lora - a RUNWARE_LORA socket, so you can stack Lightricks LoRAs on the API model.
  • positivePrompt, width / height (128–2048, snapped to 64), duration (1–20s, float) - required.
  • steps - 15, notably lighter than LTX-2's 40. CFGScale 4, fps 25.
  • settings.enhancePrompt - on by default; disable for exact control.
  • negativePrompt, seed, frameImages, numberResults (1–4) round it out.

The output

One video socket, type VIDEO, into Preview Video or Save Video. On older ComfyUI it degrades to a file path string - updating ComfyUI restores the native type.

Installing it

Same pack install as every Runware node:

cd ComfyUI/custom_nodes
git clone https://github.com/Runware/ComfyUI-Runware
pip install -r ComfyUI-Runware/requirements.txt

Restart, set your key via ComfyUI Settings → Runware API key, RUNWARE_API_KEY, or runware auth login. Only the SDK, pillow, and soundfile install.

Where people get burned

The audio input is a URL or UUID, not a local file - upload first. And 2.3's portrait mode is a real strength (native 1080×1920 training, the first open-weights model to do it), so if your output is for Shorts or Reels, set the dimensions to portrait and stop fighting widescreen. Two minor habits: keep enhancePrompt off when your prompt is load-bearing, and remember that while 2.3 is far better than 2, it's still LTX - detail junkies may still find Wan's strict adherence wins on complex scenes. There's a Fast variant of 2.3 in this pack too, if speed beats step control.

CategoryRunware/Video/lightricks

Inputs (21)

NameTypeDefaultDescription
positivePromptSTRINGText prompt describing elements to include in the generated output.
widthINT1024128–2048Width of the generated media in pixels.
heightINT1024128–2048Height of the generated media in pixels.
durationFLOAT1.001–20Length of the generated video in seconds. The total number of frames produced is determined by duration multiplied by the model's frame rate (fps).
frameImagesoptIMAGE
loraoptRUNWARE_LORA
audiooptSTRINGAudio input (UUID or URL). Enables audio-to-video conditioning. The audio is merged with the generated video and trimmed to fit the video duration. Maximum duration 30 seconds.
negativePromptoptSTRINGPrompt to guide what to exclude from generation. Ignored when guidance is disabled (CFGScale ≤ 1).
seedoptINT00–9223372036854776000Random seed for reproducible generation. When not provided, a random seed is generated in the unsigned 32-bit range.
stepsoptINT151–100Total number of denoising steps. Higher values generally produce more detailed results but take longer.
CFGScaleoptFLOAT4.001–20Guidance scale representing how closely the output will resemble the prompt. Higher values produce results more aligned with the prompt.
fpsoptINT251–120Frames per second for video generation. Higher values create smoother motion but require more processing time.
numberResultsoptINT11–4Number of results to generate. Each result uses a different seed, producing variations of the same parameters.
settings.enhancePromptoptBOOLEANtrueEnable automatic prompt enhancement for cinematic results.
safetyoptBOOLEANfalseEnable to set safety. Off uses the model's default.
safety.checkContentoptBOOLEANfalseEnable or disable content safety checking.
safety.modeoptCOMBOfastSafety checking mode for video generation.
ttloptBOOLEANfalseEnable to set ttl. Off uses the model's default.
ttl_valueoptINT60Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`.
outputFormatoptCOMBOMP4File format for the generated video.
outputQualityoptINT9520–99Compression quality of the output. Higher values preserve quality but increase file size.

Outputs (1)

NameTypeDescription
videoVIDEO