PixVerse V6 Video Extension
Wire a task_id in, get more seconds out
- video
- url
- all_urls_json
- task_id
- raw_json
- credits_consumed
- credits_left
What it is
Continuation, not generation. This node takes a clip you already made with PixVerse V6 and adds more seconds onto the end of it, guided by a prompt.
The interesting design detail is how it knows which clip. You don't upload the video - you pass the PixVerse taskId of a previous successful generation. Every KIE video node in this pack outputs task_id as a string, so this is a one-wire handoff: run the V6 text-to-video or image-to-video node, take its task_id, connect it to taskId here, and the service continues that exact job. No download, no re-upload, no guessing which file on disk was the right one.
That's a genuinely nice piece of plumbing, and it's the reason to know this node exists even if you rarely make long clips: you can chain three or four extends and build a 30-second sequence out of the duration limit that each individual generation imposes.
How it works
The node is generated from KIE's request schema for the extension endpoint. The taskId and your prompt are submitted as a task, the node polls it until completion or timeout_seconds (1200 by default), and the result comes back as a ComfyUI VIDEO. From the graph's point of view it's just another video generator that happens to have a string input.
Note that the node is typed with a taskId input rather than a VIDEO socket - that's KIE's API shape, not an oversight, and it's what makes the chain cheap: nothing gets re-uploaded between steps.
Inputs and outputs
Required:
- prompt (STRING) - what happens next. The default ("Continue the same camera motion and extend the scene naturally") is a good baseline; be specific about action and continuity.
- taskId (STRING) - the parent job's ID. Ships pre-filled with the placeholder text
parent_task_id_from_previous_success_video, which is a reminder, not a valid value. Wire thetask_idoutput from your V6 generation node here.
Optional:
- duration (INT, 1–600, default 5) - how many seconds to add.
- quality (STRING, default
720p) - note this is free text, not a dropdown. The documented values are720pand1080p; a typo here is your problem, not the node's. - generate_audio_switch - off by default.
- seed (INT, default
123456, minimum-1) - same seed and parameters for a closer repeat. - expert_override_json - an escape hatch for fields KIE adds before the pack's schema catches up. Leave it as
{}. - timeout_seconds, callback_url.
Outputs: video, url, all_urls_json, task_id, raw_json, credits_consumed, credits_left. The new task_id is itself extendable, which is how you build a chain.
Install
Manager: search KIE-Nodes-Next (felipederosilva) and install, then restart. Manual:
cd ComfyUI/custom_nodes
git clone https://github.com/felipederosilva/ComfyUI-KIE-Nodes-Next
Then set your KIE.ai key once in Settings → KIE.ai Nodes Next → Connection. It's validated on save and shown as a masked fingerprint with a ✅ CONNECTED status and your balance. KIE_API_KEY in the environment also works and takes priority. Requirements are requests, Pillow, numpy, PyYAML.
Where people get burned
The taskId has to come from a previous success. It must be a valid ID from a completed PixVerse generation - not from Comfy's cache, not a filename, not a KIE task from a different model family. The default placeholder text will fail.
Quality is a text field. 720p or 1080p; anything else is on you. This is the one place in this family where a dropdown would have been kinder.
Each extension is another paid generation. Chaining four extends is not one clip's worth of credits. Wire credits_consumed somewhere visible if you're building long sequences.
Continuity drifts over a chain. Every extend re-interprets the prompt, so a three-step chain tends to wander further from the original scene than you'd like. Keep prompts boring and consistent and save the flourishes for a fresh generation.
A 20-minute ceiling per step. timeout_seconds defaults to 1200; long extensions in a busy queue may need it raised.
The parent job has to still exist. Task IDs are on KIE's side; a job that's been cleaned up upstream isn't extendable, however good your workflow is.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | Continue the same camera motion and extend the scene naturally | — |
| taskIdopt | STRING | parent_task_id_from_previous_success_video | — |
| durationopt | INT | 51–600 | — |
| qualityopt | STRING | 720p | — |
| generate_audio_switchopt | BOOLEAN | false | — |
| seedopt | INT | 123456-1–2147483647 | — |
| timeout_secondsopt | INT | 120030–7200 | — |
| callback_urlopt | STRING | Optional KIE callback URL. Leave empty for normal ComfyUI use. | |
| expert_override_jsonopt | STRING | {} | Expert-only payload overrides for APIs whose documentation has no request schema yet. |
Outputs (7)
| Name | Type | Description |
|---|---|---|
| video | VIDEO | — |
| url | STRING | — |
| all_urls_json | STRING | — |
| task_id | STRING | — |
| raw_json | STRING | — |
| credits_consumed | FLOAT | — |
| credits_left | FLOAT | — |