Veo31 RefImg Video Node (Soze)
Google's Veo 3.1 from a reference image, via FAL
- images
- VIDEO
This isn't a local model - it's a wrapper around Google's Veo 3.1 through FAL's hosted API, doing reference-image-to-video: you supply one or more reference images plus a prompt, and Veo generates a clip grounded in them rather than starting from nothing but text. It's the one node in this pack that costs real money every time you run it, so treat it accordingly.
Why Veo 3.1 specifically
Veo 3.1 is Google's flagship closed-source video model, and its standout feature - the one thing no open-source model matches yet - is native audio generated alongside the video itself: sound effects and dialogue synced to what's happening on screen, not bolted on afterward. That's a genuine capability gap right now; open video models have closed most of the distance to closed ones on visual quality, but audio-native generation is still Veo's alone.
How it works
You give it reference images to anchor subject, character, or style continuity, a text prompt describing the motion and scene, and Veo handles the generation server-side through FAL. Nothing runs on your GPU - the node sends the request and returns the finished video.
The inputs and output that matter
- images - your reference image(s), anchoring the generated video's subject and style.
- prompt - a multiline description of the scene and motion you want.
- resolution -
720por1080p. Higher costs more, since this is billed API usage on FAL's side. - duration - 4 to 8 seconds. The 8-second ceiling isn't arbitrary; it matches Veo 3.1's own native output limit, so don't expect longer clips regardless of what you type in.
- generate_audio (optional, on by default) - toggles Veo's signature native audio. Turn it off if you specifically want silent output.
- auto_fix (optional, on by default) - an automatic correction pass on FAL's or Veo's side to reduce failed generations. The schema doesn't detail exactly what it adjusts; leave it on unless you have a specific reason to want the raw, unmodified behavior.
Output is a single VIDEO.
Installing it
Install the pack as usual - ComfyUI Manager (search ComfyUI_Soze) or cd ComfyUI/custom_nodes && git clone https://github.com/SozeInc/ComfyUI_Soze.git && pip install -r ComfyUI_Soze/requirements.txt, then restart. But this node specifically also needs an API credential: set FAL_KEY as an environment variable, or add [API] FAL_KEY to a config.ini in the repo root. Both .env and config.ini are gitignored by the pack on purpose - never commit real keys into either, and if you suspect one has leaked, rotate it immediately.
Common issues
A missing or invalid FAL_KEY is the first thing to check if this node fails outright - without it, there's no call to make. Beyond that, this is a hosted API call: rate limits or a busy queue on FAL's end are service issues, not something auto_fix or any local setting can work around - if a run fails, check FAL's own status before assuming your workflow is wrong. And don't plan around clips longer than 8 seconds; that ceiling comes from Veo 3.1 itself, not this node.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| images | IMAGE | — | |
| prompt | STRING | — | |
| resolution | COMBO | 720p | 2 options: 720p, 1080p |
| duration | INT | 84–8 | — |
| generate_audioopt | BOOLEAN | true | — |
| auto_fixopt | BOOLEAN | true | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| VIDEO | VIDEO | — |