Nodes/PopNow/LTX-2 19B · Image to Video
ComfyUI Node

LTX-2 19B · Image to Video

A 20-second clip with sound, from one still

By popnow-ai·Created 24 days ago·Updated about 20 hours ago· 0
LTX-2 19B · Image to Video
  • image_url
  • video
  • task id
◄prompt►
◄resolution720p►
◄duration_seconds5►
◄seed0►

Animate a still, get audio with it

LTX-2 is the 19B version of Lightricks' video family, and its trick is that audio comes out of the same model as the picture rather than an added pass. You give this node one image and a prompt, and you get back a clip - up to twenty seconds - with voices, music or ambient baked in. That's the reason to pick it over the silent alternatives: a talking head or a music-video beat that lands on the frame you wanted, without running a separate lipsync graph.

Lightricks is the odd member of the open-video club: a Jerusalem consumer-app company whose Facetune revenue funds weights it gives away, tuned for speed because the same models run inside its own products. On the local side LTX is the "draft fast, refine elsewhere" tier - environments and camera moves hold up beautifully, faces and complex body motion are where it struggles. Here you're paying per second for someone else's H100, so the useful mental model is the same: scenery, camera work, and audio-driven shots are its lane. If the shot hinges on a human face turning convincingly, temper expectations.

There's also one honest caveat specific to this task: LTX-2 launch-era image-to-video drifts from the source frame. Your opening image is frame one, not a contract for the rest of the clip.

The mechanism

The node uploads your IMAGE (PNG, or JPEG if the PNG would exceed 10 MiB), quotes the job, submits it, and polls until the file lands. Because the clip inherits the opening frame's aspect ratio, there's no aspect_ratio widget on this node - unlike its text-to-video sibling. The returned VIDEO is a normal ComfyUI video value: wire it to Save Video, or to anything downstream that eats video.

Prompting is not the casual kind. LTX rewards long, specific prose - what happens, how the camera moves, what it sounds like. The tooltip here says exactly that, and it's the field people under-write most.

Inputs worth setting

  • image_url - the opening frame. Everything the clip keeps, it keeps from here.
  • prompt - action, camera, and sound in sentences. "She turns toward the window, camera pushes in slowly, rain on glass and a low string note" beats "woman turns".
  • duration_seconds - whole seconds, 5 to 20, and it's the field that moves the bill most.
  • resolution - 480p, 720p or 1080p. The rate scales hard: roughly $0.014, $0.019 and $0.029 per second respectively, so a 20s 1080p run is real money.
  • seed - fixed by default. Re-queueing an identical graph reuses the result instead of charging twice; flip control-after-generate to randomize for a new take.

Outputs are video and task id. The task id is your handle for PopNow's API console logs and for support, and it's worth grabbing before you close the console tab.

Install

cd ComfyUI/custom_nodes
git clone https://github.com/popnow-ai/popnow-comfyui

Or Manager > search PopNow > Install, or comfy node install popnow-comfyui. No model downloads - the whole point is that the 19B lives elsewhere. The pack declares no dependencies beyond ComfyUI itself, which is unusual and pleasant in a video-node pack.

Then a key in Settings > PopNow from popnow.ai/api/console/keys, or POPNOW_API_KEY in the environment, then restart so the catalog loads. Look under PopNow > Video > Lightricks; there's a ready-made image-to-video template in the template browser if you'd rather start from a working graph.

Practical gotchas

Duration and resolution compound, and the node's badge shows a rate (~19 cr/s), never a total. A 20-second 1080p clip is about 58 cents; the same prompt at 480p for 5 seconds is 7 cents. Do your exploratory passes small. Every run is quoted first and holds at most the quoted amount, and Settings > PopNow > Max credits per run will stop a run outright if the quote clears your ceiling.

The clip inherits the source aspect ratio, so a 9:16 phone screenshot gives you a 9:16 clip - which is fine, just decide it before you compose 20 seconds of it. And if your still drifts too far from where you wanted it, the honest fix is a shorter clip and a second one seeded from the last frame, not a longer prompt.

Refusals and failures come back as content_rejected or generation_failed and are refunded. Cancelling a run in ComfyUI stops your wait, not the job - it keeps running server-side and you're charged if it succeeds, so cancel with intent.

CategoryPopNow/Video/Lightricks

Inputs (5)

NameTypeDefaultDescription
promptSTRINGDescribe what happens after the opening frame: the action, the camera and the sound.
image_urlIMAGEOpening frame. The clip starts from this image and keeps its aspect ratio.
resolutionCOMBO720pOutput resolution.
duration_secondsINT55–20Requested output length in whole seconds, from 5 to 20.
seedINT00–2147483647Same seed and settings, same result. Set 'control after generate' to randomize to get a new result on every run; every run is billed.

Outputs (2)

NameTypeDescription
videoVIDEO—
task idSTRINGThe PopNow task id, for the API console logs or support.