Nodes/ComfyUI Razv WaveSpeed Nodes/WaveSpeedAI WAN 2.5 Image-to-Video Fast
ComfyUI Node

WaveSpeedAI WAN 2.5 Image-to-Video Fast

WAN 2.5 is API-only — this node is your fastest ComfyUI on-ramp

By razvanmatei-sf·Created 12 months ago·Updated 9 months ago· 0
WaveSpeedAI WAN 2.5 Image-to-Video Fast
  • client
  • video_url
image
prompt
resolution720p
negative_prompt
audio
duration5
enable_prompt_expansionfalse
seed-1
enable_sync_modefalse

Here's the thing nobody tells you about WAN 2.5: there are no weights. The 2.1 and 2.2 checkpoints you can actually download are where open Wan stopped; 2.5 shipped cloud-only and never became local. So if you want WAN 2.5's output, your options are the API or nothing - and this node is the API wearing a ComfyUI badge. It's the "Fast" variant of the pack's WAN 2.5 image-to-video node, and it's about as close as you'll get to plug-and-play video generation without renting a datacenter.

What it is

An image-to-video node that animates a still image into a short clip using WAN 2.5 hosted on WaveSpeed AI. "Fast" here means the faster variant of the model on their side, not anything happening on your GPU. It's the better default of the two WAN 2.5 i2v nodes because the required input set is smaller - you must supply image, prompt, and resolution, and everything else has a sane default.

How it works

Same pack-wide pattern: the client comes from the WaveSpeedAI Client node (your API key), the image is a public URL, and the node POSTs to the WAN 2.5 image-to-video endpoint, then returns a video_url string. Whether it blocks until done or hands back a task ID depends on enable_sync_mode (default off, meaning it polls up to 30 minutes). Nothing runs locally beyond the request itself.

The inputs that matter

The required trio - image, prompt, resolution (720p or 1080p) - gets you a working render immediately. Then the optional set is where this node gets interesting:

  • negative_prompt - tell it what not to do. WAN responds well to negatives like "blurry, distorted hands."
  • audio - a URL to an audio clip (3–30s, wav/mp3, ≤15MB) that guides the video. If you have a voice-over or soundtrack you want the motion to sync to, this is the WAN 2.5 feature that makes the API version worth paying for.
  • duration - 5 or 10 seconds.
  • enable_prompt_expansion - let the API rewrite and enrich your prompt. Nice for lazy prompting, mildly unpredictable for exact control.
  • seed - -1 for random, or fix it to reproduce a result.

Output is video_url (STRING) - a URL, not a file, so plan a download step.

Install & setup

Standard pack install, once:

cd ComfyUI/custom_nodes
git clone https://github.com/razvanmatei-sf/razv-wavespeed.git
cd razv-wavespeed
pip install -r requirements.txt

or via ComfyUI Manager (search "razv-wavespeed"), then restart. You'll need a WaveSpeed AI API key in config.ini, the Client node, or WAVESPEED_API_KEY. No models to download; deps are just requests, pillow, numpy<2.0.0, torch.

Common issues

  • 401 Unauthorized - the key. Check it, top up credit.
  • Video never finishes / "No output received" - the 30-minute task ceiling or an unreachable image URL. Upload images to a host that returns a public URL first.
  • "Fast" expectations - it's faster than the non-Fast WAN 2.5 node on WaveSpeed's side, but you're still waiting on a remote job plus polling. This is not local-inference speed, and it isn't the "WaveSpeed" fast-inference plugin you've seen praised on Reddit - that's a different project.

One honest caveat: you can run WAN 2.2 locally for free, and for most hobby work that's the value play. Reach for this node when you specifically want 2.5 or you'd rather pay a few cents than babysit a 14B model.

CategoryWaveSpeedAI

Inputs (10)

NameTypeDefaultDescription
clientWAVESPEED_AI_API_CLIENT
imageSTRINGImage URL to animate (connect from Upload Image node)
promptSTRINGText description for video animation
resolutionCOMBO720pVideo output resolution
negative_promptoptSTRINGDescribe what you don't want in the video
audiooptSTRINGAudio URL to guide video generation (3-30 seconds, wav/mp3, ≤15MB)
durationoptCOMBO5Video duration in seconds
enable_prompt_expansionoptBOOLEANfalseAutomatically expand and enhance the prompt
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