Seedance参考生视频
One reference image in, a Seedance video out — no GPU required
- Reference_image
- video
Seedance is ByteDance's video model - genuinely impressive at motion and camera work, and genuinely impossible to run locally, because there are no weights to download. This node is the workaround: drop a reference image in one socket, describe what should happen in plain text, and a video comes back the other end. Everything renders on someone else's server, so the only heavy things you need are a browser tab and one line in a config file.
The node is one slice of the MJAPI-party pack from MojieAI (摩诘AI), and understanding the pack matters more than understanding the node. MojieAI runs mojieaigc.com, an API aggregator aimed squarely at low-end and low-spec ComfyUI users: instead of juggling a separate key and account for every closed model, you register once, and one KEY in config.ini lets every node in the pack call whatever it fronts. This node's slice is "Dreamina R2V" - MojieAI's name for Seedance's reference-to-video mode, under Dreamina (ByteDance's consumer brand for the Jimeng line). You're still getting the closed Seedance family; MojieAI is just the reseller in the middle.
Why reach for it instead of a local model? Two honest reasons. You can't afford the local model's hardware, or you want Seedance's instruction-following and camera moves, which no open-weight video model matches yet. Either way this is the "model you can never download, reached through an API" play from the external-API-nodes playbook - same capability as Comfy's official Partner Node route to Seedance, but with MojieAI's billing, quota, and endpoint instead.
How it actually works
Mechanically it's a plain HTTP client in a node costume. The Reference_image gets base64-encoded, packed with the prompt and settings, and POSTed to https://www.mojieaigc.com/v1/completions with your key as a Bearer token and "model": "DreaminaR2VNode". The reply contains a video_url, which the node downloads and hands back into the graph as a VIDEO. The request has a 240-second timeout - that's the whole wait, and it's remote render time, not local compute.
Dependencies are refreshingly boring: numpy, torch, requests, pillow, aiohttp, toml, opencv-python. No model files, no giant downloads - that's the entire point of the pack.
The inputs that matter
Only five, and you'll set most of them once:
Reference_image- the anchor. Wire in anything that outputs anIMAGE(usually just Load Image). Contrast it with the pack's siblingDreaminaI2VNode, which takes an explicit first frame and optionallast_imagefor first/last-frame shots; this is the looser "make a video that matches this image" mode, so it tolerates non-photographic references well.prompt- say what happens. Seedance understands camera language, so "slow push-in, subject turns to camera" style directives actually land.resolution-480Por720Ponly. This is not a bug: the R2V node caps at 720P while the pack's I2V/T2V nodes list 1080p. If you need 1080p, use those.ratio- six presets from1:1to21:9, default16:9.duration- 3 to 12 seconds, default 10. Video seconds are where the bill grows.seed- default 0 means random-ish; set it to lock a shot.
The single video output plugs into whatever you normally use to save or play VIDEO in your ComfyUI setup.
Installing it
ComfyUI Manager → search mojieapi_party, or:
cd ComfyUI/custom_nodes
git clone https://github.com/MoJIeAIGC/comfyui-MJAPI-party.git
Restart ComfyUI, then register at mojieaigc.com and copy your API key. Edit config.ini in the pack's root folder:
[API]
KEY = your_api_key
BASE_URL = https://www.mojieaigc.com/v1/completions
Leave BASE_URL alone and restart ComfyUI again - the key only loads on startup. New pack versions update from ComfyUI's Settings → mjapi, no git dance required.
Where people get burned
Cost is the real tax. Seedance jobs are metered per call, and this whole pack only works because the KEY is a prepaid balance - if it runs dry mid-render you'll see an empty response rather than a helpful message. The code's actual error when the API returns nothing useful is Empty video data from API, which usually means the remote job failed or the prompt got filtered on MojieAI's side. And a key that doesn't authenticate (401s, nothing happens) is almost always the config edit followed by no restart.
Finally, a sober note, because it's the exact category this belongs to: an API-node pack holds your key and phones home by design - that's its job. Your reference image and prompt leave your machine and hit MojieAI's servers, and that key sits in plaintext in config.ini. MojieAI has essentially zero English-speaking community footprint (I found no real Reddit signal at all), so treat the key as spendable credit and don't assume anything you feed it stays private. It's a niche reseller pack, not a vetted Comfy Partner Node - convenient, and worth keeping your eyes open.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| Reference_image | IMAGE | — | |
| prompt | STRING | — | |
| resolution | COMBO | 720P | 2 options: 480P, 720P |
| ratio | COMBO | 16:9 | 6 options: 1:1, 3:4, 4:3, 9:16, 16:9, 21:9 |
| duration | INT | 103–12 | — |
| seed | INT | 0 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| video | VIDEO | — |