Zhenzhen MJ Video
Four Clips Per Call, No Prompt Flag Typing
- image
- video1
- video2
- video3
- video4
- task_id
- response
Midjourney does video now, and it's surprisingly good at it - the v7-era motion feels cinematic rather than wobbly. Comfly_mj_video is the node that brings it into ComfyUI, and its defining quirk is right in the README: one call generates four videos at once, billed as a single unit. You don't pick a winner; you get four variations to choose from, which for video is actually a sane workflow - video prompts are expensive to iterate on, so four takes per credit is a decent deal.
This node pairs with its sibling Comfly_mj_video_extend, which takes one of those four clips and extends it. Together they're the whole MJ-video story in this pack.
How it works
Prompt (and optionally an image, for image-to-video) goes to Midjourney's video endpoint via the Comfly proxy. The node waits for the batch, then returns four separate video outputs - each the pack's ComflyVideoAdapter wrapping a URL, so they plug straight into ComfyUI's Save Video node. Along with a task_id (the thing Comfly_mj_video_extend needs) and the raw response.
The inputs that matter
- prompt - the scene, with motion described. MJ video reads verbs well: "slow dolly-in, rain on the window, neon reflections."
- motion -
Low(default) orhigh. Low motion keeps the camera calmer and the render more stable; high motion is where the interesting (and occasionally chaotic) shots happen. Start Low. - image - optional IMAGE input for image-to-video: animate a still you already like.
- notify_hook - a webhook URL that the proxy can ping when the job's done. Useful if you're running long jobs in the background; empty is fine for interactive use.
- seed - lock the batch; 0 for random.
Outputs: video1, video2, video3, video4 (all VIDEO), task_id (STRING), response (STRING).
Install
Manager → Comfyui_Comfly, or:
cd ComfyUI/custom_nodes
git clone https://github.com/ainewsto/Comfyui_Comfly
Restart. No model downloads - requirements.txt is the usual aiohttp/requests/Pillow/numpy set. Key from ai.comfly.chat in Comflyapi.json or the node's api_key.
Where people get burned
The billing is the whole trap: each call is a unit, and it buys you exactly four videos. So treat every run as "four clips for one price" and pick the best rather than re-running the same prompt hoping for a better fourth take - each re-run is another full unit. Also, capture that task_id output: it's the only thing Comfly_mj_video_extend accepts, and it's per-batch, so losing it means losing the ability to extend any of the four. And the motion: high dial deserves respect - it's where clips go from "cinematic" to "wonky," so don't set it and walk away for the whole batch.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | — | |
| motion | COMBO | Low | 2 options: Low, high |
| api_keyopt | STRING | — | |
| imageopt | IMAGE | — | |
| notify_hookopt | STRING | — | |
| seedopt | INT | 00–2147483647 | — |
| skip_erroropt | BOOLEAN | false | 开启后,节点失败时不报错、按旧行为返回默认空结果;关闭时(默认)失败直接抛出错误。 |
Outputs (6)
| Name | Type | Description |
|---|---|---|
| video1 | VIDEO | — |
| video2 | VIDEO | — |
| video3 | VIDEO | — |
| video4 | VIDEO | — |
| task_id | STRING | — |
| response | STRING | — |