Nodes/comfyui-seedance-nodes/Seedance – Video Generator
ComfyUI Node

Seedance – Video Generator

One Seedance Node, Four Ways to Start a Video

By theclueless-ai·Created 5 months ago·Updated 5 months ago· 0
Seedance – Video Generator
  • first_frame
  • last_frame
  • reference_image_1
  • reference_image_2
  • reference_image_3
  • reference_image_4
  • reference_video
  • reference_audio
  • video
  • last_frame
  • frames
  • video_url
  • video_path
  • last_frame_url
api_key
promptA girl holding a fox, the camera slowly pulls out.
modeldreamina-seedance-2-0-260128
ratio16:9
duration5
resolutiondefault
generate_audiofalse
watermarkfalse
return_last_frametrue
poll_interval10
max_wait600
first_frame_url
last_frame_url
ref_url_1
ref_url_2
ref_url_3
ref_url_4
reference_video_url
reference_audio_url

This is the whole pack in one node. The same repo ships four specialist Seedance nodes and one unified SeedanceVideoGenerator that auto-detects which mode you want from what you connect. Wire nothing into the image sockets and it's text-to-video. Connect a first_frame alone and it's first-frame image-to-video. Add a last_frame and it becomes interpolation. Connect a reference_image_1 instead and it switches to reference mode. One node, four personalities, zero mode-switching dials to get wrong.

Underneath it's the same story as its siblings: an API wrapper around ByteDance's closed Seedance video models on the BytePlus ARK endpoint. No local weights exist for these models - they're API products, full stop - so the node packages your inputs, submits a task, polls until it's done, downloads the mp4, and hands you a native ComfyUI VIDEO plus the extracted last frame.

When to reach for it vs. the specialists

The unified node shines in a template workflow you plan to reuse: one node whose mode changes based on what you connect, no node-swapping when you want a different starting point. It also exposes both models - dreamina-seedance-2-0-260128 (Seedance 2.0) and seedance-1-5-pro-251215 - where the specialist nodes hard-code the 2.0 model.

The trade-off is clarity. If you're still learning, the specialist nodes are nicer to read on a canvas: "Image to Video (First Frame)" tells you what it does. The unified node hides that in the connections, which is also where people trip. More on that below.

What you actually set

The required set is the pack standard: api_key, prompt, model, ratio, duration, resolution, generate_audio, watermark, return_last_frame, poll_interval, max_wait. The optional set is everything the specialists have, all on one node:

  • first_frame - connect alone for first-frame mode, with last_frame for interpolation.
  • last_frame - only meaningful alongside first_frame.
  • reference_image_1 through _4 - connect any of them and you've switched to reference mode (addressed as [Image 1-4] in the prompt).
  • reference_video / reference_audio - [Video 1] / [Audio 1] in the prompt; URL fallbacks included.

Outputs are the pack's six: video, last_frame, frames, video_url, video_path, last_frame_url. The last_frame → next node's first_frame chaining trick works here too.

Install

ComfyUI Manager, search comfyui-seedance-nodes. Or:

cd ComfyUI/custom_nodes
git clone https://github.com/theclueless-ai/comfyui-seedance-nodes
pip install -r ComfyUI/custom_nodes/comfyui-seedance-nodes/requirements.txt

requests, Pillow, numpy, opencv-python, and nothing to download model-wise. Set ARK_API_KEY (or the node's api_key field), restart, find it under Seedance / Video Generation.

Where people get burned

  • Mode is decided by connections, and that surprises people. Connect an image to reference_image_1 when you meant it as the opening frame, and you've silently switched from first-frame mode to reference mode. The node prints [Seedance] Mode detected: ... to the console - check it when a run doesn't behave.
  • Model/duration mismatch. Pick seedance-1-5-pro-251215 and ask for 15 seconds: the node clamps to its 12-second cap. Fine, but if you were counting on the full length, that's the explanation.
  • The usual API package. Empty key errors immediately; 1080p long jobs can outlive the 600s default max_wait (raise it); every run is metered and sends your inputs to ByteDance's servers with their moderation in charge of what comes back.
CategorySeedance/Video Generation

Inputs (27)

NameTypeDefaultDescription
api_keySTRINGBytePlus ARK API key. Leave empty to use ARK_API_KEY env variable.
promptSTRINGA girl holding a fox, the camera slowly pulls out.Text description of the video. Use [Image 1-4] for reference images, [Video 1] for reference video, [Audio 1] for reference audio.
modelCOMBOdreamina-seedance-2-0-260128dreamina-seedance-2-0-260128 → T2V / first-frame / first+last modes. seedance-1-0-lite-i2v-250428 → reference image mode.
ratioCOMBO16:96 options: 16:9, 9:16, 1:1, 4:3, 3:4, adaptive
durationINT54–15Video duration in seconds. Seedance 2.0 supports 4–15 s. seedance-1-5-pro-251215 is capped at 12 s.
resolutionCOMBOdefaultOutput resolution. 'default' lets the API decide.
generate_audioBOOLEANfalse
watermarkBOOLEANfalse
return_last_frameBOOLEANtrueAsk the API to return a watermark-free PNG of the last frame. Connect last_frame → first_frame of the next node to chain videos.
poll_intervalINT105–60Seconds between status-check requests.
max_waitINT60060–3600Maximum seconds to wait for the task.
first_frameoptIMAGEConnect to enable I2V mode. Alone → first-frame mode. With last_frame → interpolation mode.
last_frameoptIMAGEConnect with first_frame to enable first+last interpolation mode.
first_frame_urloptSTRINGHTTP URL override for first_frame.
last_frame_urloptSTRINGHTTP URL override for last_frame.
reference_image_1optIMAGEEnables reference mode ([Image 1] in prompt).
reference_image_2optIMAGESecond reference image ([Image 2] in prompt).
reference_image_3optIMAGEThird reference image ([Image 3] in prompt).
reference_image_4optIMAGEFourth reference image ([Image 4] in prompt).
ref_url_1optSTRINGHTTP URL override for reference image 1.
ref_url_2optSTRINGHTTP URL override for reference image 2.
ref_url_3optSTRINGHTTP URL override for reference image 3.
ref_url_4optSTRINGHTTP URL override for reference image 4.
reference_videooptVIDEOConnect any ComfyUI VIDEO node (Load Video, another Seedance output, etc.). Takes priority over reference_video_url. Reference as [Video 1] in the prompt.
reference_video_urloptSTRINGHTTP URL of a reference video. Used only when reference_video is not connected. Reference as [Video 1] in the prompt.
reference_audiooptAUDIOConnect any ComfyUI AUDIO node (Load Audio, etc.). Takes priority over reference_audio_url. Reference as [Audio 1] in the prompt.
reference_audio_urloptSTRINGHTTP URL of a reference audio track. Used only when reference_audio is not connected. Reference as [Audio 1] in the prompt.

Outputs (6)

NameTypeDescription
videoVIDEO
last_frameIMAGE
framesIMAGE
video_urlSTRING
video_pathSTRING
last_frame_urlSTRING