并发提交|Seedance 多模态视频 (Multimodal Video)
Seedance multimodal video, batched — 9 images, 3 videos, and 3 audios driving parallel clips
- image1
- image2
- image3
- image4
- image5
- image6
- image7
- image8
- image9
- video1
- video2
- video3
- audio1
- audio2
- audio3
- api_config
- future
The multimodal model is where Seedance 2.0 stops being "text in, video out" and starts being a reference-hungry director: you feed it up to nine images, three videos, and three audio clips, and it composites a clip that respects all of them. This node is the concurrent-submit wrapper around that. It's not the newest multimodal in the pack (2.5's Multi takes 30 images), but it's the one with the tightest, most approachable reference model - and its batch version is what you want when one composition isn't enough.
Concurrency works like every submit node here: validate, push to the background video thread pool, get a SEEDANCE_VIDEO_FUTURE back. Feed up to ten of those into SeedanceConcurrent_Video_Await and it returns finished VIDEO values in slot order. Two different reference sets, same prompt, compare the takes - two of these, one receiver.
The inputs that matter
model-seedance-2.0-{standard,fast,mini}-multiplus-global-versions.prompt- required, and it's how you direct the references. Address them in the prompt with@Image 1,@Video 1,@Audio 1- that's the API's own addressing scheme, not decoration.image1…image9- up to nine reference images.video1…video3- reference videos; MP4, ≤50MB each.audio1…audio3- reference audio; ≤50MB each.seconds- 4 to 15 or-1;resolution-480p…4kplus the Standard-only native tiers;ratio-adaptivefollows your material.generate_audio- toggle for the output's own audio.
Plus api_config, skip_error, and the cache seed (fixed = reuses cached results on unchanged runs).
How it runs
Standard wrapper machinery: all your local reference media gets uploaded automatically, the pack compacts the reference numbering to connected order (and prints a console hint when it renumbers), then submit → poll → download with the MP4 check. The upload phase is the slow part with big reference sets - the README warns the API rate-limits per-token uploads and the client retries.
Installing
# ComfyUI Manager: search "ComfyUI Seedance" → install → restart.
# or:
comfy node install seedance
# or:
cd ComfyUI/custom_nodes
git clone https://github.com/T8mars/ComfyUI_Seedance.git
cd ../.. && python -m pip install -r custom_nodes/ComfyUI_Seedance/requirements.txt
Only requests; no weights. API key via Seedance API Config, SEEDANCE_API_KEY, or config/.env.
Where people trip
@Imagetags that miss - numbering is by connected slot order, and gaps get compacted. Connectimage1andimage3and your second reference is@Image 2, not@Image 3.- Oversized references - videos and audio over 50MB get bounced. Trim before you wire them in.
- Multi with no references - the model needs at least one connected asset; a prompt-only "multi" job fails validation. Use the t2v node for that.
Per-clip metering and data-leaves-the-machine caveats, now at maximum strength - you're shipping up to 15 assets to the gateway per job. Save what you keep.
Inputs (24)
| Name | Type | Default | Description |
|---|---|---|---|
| model | COMBO | seedance-2.0-standard-multi | standard/fast/mini = quality tiers; 'global-' models run on overseas infrastructure. | standard/fast/mini 为档位,带 global- 的为海外版通道。 |
| prompt | STRING | Text prompt, up to 20480 chars. In multimodal mode you can reference materials as @Image 1 / @Video 1 / @Audio 1. | 文本提示词,多模态可用 @Image 1、@Video 1 指代第几个素材。 | |
| seconds | COMBO | 5 | Video duration in seconds; -1 lets the model decide. | 视频时长(秒),-1 表示模型智能选择。 |
| resolution | COMBO | 720p | 1080p/2k/4k are upscaled output tiers; native1080p/native4k are Standard-tier only. | 1080p/2k/4k 为超分输出档,native 档仅 Standard 模型支持。 |
| ratio | COMBO | adaptive | Aspect ratio; adaptive follows the input material. | 画面比例,adaptive 为自适应。 |
| image1opt | IMAGE | Reference image, addressed as @Image 1 in the prompt. | 提示词中用 @Image 1 指代。 | |
| image2opt | IMAGE | Reference image, addressed as @Image 2 in the prompt. | 提示词中用 @Image 2 指代。 | |
| image3opt | IMAGE | Reference image, addressed as @Image 3 in the prompt. | 提示词中用 @Image 3 指代。 | |
| image4opt | IMAGE | Reference image, addressed as @Image 4 in the prompt. | 提示词中用 @Image 4 指代。 | |
| image5opt | IMAGE | Reference image, addressed as @Image 5 in the prompt. | 提示词中用 @Image 5 指代。 | |
| image6opt | IMAGE | Reference image, addressed as @Image 6 in the prompt. | 提示词中用 @Image 6 指代。 | |
| image7opt | IMAGE | Reference image, addressed as @Image 7 in the prompt. | 提示词中用 @Image 7 指代。 | |
| image8opt | IMAGE | Reference image, addressed as @Image 8 in the prompt. | 提示词中用 @Image 8 指代。 | |
| image9opt | IMAGE | Reference image, addressed as @Image 9 in the prompt. | 提示词中用 @Image 9 指代。 | |
| video1opt | VIDEO | Reference video (MP4 <=50MB), addressed as @Video 1. | 参考视频,提示词中用 @Video 1 指代。 | |
| video2opt | VIDEO | Reference video (MP4 <=50MB), addressed as @Video 2. | 参考视频,提示词中用 @Video 2 指代。 | |
| video3opt | VIDEO | Reference video (MP4 <=50MB), addressed as @Video 3. | 参考视频,提示词中用 @Video 3 指代。 | |
| audio1opt | AUDIO | Reference audio (<=50MB), addressed as @Audio 1. | 参考音频,提示词中用 @Audio 1 指代。 | |
| audio2opt | AUDIO | Reference audio (<=50MB), addressed as @Audio 2. | 参考音频,提示词中用 @Audio 2 指代。 | |
| audio3opt | AUDIO | Reference audio (<=50MB), addressed as @Audio 3. | 参考音频,提示词中用 @Audio 3 指代。 | |
| generate_audioopt | BOOLEAN | true | Generate voice-over / sound effects. | 是否生成配音与音效。 |
| seedopt | INT | -1-1–2147483647 | -1 = random seed. | -1 表示随机种子。 Fixed reuses the cached result while all inputs stay unchanged; randomize/increment/decrement starts a new execution. | Fixed 在输入不变时复用缓存;随机、递增或递减会触发新任务。 |
| api_configopt | SEEDANCE_CONFIG | Connect a 'Seedance API Config' node; falls back to SEEDANCE_API_KEY env var. | |
| skip_erroropt | BOOLEAN | false | On failure return a placeholder error video instead of stopping the workflow. | 失败时输出占位错误视频而不中断工作流。 |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| future | SEEDANCE_VIDEO_FUTURE | — |