Concurrent Submit | Zhenhen Sora2 New
The dedicated-key lane, now queueable
- reference_image
- task
Sora 2 is a cloud model with a rate-limit problem, and this node is the author's answer to it. When OpenAI started hammering the shared keys too hard, T8mars spun up a separate "Sora2 New" API that uses its own key, separate from the main Zhenzhen account - you buy a dedicated API key for it. The trade is blunt but honest: less rate-limiting, and for a while this path was the one with auto watermark removal. If you're the kind of person who generates a lot of Sora 2 and keeps hitting 429-ish walls, this is the lane built for you.
The node itself is the Sora 2 New wrapper, repackaged for the pack's concurrent system. Same deal as every other Submit node in Comfyui-zhenzhen: it doesn't block. It validates your inputs, drops the job into the shared video pool (ten concurrent workers), and immediately hands back a task. Wire that task into the Concurrent Collect Videos node (ComflyConcurrent_Video_Await) and it comes out the other end as video_N once it's done.
What you're actually setting
This node is deliberately locked down compared to its siblings. The full input list is short:
- prompt - your Sora 2 text prompt.
- model - just
sora-2. One choice. No pro, no VIP. - orientation -
portraitorlandscape. - size -
smallonly, because that's all this API lane offers. - duration -
10sor15s. - apikey - this is the one that matters: it must be the separate Sora2 New key, not your regular Zhenzhen key. The README says the shared key won't work here by design.
- reference_image - an optional single image for image-to-video.
Then seed and skip_error, and the single task output. That's the whole surface - no HD toggle, no aspect-ratio list, no multi-image inputs. It's a utility lane, not a feature-rich one. Don't come here looking for options; come here when you want Sora 2 to actually go through.
Mechanism, briefly
The wrapper lives in the pack's ComflyConcurrent.py, auto-generated from the original Comfly_sora2_new class. It copies the inputs, runs the original validation, and hands the call to a bounded ThreadPoolExecutor - ten video workers by default, tunable with COMFLY_VIDEO_CONCURRENCY. The task it returns is a future the collect node waits on, and the collector's status output tells you which slot finished, failed, or was never connected.
Install and key
Install the pack once through ComfyUI Manager (search "Comfyui-zhenzhen") or:
cd ComfyUI/custom_nodes
git clone https://github.com/T8mars/Comfyui-zhenzhen
No models to download - it's all API. You need the dedicated Sora2 New key, which per the changelog is arranged directly (it's a cost-price lane for heavy users), not the generic signup key. Set it in the node's apikey field or the pack's Zhenzhen API Settings node.
The gotchas that actually bite
Because this lane is separate, the usual Sora 2 advice still applies and then some. 500 errors are frequently OpenAI's fault - rerun. A timeout isn't a guaranteed failure; check your async task page for the finished MP4. And since the key here is dedicated, if you are getting errors, check you didn't paste the shared key in by habit - that's the most common mistake with this specific node. Also remember it shares the ten-worker video pool with every other video Submit node in the pack, so a full batch queue will just sit politely until a slot frees up.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | — | |
| model | COMBO | sora-2 | 1 options: sora-2 |
| orientation | COMBO | portrait | 2 options: portrait, landscape |
| size | COMBO | small | 1 options: small |
| duration | COMBO | 15s | 2 options: 10s, 15s |
| apikey | STRING | — | |
| reference_imageopt | IMAGE | — | |
| seedopt | INT | 00–2147483647 | — |
| skip_erroropt | BOOLEAN | false | 开启后,节点失败时不报错、按旧行为返回默认空结果;关闭时(默认)失败直接抛出错误。 |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| task | COMFLY_VIDEO_FUTURE | — |