Nodes/ComfyUI Razv WaveSpeed Nodes/WaveSpeedAI Google VEO 3.1 Fast Text-to-Video
ComfyUI Node

WaveSpeedAI Google VEO 3.1 Fast Text-to-Video

Google video, quickly, no GPU

By razvanmatei-sf·Created 12 months ago·Updated 9 months ago· 0
WaveSpeedAI Google VEO 3.1 Fast Text-to-Video
  • client
  • video_url
prompt
aspect_ratio16:9
duration8
resolution1080p
generate_audiofalse
negative_prompt
seed-1
enable_sync_modefalse

Google's Veo 3 is the video model that made OpenAI's Sora look like it was standing still, and 3.1 is the refinement. The "Fast" tier is exactly what it sounds like - the same family of models tuned to come back quicker, at a friendlier price, when you're iterating rather than finalizing. This node from razvanmatei-sf/razv-wavespeed puts that fast tier on your graph as a call to the WaveSpeed AI API: prompt in, hosted video URL out, zero local inference.

You cannot run Veo 3.1 on your machine. There are no weights, full stop. So the honest framing is: this node is a nicer interface to something you'd otherwise be scripting against an API directly. It's also the cheapest way into Veo 3.1 footage without learning a second SDK.

How it works

The now-familiar pack flow: WaveSpeedAI Clientprompt → POST to the Veo 3.1 fast text-to-video endpoint → poll until done → return the video as a video_url string. Note the output is a URL, not a video file on disk - download it yourself or feed it to a URL-fetch node.

Three settings define the clip:

  • aspect_ratio - 16:9 or 9:16. Landscape or portrait, that's the menu.
  • duration - 4, 6, or 8 seconds.
  • resolution - 720p or 1080p. Fast tier's value is that 720p exists at all; it's the iteration speed option.
  • generate_audio - a boolean, and a genuinely nice feature: native audio synchronized to the video. Off by default; if your clip doesn't have sound, check this is on before assuming the model failed.

Also there: negative_prompt, seed (-1 = random), and enable_sync_mode (defaults off - async is the right default for video, since these take a while).

The inputs that matter

  • prompt - video descriptions want motion and camera language, not just subject: "slow dolly-in on a lighthouse at dusk, waves crashing" beats "lighthouse."
  • duration + resolution - the cost/speed dials. Shorter and lower = faster and cheaper; save 8s/1080p for the keeper.
  • generate_audio - flip it on if you need sound in the loop.

Install

Shared pack:

cd ComfyUI/custom_nodes
git clone https://github.com/razvanmatei-sf/razv-wavespeed
# restart ComfyUI

Or ComfyUI Manager → search "razv-wavespeed" → Install. Add a WaveSpeed AI key via the WaveSpeedAI Client node, config.ini (copy from config.ini.tmp, [API]), or a WAVESPEED_API_KEY env var.

Common issues

  • It's paid and it's video - the most expensive category in this pack. A fast-tier 8s 1080p clip with audio still costs real money. Iterate at 720p.
  • The output is a URL. Don't expect a file; grab the URL before it expires or pipe it to a downloader.
  • Veo is censored and guardrailed - that's the model, not the node. NSFW prompts get blocked at the API.
  • Name confusion with the WaveSpeed acceleration pack applies here too - different project, same word.
CategoryWaveSpeedAI/Google VEO 3.1

Inputs (9)

NameTypeDefaultDescription
clientWAVESPEED_AI_API_CLIENT
promptSTRINGText description of the desired video scene
aspect_ratioCOMBO16:9Video aspect ratio - 16:9 (landscape) or 9:16 (portrait)
durationCOMBO8Video duration in seconds
resolutionCOMBO1080pVideo output resolution
generate_audioBOOLEANfalseGenerate native audio synchronized with the video
negative_promptoptSTRINGSpecify what to avoid in the generated video
seedoptINT-1-1–2147483647Random seed for reproducible results. -1 for random seed
enable_sync_modeoptBOOLEANfalseWait for generation to complete before returning

Outputs (1)

NameTypeDescription
video_urlSTRING