Zhenzhen Video V3.1
Three model tiers, one fixed 8-second length, and a 4k ceiling
- image1
- image2
- image3
- api_config
- video
- video_url
- task_id
- response
Zhenzhen_Video_V31 is the flagship-length node of the house-brand video family in T8mars/ComfyUI_Seedance. Its signature move is refusing to negotiate on duration: seconds is fixed at 8, period. What it gives you instead is a three-tier model choice - zhenzhen-video-v31-fast, zhenzhen-video-v31-quality, and zhenzhen-video-v31-lite - plus a 4k resolution option that only the Lowprice Omni Flash node shares. Fast/quality/lite is the classic pricing ladder: iterate on fast, present with quality, and use lite when you just need a quick clip with no references at all.
That fixed 8 seconds is worth a second of thought. Most pack nodes let you stretch to 15 or 30 seconds; V3.1 pins you at a social-clip length, which tells you what this model was built for - finished 8-second pieces for feeds, not long takes. If that fits your use case, this is arguably the most "presentable output" node in the Zhenzhen line: three tiers, two ratios, up to 4k.
How it works
The model choice is the whole game:
zhenzhen-video-v31-fast- the quick lane; supports up to 3 reference images (image1–image3).zhenzhen-video-v31-quality- the quality lane; up to 2 reference images.zhenzhen-video-v31-lite- text-to-video only; no image inputs at all (the node hides them).
Everything else is shared: prompt (up to 20480 chars, @Image 1 reference syntax supported where images exist), resolution (720p/1080p/4k), ratio (16:9 or 9:16), negative_prompt forwarded to metadata, and a native seed (-1 random, non-negative forwarded to metadata.seed). Standard async submit → poll → download → decode on the /v1/videos endpoint.
Inputs and outputs that matter
model- fast / quality / lite, with their reference-image limits.prompt- the creative input.seconds- fixed at 8.resolution- 720p, 1080p, or 4k.ratio- 16:9 or 9:16.negative_prompt- optional, forwarded to metadata.seed--1random or forwarded tometadata.seed.image1–image3- per-model limits (fast 3, quality 2, lite 0).
Outputs: video, video_url, task_id, response.
Install
One node in T8mars/ComfyUI_Seedance:
# ComfyUI Manager: search "ComfyUI Seedance", or:
comfy node install seedance
Or clone https://github.com/T8mars/ComfyUI_Seedance.git into ComfyUI/custom_nodes, pip install -r requirements.txt, restart, and configure a key from api.seedance.nz/console via the Seedance API Config node or SEEDANCE_API_KEY.
Where people get burned
The model-tier trap is the big one: Quality forbids three-image reference work and Lite forbids all images, so a workflow that works on Fast silently does nothing on Lite if you forget to unwire the references - the node hides the slots, but the request shape still follows the model. Also internalize that 8 seconds is not a bug; if you need 4 or 12, this is the wrong node (try the Omni Flash or GK v1.5 nodes). And as always with the house-brand models: the upstream is an opaque hosted black box, every clip is metered with 4k at the top of the price ladder, and upstream moderation applies regardless. Smoke-test on fast at 720p, then step up to quality at your target resolution once the result reads right.
Inputs (12)
| Name | Type | Default | Description |
|---|---|---|---|
| model | COMBO | zhenzhen-video-v31-fast | Zhenzhen video model. | Zhenzhen 视频模型。 |
| 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 | 8 | Video duration in seconds, submitted as a string. | 视频时长,按字符串提交。 |
| resolution | COMBO | 720p | Target resolution. | 目标分辨率。 |
| ratio | COMBO | 16:9 | Optional aspect ratio forwarded as metadata.ratio. | 可选画幅比例,透传为 metadata.ratio。 |
| negative_prompt | STRING | Optional negative prompt forwarded to metadata. | 可选反向提示词,透传到 metadata。 | |
| seed | INT | -1-1–2147483647 | -1 = random seed; non-negative values are forwarded to metadata.seed. | -1 表示随机种子,非负整数透传到 metadata.seed。 Fixed reuses the cached result while all inputs stay unchanged; randomize/increment/decrement starts a new execution. | Fixed 在输入不变时复用缓存;随机、递增或递减会触发新任务。 |
| image1opt | IMAGE | Optional reference image 1; connected images are submitted as images[]. | 可选参考图 1,连接后通过 images[] 提交。 | |
| image2opt | IMAGE | Optional reference image 2; connected images are submitted as images[]. | 可选参考图 2,连接后通过 images[] 提交。 | |
| image3opt | IMAGE | Optional reference image 3; connected images are submitted as images[]. | 可选参考图 3,连接后通过 images[] 提交。 | |
| 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. | 失败时输出占位错误视频。 |
Outputs (4)
| Name | Type | Description |
|---|---|---|
| video | VIDEO | — |
| video_url | STRING | — |
| task_id | STRING | — |
| response | STRING | — |