Nodes/comfyui-seedance-nodes/Seedance – Text to Video
ComfyUI Node

Seedance – Text to Video

Seedance Video From a Bare Prompt — No Image Required

By theclueless-ai·Created 5 months ago·Updated 5 months ago· 0
Seedance – Text to Video
  • 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
reference_video_url
reference_audio_url

Sometimes you don't have a still to start from - you just have an idea. That's this node: pure text-to-video on ByteDance's closed Seedance 2.0 model, no image input required. Type "A girl holding a fox, the camera slowly pulls out." (the default prompt, which is a decent demo of both the capability and the vibe) and the model invents the whole shot from scratch.

Before the how, the what-it-isn't: this is an API wrapper, not a local generator. There are no Seedance weights to download - ByteDance keeps the entire Seedance line on the BytePlus ARK API and sells it by the call. The node handles the networking: it POSTs your prompt, polls the task endpoint until the video is done, downloads the mp4, and drops it into your graph as a native VIDEO object. All that happens on their servers, and your prompt travels with it. If that bothers you, this pack isn't going to change your mind - but if you want the model at all, the API is the only door.

The unexpected extra: reference video and audio

Here's the part that makes this node more interesting than a plain T2V. Unlike most text-to-video nodes, it also accepts an optional reference_video (a native ComfyUI VIDEO - Load Video, or another Seedance output) and reference_audio (an AUDIO socket). Reference them in the prompt as [Video 1] and [Audio 1], and the model can borrow motion or sound character from an existing clip while still generating from text. URL-based fallbacks (reference_video_url, reference_audio_url) exist if you don't have a local file. So "T2V" undersells it slightly - it's text-first generation with optional media conditioning.

What you actually set

  • prompt - the whole show. Be explicit about camera, subject, and motion.
  • model - two choices here: the default dreamina-seedance-2-0-260128 (Seedance 2.0, up to 15s) or seedance-1-5-pro-251215 (capped at 12s - and the node clamps duration down automatically if you overshoot, so it won't silently fail).
  • ratio - 16:9, 9:16, 1:1, 4:3, 3:4, or adaptive.
  • duration - 4–15 seconds.
  • resolution - default (API decides), 480p, 720p, or 1080p.
  • generate_audio - ambient sound on/off. On costs more and renders slower.
  • watermark - BytePlus watermark if you want it (you don't).

The outputs are the pack's standard six: video (native VIDEO → Save Video), last_frame (IMAGE, chain it into the next clip), frames (every frame as an IMAGE batch), video_url (48-hour CDN link), video_path, and last_frame_url.

Install

ComfyUI Manager, search comfyui-seedance-nodes. Or the manual route:

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

Just requests, Pillow, numpy, opencv-python - no model files. Configure your key via export ARK_API_KEY="..." or the node's api_key field, restart, and you'll find it under Seedance / Video Generation.

Where people get burned

  • Missing key. Empty api_key and no ARK_API_KEY env var means an immediate error before anything hits the network.
  • Timeouts. The API queues tasks; a 1080p, 10-second job can exceed the default 600s max_wait. Raise it (up to 3600) for big renders.
  • The bill. Pure T2V is the fastest way to rack up spend - every run is metered. Draft at 480p and short durations; your prompts and any reference media leave your machine either way.
  • Audio surprise. generate_audio doubles as a cost knob. It's off by default - keep it that way until you specifically need ambience.
CategorySeedance/Video Generation

Inputs (15)

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.Use [Video 1] / [Audio 1] to reference media in the prompt.
modelCOMBOdreamina-seedance-2-0-2601281 options: dreamina-seedance-2-0-260128
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 for a watermark-free PNG of the last frame.
poll_intervalINT105–60Seconds between status-check requests.
max_waitINT60060–3600Maximum seconds to wait for the task.
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