Nodes/PopNow/Vidu Q4 Preview · Video Extend
ComfyUI Node

Vidu Q4 Preview · Video Extend

Extending a 4K talking clip without wrecking the voice

By popnow-ai·Created 24 days ago·Updated about 20 hours ago· 0
Vidu Q4 Preview · Video Extend
  • video_url
  • video
  • task id
◄prompt►
◄resolution720p►
◄duration_seconds5►
◄generate_audiotrue►
◄enable_prompt_expansionfalse►
◄seed0►

The Q4 line is the one that generates speech, and speech is the thing that makes extending a clip harder than it sounds. A silent clip can be continued anywhere - new action, new camera, nobody notices. A talking clip has a voice, a sentence and a soundtrack already in flight, and the continuation has to hand all three off cleanly. That's what this node is for, and it's the reason the Q4 extend is a different tool from the cheaper Turbo one.

What it does

You give it a clip and a prompt for what happens next. Per the author's description: the source clip's last frame opens the new segment, and the result is your clip with the new segment joined on - you get the whole thing back, not just the addition. Sources up to 60 seconds, MP4/MOV/WebM.

Only the new segment is billed. The source is added on top and isn't charged, so extending beats re-generating a longer shot, and beats it by a lot at 2k and 4k rates.

video_url is a socket - an actual VIDEO input. That means you can wire PopNow_vidu_q4_preview_image_to_video straight into it and build a two-part shot in a single queue. The pack re-encodes incoming video to MP4 for upload, so frames coming from your own local nodes work as sources too.

Where the money is

Resolution is the whole cost story on this node. The dropdown is 540p, 720p, 1080p, 2k, 4k, and the steps are steep: roughly double from 540p to 720p, a modest rise to 1080p, then 2k at well over the 1080p rate and 4k at roughly double 2k again. A 16-second 4k extension is therefore a real line item, and it's a silly first experiment.

There's one genuinely useful rule buried in the tooltip: the resolution sets how sharp the new part is, and you should match your source clip. Extending a 1080p shot at 540p gives you a clip that visibly sharpens halfway through. It's the most common thing people get wrong with any extend node.

The inputs

prompt - what happens next: action, camera move, sound, and spoken lines in double quotes. The tooltip mentions the quotes explicitly, and with a dialogue model that's the difference between speech and mumbling.

duration_seconds - 3 to 16, the length of the new segment. Note the 3-second floor is higher than the Turbo extend's 1.

generate_audio - sound for the new segment. The source keeps its own sound regardless, which is the load-bearing sentence here: you are not re-scoring the original, you're adding a second audio chunk. If the model's first segment had music and the second doesn't, the seam is audible.

enable_prompt_expansion - lets the model rewrite your prompt before generating. Off by default. Leave it off for scripted dialogue, where "expand the prompt" is another way of saying "paraphrase my line".

seed - fixed by default; re-queueing gives you the cached first result instead of a second charge.

Outputs: video (the joined result) and task id.

Install

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

or search PopNow in Manager and restart. No weights, no pip - the pack is an API client that only uses what ComfyUI already ships. Grab a key at popnow.ai/api/console/keys, put it in Settings > PopNow or POPNOW_API_KEY, and restart once more so the node list is built from your account's catalog. If you have an old standalone popnow_api.py in custom_nodes, delete it to avoid a duplicate node type.

Where it goes wrong

The audio seam. The source's sound is preserved and the new segment gets its own. Two generated ambiences rarely match, so dialogue-driven extensions usually need a crossfade in an editor afterwards, or generate_audio off plus your own audio bed across both halves.

Voice continuity. The model hears the last frame and your prompt, not a speaker identity. Extending a talking shot three times tends to drift in timbre. If the shot is about a specific voice, keep the number of extensions to one and cut around it.

Resolution mismatch, covered above, is the visible failure. Match source and segment.

Sources over 60 seconds are rejected - trim before you extend.

PopNow 40201 means the wallet's empty - at 4k per-second rates that can happen on the first take. PopNow 40004 means the model won't serve that combination; check the field the message names. Cap exposure up front with Settings > PopNow > Max credits per run.

Cancelling is not stopping. Interrupting the node stops ComfyUI waiting; the extension keeps rendering on PopNow, is charged if it succeeds, and the file sits in the API console instead of ComfyUI/output.

CategoryPopNow/Video/Vidu

Inputs (7)

NameTypeDefaultDescription
promptSTRINGDescribe what happens next: the action that follows, the camera move and the sound. Put spoken lines in double quotes.
video_urlVIDEOThe clip to continue: MP4, MOV or WebM, up to 60 seconds. Its last frame opens the new segment, and the result is your clip with the new segment joined on.
resolutionCOMBO720pResolution of the generated new segment. It sets how sharp the new part is; match your source clip. 2k and 4k segments come back as 10-bit HEVC.
duration_secondsINT53–16Length of the new segment in seconds, from 3 to 16. The source clip is added on top and is not billed.
generate_audioBOOLEANtrueGenerate sound for the new segment. The source keeps its own sound either way.
enable_prompt_expansionBOOLEANfalseLet the model rewrite and expand your prompt before generating.
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.