Comet 异步视频提交
Submit a slow video job without blocking the queue
- media
- media_1
- media_2
- media_3
- media_4
- media_5
- media_6
- media_7
- media_8
- media_9
- media_10
- media_11
- media_12
- media_13
- media_14
- media_15
- media_16
- media_17
- query_info
Cloud video generation is slow - a 10-second Veo or Sora clip can take minutes of server-side thinking. Run that synchronously through Comet 视频 and your whole ComfyUI queue sits on its hands the entire time. "Comet 异步视频提交" exists for exactly that: it hands the job to the cloud and returns a query_info ticket immediately, so your workflow can move on. The finished video gets collected later by CometAPIAsyncVideoReceiver.
If you're building any kind of serious video workflow on this pack, async is the default you should reach for. Sync video ties up a worker for the longest single operation in the pack.
How it works
submit() mirrors the unified video node's input set - it collects your prompt and media, uploads references, and registers the task with the pack's async list - but it stops there. No waiting, no downloading. The query_info output carries the task ID and a status line; the receiver handles the rest.
The inputs are the same set you'd configure on Comet 视频:
channel(default apimart),model_family(10 families),model(27 choices, default grok-video-3).prompt,aspect_ratio,duration(0–30),resolution(480p–4K),mode(文生/图生/首尾帧/多参/视频编辑 and more),size(1280x720 / 720x1280).- References via
mediaplusmedia_1…media_17, each with amedia_type_Nyou can set or leave for inference.
One design note: async video registers the submitter and the receiver shares the same internal task list, so you don't have to wire query_info into anything for the receive step to find the job. The two nodes are siblings, not a strict chain - useful when you want to submit several video jobs and collect them all at once.
The flow you'll actually build
- Async video submit node, configured with your prompt, duration, and resolution.
- Maybe several of them - different prompts or different models, all submitted in one queue run.
- Downstream work that doesn't depend on the videos.
- CometAPIAsyncVideoReceiver, which drains the ready tasks and hands you the
videooutputs.
Because the receiver is process-local, the practical loop is: submit, do other work, run the receiver when you expect the jobs to be done, re-run it if you got a "暂无可用视频结果" placeholder.
Install and the cost warning
Pack install is the usual: ComfyUI Manager (search "ComfyUI-CometAPI") or git clone https://github.com/jieg9341-lab/ComfyUI-CometAPI into custom_nodes, restart, key in the 设置中心. Dependencies: requests and aiohttp only.
And the cost warning deserves capital letters: async makes latency painless but the bill is unchanged. Every submitted job is a billed generation, and video at 4K or a long duration is the most expensive thing this pack can do. Submitting ten "just to see" jobs and collecting one is ten billed jobs. There's no local fallback for these models - budget before you batch.
Inputs (45)
| Name | Type | Default | Description |
|---|---|---|---|
| channel | COMBO | apimart | 3 options: apimart, runninghub, modelverse |
| model_family | COMBO | grok | 10 options: grok, veo, vidu, hailuo, kling, happyhorse, +4 |
| model | COMBO | grok-video-3 | 27 options: doubao-seedance-2.0, doubao-seedance-2.0-fast, grok-imagine-1.0-video-apimart, sora-2, sora-2-pro, veo3.1-fast, +21 |
| prompt | STRING | — | |
| aspect_ratio | COMBO | 16:9 | 10 options: 2:3, 3:2, 1:1, 9:16, 16:9, auto, +4 |
| duration | COMBO | 10 | 31 options: 0, 1, 2, 3, 4, 5, +25 |
| resolution | COMBO | 1080P | 16 options: 480P, 720P, 4K, 540p, 720p, 1080p, +10 |
| mode | COMBO | 首尾帧 | 12 options: 首尾帧, 多参, 文生, 参考, 图生, 多图, +6 |
| size | COMBO | 1280x720 | 2 options: 1280x720, 720x1280 |
| mediaopt | * | — | |
| media_1opt | * | — | |
| media_type_1opt | STRING | — | |
| media_2opt | * | — | |
| media_type_2opt | STRING | — | |
| media_3opt | * | — | |
| media_type_3opt | STRING | — | |
| media_4opt | * | — | |
| media_type_4opt | STRING | — | |
| media_5opt | * | — | |
| media_type_5opt | STRING | — | |
| media_6opt | * | — | |
| media_type_6opt | STRING | — | |
| media_7opt | * | — | |
| media_type_7opt | STRING | — | |
| media_8opt | * | — | |
| media_type_8opt | STRING | — | |
| media_9opt | * | — | |
| media_type_9opt | STRING | — | |
| media_10opt | * | — | |
| media_type_10opt | STRING | — | |
| media_11opt | * | — | |
| media_type_11opt | STRING | — | |
| media_12opt | * | — | |
| media_type_12opt | STRING | — | |
| media_13opt | * | — | |
| media_type_13opt | STRING | — | |
| media_14opt | * | — | |
| media_type_14opt | STRING | — | |
| media_15opt | * | — | |
| media_type_15opt | STRING | — | |
| media_16opt | * | — | |
| media_type_16opt | STRING | — | |
| media_17opt | * | — | |
| media_type_17opt | STRING | — | |
| _comet_run_modeopt | STRING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| query_info | STRING | — |