Bytedance Seedance 2.5 Video Edit
Rewrite a clip by prompt, chained off any video node
- reference_images_tensor
- client
- video_url
Video-to-video editing by prompt is the workflow that made Bernini and VACE local legends - take an existing clip, describe the change, get a rewritten clip back. Seedance 2.5 Video Edit is the hosted version of that idea, and it's the pack's cleanest building block: it takes the source clip as a URL, so it chains directly off the video_url output of any video node in this pack. Generate a T2V clip, wire its output straight into this node, describe the change, and you've got an edit without ever touching a frame encoder.
The service prepends "Edit the input video." to your prompt - that's how it frames the job. Your prompt is the "what changes": "make it dusk and add rain", "change the character's jacket to red", "turn this into a slow-motion close-up." Output duration and aspect ratio follow the input clip, so you're not re-deciding the canvas on every edit.
How it works
The video_url input is the heart of it. Clips over 30 seconds get trimmed; clips under 4 seconds get padded - the model has a working window and normalizes you into it. From there the node sends your prompt, the video, optional references, resolution, and audio flag to WaveSpeed, then polls every 10 seconds with a 30-minute timeout before returning a URL.
The model dropdown offers Seedance 2.5 and Seedance 2.5 Turbo. Reference support mirrors the T2V node: reference_images (up to 4, or an IMAGE batch via reference_images_tensor) for style/identity/appearance, and reference_audios (up to 4) for soundtrack or voice guidance.
Inputs that matter
prompt- required, what to change.video_url- the source clip. This is where the chaining magic lives: drag thevideo_urloutput from a T2V, I2V, or Extend node in here.model- standard or Turbo.resolution- 480p / 720p / 1080p / 4k. Read the billing note: it counts input plus output duration, roughly $0.11/s at 480p up to $1.10/s at 4k. Editing a clip costs you the clip you feed it and the clip it makes.generate_audio- default on; synchronized audio for the edited video.seed- cache control only. Fixed seed reuses the already-paid edit;-1reruns.
Output is video_url (STRING) → Preview Anything for preview/download. And because it's a URL output, the edited clip can feed straight into another node - including Extend.
Installing and configuring
Part of the ERPK Collection pack. ComfyUI Manager: search erpk, install ERPK Custom Nodes, restart. Manual:
cd ComfyUI/custom_nodes
git clone https://github.com/eRepublik-Labs/comfyui-nodes-erpk.git erpk
cd erpk && pip install -r requirements.txt
WaveSpeed API key from wavespeed.ai into Settings > ERPK > API Keys (right-click canvas > ERPK Settings). Server-side generation, nothing to download, no GPU required.
Common issues
- "A source video URL is required" - you queued without wiring
video_url. Every video node in the pack emits one; connect it. - The edit is way shorter/longer than my clip - clips are trimmed to 30s and padded past 4s before the model sees them. Long source material gets windowed; that's by design.
- The bill is steeper than a generation - edit billing counts input plus output duration. Editing a 20s clip at 1080p costs more than generating a 20s clip; budget accordingly.
- Nothing previews -
video_urlis a link, not a tensor. Preview Image won't show it; use Preview Anything.
Inputs (10)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | What to change in the video. The service prepends 'Edit the input video.' to this prompt. | |
| model | COMBO | Seedance 2.5 | Model tier: standard or Turbo (faster) |
| video_urlopt | STRING | Source video URL. Connect the video_url output of any video node in this package. Clips over 30s are trimmed; clips under 4s are padded. | |
| reference_imagesopt | STRING | Reference image URL(s) guiding style, identity, or appearance. Single URL or list. Up to 4 images. Ignored when `reference_images_tensor` is connected. | |
| reference_audiosopt | STRING | Reference audio URL(s) guiding the soundtrack or voice. Single URL or list. Up to 4 audios. | |
| reference_images_tensoropt | IMAGE | Reference images as a ComfyUI IMAGE batch (B,H,W,C). Each batch slice becomes one reference, capped at 4. Takes precedence over `reference_images` URLs when connected. | |
| clientopt | WAVESPEED_AI_API_CLIENT | WaveSpeed API client (optional if API key is configured in Settings) | |
| resolutionopt | COMBO | 720p | Video resolution. Billing counts input plus output duration, roughly $0.11/s at 480p to $1.10/s at 4k. |
| generate_audioopt | BOOLEAN | true | Generate audio synchronized with the edited video |
| seedopt | INT | -1-1–2147483647 | Cache control only. Seedance 2.5 takes no API seed, so this is never sent. A fixed seed reuses the video you already paid for; -1 generates again on every queue. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| video_url | STRING | — |