Wan 2.6 · Image to Video
Multi-shot clips with sound, no weights required
- image_url
- audio_url
- video
- task id
If you've run Wan 2.2 locally, you know the shape of the deal: a 14B DiT (or the two-expert A14B MoE), a 3D causal VAE, five seconds of 480p, and a coffee break. Wan 2.6 is a different animal entirely - up to 1080p, multi-shot sequences, duration in steps of five seconds - and you cannot run it. Alibaba never released 2.3 or later, so 2.6 exists only as an API. This node is the API.
It's the full-fat 2.6 image-to-video task: one opening frame, a prompt, and a clip that can cut between shots. From 13.5 credits ($0.135) per second, so it's roughly four times the Flash tier per second - you're paying for the better render, not the convenience.
What it does underneath
The pack builds this node from Wan 2.6's published input schema, so the widgets are exactly what the endpoint takes. On queue, your image_url is encoded (PNG, falling back to a 10 MiB-cap JPEG) and uploaded, the run is quoted before credits are held, the task is created under an idempotency key, and the node polls it while printing the state and the estimate on the node itself. When it lands, the MP4 is downloaded and handed back as a ComfyUI VIDEO.
Worth noticing what's missing compared to the Flash version: there's no audio on/off switch here. The model's summary says "with sound", and the only audio control the node exposes is the optional audio_url socket - an AUDIO track that drives lip sync or pacing. So the audio behaviour is baked in; you don't get to opt out of it at the node level the way you can on Flash.
The inputs that matter
image_url is the opening frame and the clip starts there. prompt describes what happens next - action, camera, mood. negative_prompt is there and it's worth using, since so much of video generation is "please stop doing that".
Then the shot controls, which are the reason to pick this node over the cheaper ones:
shot_type-singlefor one continuous take,multifor a multi-shot edit inside the clip.duration_seconds- 5, 10 or 15.resolution- 720p or 1080p.
enable_prompt_expansion and seed finish it off. The seed defaults to fixed behaviour: same seed and settings, same result, and no silent re-charge when you queue twice. Flip control-after-generate to randomize when you want a fresh take, and remember every one of those is billed.
Outputs: video and task id.
Installing it
cd ComfyUI/custom_nodes
git clone https://github.com/popnow-ai/popnow-comfyui
or search PopNow in ComfyUI Manager and hit Install. Restart, create a key at popnow.ai/api/console/keys, paste it into Settings > PopNow (or set POPNOW_API_KEY if it's a server), restart again. There is nothing else to install: no model downloads, no CUDA version roulette, no Python dependencies beyond what ComfyUI already has.
That's the actual selling point and it's worth being honest about the trade: your prompts and your frames leave the machine. That's the mechanism, not a bug - and it's the same bargain as ComfyUI's own partner nodes, minus the Comfy account.
Where people get burned
Cost is the one that bites. 13.5 credits a second at 15 seconds is a real number, so set Settings > PopNow > Max credits per run to something you'd shrug at before you start auditioning prompts. The node refuses anything quoted above that ceiling before holding credits, which is a much nicer failure than a bill.
PopNow 40201 = out of credits. PopNow 40004 = the model can't serve that combination; the message names the setting to change. PopNow 400 on a named field = a value it won't take, and the node's description links the model page with the real ranges.
And the classic: interrupting your run does not cancel the task. It keeps generating on PopNow and it's charged if it succeeds, with the result sitting in your API console logs. If you want to stop spending, stop queueing, not starting.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| image_url | IMAGE | Opening frame. The clip starts from this image. | |
| prompt | STRING | Describe what happens after the opening frame: the action, the camera, and the mood. | |
| negative_prompt | STRING | List what must not appear in the shot. | |
| resolution | COMBO | 720p | Output resolution. |
| duration_seconds | COMBO | 5 | Requested output length in seconds. |
| shot_type | COMBO | single | Single continuous shot, or a multi-shot edit. |
| enable_prompt_expansion | BOOLEAN | false | Allow the service to expand the submitted creative brief before generation. |
| seed | INT | 00–2147483647 | Same seed and settings, same result. Set 'control after generate' to randomize to get a new result on every run; every run is billed. |
| audio_urlopt | AUDIO | Audio track that drives lip sync or pacing. |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| video | VIDEO | — |
| task id | STRING | The PopNow task id, for the API console logs or support. |