Nodes/ComfyUI Seedance/并发提交|HappyHorse 1.1 视频生成
ComfyUI Node

并发提交|HappyHorse 1.1 视频生成

HappyHorse 1.1 in parallel — t2v, first-frame i2v, and up to 9-image reference video

By T8mars·Created 2 months ago·Updated 3 days ago· 31
并发提交|HappyHorse 1.1 视频生成
  • first_image
  • reference_image2
  • reference_image3
  • reference_image4
  • reference_image5
  • reference_image6
  • reference_image7
  • reference_image8
  • reference_image9
  • api_config
  • future
modelhappyhorse-1.1-t2v
prompt
seconds4
resolution720p
ratioadaptive
skip_errorfalse
seed0

HappyHorse 1.1 is one of the more niche models in this pack, and honestly, that's exactly when you want the concurrent version. If you're already paying per clip on an API that isn't the headline Seedance model, you want to fire a few variants in one batch and pick the winner - not babysit sequential runs. This node is the concurrent-submit wrapper for the pack's HappyHorse 1.1 generator, covering the three models: happyhorse-1.1-t2v, happyhorse-1.1-i2v, and happyhorse-1.1-r2v (reference-image-to-video).

Mechanics are the pack standard: parameters get validated up front, then the job is pushed to a background video thread pool and you get a SEEDANCE_VIDEO_FUTURE handle back. Feed that into SeedanceConcurrent_Video_Await, and the receiver waits on up to ten futures in parallel, handing you finished VIDEO outputs in slot order. Three prompt variants of a t2v, or a t2v next to an r2v with character references - that's a one-receiver job.

The inputs that matter

  • model - the three-way split above.
  • prompt - required for t2v; optional for i2v and r2v. In r2v mode you can reference the input images directly in the prompt by writing 图1 / 图2 (the Chinese for "image 1/2") - that's how the upstream expects you to address reference material here, not @Image 1.
  • seconds - 3 to 15, and note it does not support -1 for model-decided duration, unlike some siblings in the pack.
  • resolution - 720p or 1080p only.
  • ratio - forwarded as metadata.ratio; the API maps it to the upstream aspectRatio.
  • first_image - required for i2v; for r2v it plays the role of 图1 (image 1), with reference_image2reference_image9 filling out the reference set. Gaps in the middle get compacted to connected order, and the console tells you when it renumbers.

Plus the standard trio: api_config (or env var / config/.env), skip_error (placeholder video on failure instead of nuking the batch), and seed - a cache seed where fixed reuses cached output when nothing else changed.

How it runs

Same wrapper machinery as the rest: the i2v path sends first_image as images[0], r2v sends the compacted reference list, and the background worker handles upload → submit → poll → download with the MP4-header integrity check before a result counts as a real video. Because validation is synchronous, a bad combo (say, i2v with no first frame) fails at the node rather than halfway through a batch.

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

Dependency is just requests; no weights. API key from the Seedance API Config node, SEEDANCE_API_KEY, or config/.env.

Where people trip

  • i2v with no first_image - rejected up front. HappyHorse i2v only looks at the first frame, so don't hunt for a last-frame slot; there isn't one on this node.
  • seconds = -1 - unsupported here. Pick a real number.
  • Reference renumbering - skip reference_image4 and your reference_image5 becomes 图4. If your prompt says 图4 and the wrong face shows up, that's why.

The usual API-wrapper caveats apply: metered per clip, your prompt and frames leave the machine, and result links are temporary - save what you keep.

CategorySeedance/并发提交

Inputs (17)

NameTypeDefaultDescription
modelCOMBOhappyhorse-1.1-t2vHappyHorse 1.1 task type. t2v uses prompt only; i2v uses first_image; r2v uses 1-9 reference images. | t2v 只用提示词;i2v 使用首帧图;r2v 使用 1-9 张参考图。
promptSTRINGText prompt, up to 20480 chars. In multimodal mode you can reference materials as @Image 1 / @Video 1 / @Audio 1. | 文本提示词,多模态可用 @Image 1、@Video 1 指代第几个素材。
secondsCOMBO4HappyHorse supports 3-15 seconds and does not support -1. | 支持 3-15 秒,不支持 -1。
resolutionCOMBO720pHappyHorse supports 720p or 1080p. | HappyHorse 支持 720p 或 1080p。
ratioCOMBOadaptiveAspect ratio forwarded as metadata.ratio for upstream aspectRatio mapping. | 画幅会通过 metadata.ratio 映射给上游 aspectRatio。
first_imageoptIMAGERequired for happyhorse-1.1-i2v, and image 1 / 图1 for happyhorse-1.1-r2v. | i2v 必填;r2v 中作为图1。
reference_image2optIMAGEOptional r2v reference image 2; prompt can mention 图2. Gaps are compacted to connected order. | r2v 可选参考图 2,提示词可写图2;跳号会按连接顺序压缩。
reference_image3optIMAGEOptional r2v reference image 3; prompt can mention 图3. Gaps are compacted to connected order. | r2v 可选参考图 3,提示词可写图3;跳号会按连接顺序压缩。
reference_image4optIMAGEOptional r2v reference image 4; prompt can mention 图4. Gaps are compacted to connected order. | r2v 可选参考图 4,提示词可写图4;跳号会按连接顺序压缩。
reference_image5optIMAGEOptional r2v reference image 5; prompt can mention 图5. Gaps are compacted to connected order. | r2v 可选参考图 5,提示词可写图5;跳号会按连接顺序压缩。
reference_image6optIMAGEOptional r2v reference image 6; prompt can mention 图6. Gaps are compacted to connected order. | r2v 可选参考图 6,提示词可写图6;跳号会按连接顺序压缩。
reference_image7optIMAGEOptional r2v reference image 7; prompt can mention 图7. Gaps are compacted to connected order. | r2v 可选参考图 7,提示词可写图7;跳号会按连接顺序压缩。
reference_image8optIMAGEOptional r2v reference image 8; prompt can mention 图8. Gaps are compacted to connected order. | r2v 可选参考图 8,提示词可写图8;跳号会按连接顺序压缩。
reference_image9optIMAGEOptional r2v reference image 9; prompt can mention 图9. Gaps are compacted to connected order. | r2v 可选参考图 9,提示词可写图9;跳号会按连接顺序压缩。
api_configoptSEEDANCE_CONFIGConnect Seedance API Config; otherwise SEEDANCE_API_KEY is used.
skip_erroroptBOOLEANfalseOn failure return a placeholder error video instead of stopping the workflow. | 失败时输出占位错误视频。
seedoptINT00–18446744073709550000ComfyUI cache seed. Fixed reuses the cached result while all other inputs stay unchanged; randomize/increment/decrement starts a new execution. This value is not sent to models without documented seed support. | ComfyUI 缓存种子;Fixed 在其他输入不变时复用缓存,随机、递增或递减会触发新任务。未声明支持 seed 的模型不会收到此参数。

Outputs (1)

NameTypeDescription
futureSEEDANCE_VIDEO_FUTURE