Seedance图生视频
A moving hero shot from one first frame
- first_image
- last_image
- video
Seedance is ByteDance's video model - semantic understanding, obedient camera moves, and it can take an existing image and animate it without fighting the style of your first frame. It's also closed and API-only, which is where this node comes in: it wraps the Seedance image-to-video endpoint so your ComfyUI graph can turn a still into a 10-second moving shot. For product people this is the "make the hero image a video" button, and it slots into a ComfyUI workflow instead of a separate web tool.
How it works
You feed a first_image; the node base64-encodes it, bundles your prompt, resolution, aspect ratio, duration and seed, and POSTs to the pack's gateway under the model id DreaminaI2VNode. The video is rendered server-side and returned as a VIDEO tensor you can save or preview. Two behaviors from the README are worth internalizing before you queue:
camerafixed- when on, the model ignores camera-movement words in your prompt and holds a fixed shot. Turn this on when you want the subject to move and the camera to stay put, off when you're writing dolly/push-in/pan directions.last_image(optional) - wire one in and you get first-frame → last-frame animation (the model interpolates between the two). Leave it empty and you get a plain image-to-video, with the model deciding where it ends.
The inputs that matter
first_image(IMAGE) - required. This is your seed still; its style carries into the motion.prompt(STRING) - motion instructions. Seedance follows natural language well, including Chinese.resolution(480P / 720P / 1080p) andSize(1:1, 3:4, 4:3, 9:16, 16:9, 21:9) - output framing.duration(INT, 3–12, default 10) - seconds. Note the README markets 3–10s at 24fps, but the node lets you go to 12.camerafixed(BOOLEAN) andseed(INT) - as above.
One output: video (VIDEO).
Installing it
Part of comfyui-MJAPI-party. ComfyUI Manager → "mojieapi_party" → Install → restart, or:
cd ComfyUI/custom_nodes
git clone https://github.com/MoJIeAIGC/comfyui-MJAPI-party.git
Register at mojieaigc.com and put your key in config.ini (keep the BASE_URL line as shipped):
[API]
KEY = your_api_key
BASE_URL = https://www.mojieaigc.com/v1/completions
Restart. No model downloads, no video-CUDA deps - the output VIDEO type is handled by ComfyUI itself.
Common issues
- Video calls are the expensive ones. This is where the "metered API" reality bites hardest - a 10-second 1080p clip costs a real slice of your balance, and the community's complaint about API-video pricing generally ("and it's extremely expensive") applies to Seedance specifically. Preview at 480P until you like the take, then pay for 1080p.
- The camera moves on you. If you asked for a fixed shot and got motion anyway, you left
camerafixedoff and Seedance read your prompt's implicit movement. Flip it on. - Last-frame looks unrelated to the first. First/last-frame interpolation works best when the two images share composition. If they're wildly different scenes, expect an awkward in-between.
- Error image with text - the pack's standard failure display; usually key, balance, or a timeout on a long render.
Inputs (8)
| Name | Type | Default | Description |
|---|---|---|---|
| first_image | IMAGE | — | |
| prompt | STRING | — | |
| resolution | COMBO | 1080p | 3 options: 480P, 720P, 1080p |
| Size | COMBO | 16:9 | 6 options: 1:1, 3:4, 4:3, 9:16, 16:9, 21:9 |
| duration | INT | 103–12 | — |
| camerafixed | BOOLEAN | false | — |
| seed | INT | 0 | — |
| last_imageopt | IMAGE | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| video | VIDEO | — |