zhenzhen-video-v31-lowprice
Fast, Quality, and Lite in one node — but it is always 8 seconds
- api_config
- image1
- image2
- image3
- video
- video_url
- task_id
- response
One node, three models, one duration
The v31 node is zhenzhen's consolidation of its Seedance V3.1 line: instead of separate Fast and Quality nodes (and later a Lite one), you get a single node with a model dropdown. That's the whole convenience - swap zhenzhen-video-v31-fast for zhenzhen-video-v31-quality without rebuilding anything, and know that zhenzhen-video-v31-lite exists when you want the cheapest fixed-8-second text-to-video run.
The catch is in the title: this model family is locked to 8 seconds. There's no seconds dropdown with choices - the schema literally offers only "8" - and the code validates it, throwing "Video V3.1 duration is fixed at 8 seconds" if you try anything else. If you need 30-second clips, that's the GK node's job. This is the middle-length, higher-quality seat.
How it works
Same shape as every node in the "Seedance2 Low Price" category: an HTTP client that uploads your reference images to zhenzhen's server, submits a task to the closed Seedance API, polls, downloads the MP4, and hands you a ComfyUI VIDEO. No local weights, no VRAM, just a credit balance and patience. V3.1 is one of those closed video models with no open weights, so an API wrapper is the only way it gets into a Comfy graph (external-api-nodes.md).
Inputs that matter
- model -
fast,quality, orlite. Fast for drafts, quality for the keeper, lite for the cheapest throwaway. - prompt - the description. English is the safe bet.
- resolution - 720p, 1080p, or 4k. The price lever.
- ratio - 16:9 or 9:16.
- image1…image3 - optional reference images for consistency. One real gotcha here: lite is text-to-video only. Connect an image to lite and the node refuses, "zhenzhen-video-v31-lite is text-to-video only and does not accept images." Fast and Quality accept the references.
api_config takes the shared Seedance 2.0 Low Price Settings node with your domestic-site key (or set SEEDANCE_API_KEY). The seed input is cache control only - the tooltip is explicit that it isn't sent to the API.
Outputs and install
The standard four: video, video_url, task_id (recovery handle for the site's async-task page), and response (JSON). Install is pack-wide:
cd ComfyUI/custom_nodes
git clone https://github.com/T8mars/Comfyui-zhenzhen
or ComfyUI Manager → search "Comfyui-zhenzhen", then restart and let requirements install. The README's universal advice for these nodes: a 500 means the provider is struggling - rerun once before you start changing settings.
Inputs (11)
| Name | Type | Default | Description |
|---|---|---|---|
| model | COMBO | zhenzhen-video-v31-fast | 3 options: zhenzhen-video-v31-fast, zhenzhen-video-v31-quality, zhenzhen-video-v31-lite |
| prompt | STRING | — | |
| seconds | COMBO | 8 | 1 options: 8 |
| resolution | COMBO | 720p | 3 options: 720p, 1080p, 4k |
| ratio | COMBO | 16:9 | 2 options: 16:9, 9:16 |
| api_configopt | ZHENZHEN_SEEDANCE2_CONFIG | — | |
| image1opt | IMAGE | — | |
| image2opt | IMAGE | — | |
| image3opt | IMAGE | — | |
| skip_erroropt | BOOLEAN | false | — |
| seedopt | INT | 00–18446744073709550000 | Execution seed for ComfyUI cache control. Fixed reuses the cached result; randomize/increment/decrement requests a new run. This compatibility seed is not sent to APIs that do not expose a native seed parameter. |
Outputs (4)
| Name | Type | Description |
|---|---|---|
| video | VIDEO | — |
| video_url | STRING | — |
| task_id | STRING | — |
| response | STRING | — |