Hailuo 2.3 视频生成
Standard, pro and fast image-to-video in one node
- first_image
- api_config
- video
- video_url
- task_id
- response
Hailuo is one of the video models the local crowd wishes it could run: it's closed, so if you want Hailuo 2.3 clips you call it, and this node is the call. Six models sit behind one dropdown - text-to-video standard and pro, image-to-video standard and pro, and two fast image-to-video variants (standard and pro). The split is the useful part: standard/pro for quality-first renders, fast-* for drafts you don't plan to keep. It's the same API-wrapper arrangement as the rest of the T8mars/ComfyUI_Seedance pack - key from api.seedance.nz, no GPU, no weights.
How it works
Pick a model and the node reshapes to match. Text models want just prompt; image models grow a first_image slot that gets submitted as images[0]. Everything then goes through the pack's standard async pipeline: upload, submit, poll, download, decode to a ComfyUI VIDEO with the usual MP4 header check.
The inputs that matter
- model - the six-way switch described above.
- prompt - up to 2000 characters; required for T2V.
- seconds - 6 or 10. 1080p is locked to 6 seconds, so if you pick 10 you're getting 768p whether you like it or not.
- resolution -
768por1080p. - ratio - text-to-video only; pick
adaptive, 16:9, 4:3, 1:1, 3:4, 9:16 or 21:9. Image-to-video ignores this and follows the input image's aspect ratio, which the tooltip says plainly - don't fight it. - first_image - the seed frame for i2v and fast-i2v.
Outputs are the standard video, video_url, task_id, response.
Installing it
ComfyUI Manager, search "ComfyUI 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
Restart ComfyUI, get a key from api.seedance.nz/console, wire a Seedance API Config node into api_config.
Common issues
- i2v rejects your frame - the source image's short edge must be greater than 300px and its aspect ratio between 2:5 and 5:2. That's a real, verified upstream constraint from the pack's testing, not a suggestion. Resize first.
- Resolution doesn't match what you picked - you set 10 seconds with 1080p; 1080p only runs at 6 seconds.
- Ratio doing nothing on i2v - by design. Image-to-video inherits the frame's shape.
Hailuo 2.3 is the older, cheaper end of the Hailuo line - fine for first drafts and character-tests. If you want H3's 2K output and multimodal references, the pack's separate H3 node is the upgrade path, same install.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| model | COMBO | hailuo-2.3-t2v-standard | Hailuo 2.3 task type. t2v uses prompt only; i2v / fast-i2v uses first_image. | Hailuo 2.3 任务类型:文生视频只用提示词,图生视频 / fast 图生视频使用首帧图。 |
| prompt | STRING | Text prompt, up to 2000 characters for Hailuo 2.3. | Hailuo 2.3 提示词最多 2000 字符。 | |
| seconds | COMBO | 6 | Hailuo 2.3 supports 6 or 10 seconds; 1080p is limited to 6 seconds. | 支持 6 或 10 秒;1080p 仅支持 6 秒。 |
| resolution | COMBO | 768p | Hailuo 2.3 supports 768p or 1080p; 1080p is limited to 6 seconds. | 支持 768p 或 1080p;1080p 仅支持 6 秒。 |
| ratio | COMBO | 16:9 | Used for Hailuo text-to-video only; image-to-video follows the input image. | 仅文生视频使用;图生视频跟随输入图片比例。 |
| first_imageopt | IMAGE | Required for Hailuo i2v / fast-i2v models; sent as images[0]. Short edge must be greater than 300px and aspect ratio must be between 2:5 and 5:2. | Hailuo 图生视频 / fast 图生视频必填,作为 images[0] 提交;短边需大于 300px,宽高比需在 2:5 到 5:2 之间。 | |
| api_configopt | SEEDANCE_CONFIG | Connect Seedance API Config; otherwise SEEDANCE_API_KEY is used. | |
| skip_erroropt | BOOLEAN | false | On failure return a placeholder error video instead of stopping the workflow. | 失败时输出占位错误视频。 |
| seedopt | INT | 00–18446744073709550000 | ComfyUI 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 (4)
| Name | Type | Description |
|---|---|---|
| video | VIDEO | — |
| video_url | STRING | — |
| task_id | STRING | — |
| response | STRING | — |