Nodes/ComfyUI_Catsapi/CatsAPI Gemini Omni Flash
ComfyUI Node

CatsAPI Gemini Omni Flash

A Gemini video clip in your graph, no GPU required

By maodeyu180·Created 2 months ago·Updated a day ago· 1
CatsAPI Gemini Omni Flash
  • start_image
  • video_path
  • cost_coins
  • task_id
  • metadata
prompt
duration5
aspect_ratio16:9
max_coins0
api_key_override

The Gemini Omni Flash node is the shortest road from a text prompt to a Google-generated video clip inside ComfyUI. No GPU, no model download, no VAE, no ffmpeg pipeline to babysit - just a CatsAPI key and enough coins in the account. It's one of the four video nodes in the ComfyUI_Catsapi pack, and it has the tightest feature surface of all of them: pick a length, pick an orientation, type a prompt, get an mp4.

Why you'd reach for it

Google's video models are closed. You can't download Gemini Omni Flash any more than you can download Veo, so the only way to get one into a ComfyUI graph is through an API wrapper node - the same pattern as the official ComfyUI Partner Nodes, except the bills go to CatsAPI (猫影工坊 / CatPic AI) instead of a Comfy account. If you already run open video models like Wan or LTX locally, think of this as a complement, not a replacement: it's for the shots your local model can't hit, or for a machine with no GPU at all. The catch that comes with every API node applies here in full - your prompt and any start image leave your machine, Google's own content policy is the filter you can't argue with, and every run costs coins.

How it works

The node is a thin HTTP client, not a sampler. On execute it takes your prompt (plus an optional start image), sends them to catsapi.com with your key, and gets back a task id. Then it polls every three seconds - up to a 15-minute timeout - until the job completes, downloads the finished .mp4 into ComfyUI/output/catsapi/, and hands the path back to your graph. Before submitting, it asks the server for a cost preview and refuses to run if your balance won't cover it or the price blows past max_coins. There's no pip install behind any of this: the client is plain Python stdlib, so the pack is clone-and-go.

The inputs that matter

  • prompt - multiline text. This is the whole job.
  • duration - 5 to 10 seconds, default 5. That's the entire length range; there's no longer clip here.
  • aspect_ratio - just 16:9 or 9:16. Note there's deliberately no resolution or mode input; the node doesn't even send those fields.
  • max_coins - your spending gate. 0 means "no cap"; a positive number cancels any task whose preview exceeds it. Set this before you hand the queue to a toddler.
  • start_image (optional) - a single IMAGE to use as the start frame. Wire it from any Load Image node.
  • api_key_override - leave it empty on your own machine.

Outputs

The node is an output node returning four things: video_path (the mp4 on disk - point a video player/loader at it, or just grab the file), cost_coins (what the run cost), task_id (handy when talking to CatsAPI support), and metadata (JSON with the model, params, and paths).

Installing

cd ComfyUI/custom_nodes
git clone https://github.com/maodeyu180/ComfyUI_Catsapi.git

Restart ComfyUI, then set a key before launching:

export CATSAPI_API_KEY=cats-your-key
python main.py

If the shell env doesn't reach ComfyUI, it also reads ~/.catsapi.env or a .env in the node folder. Keys must start with cats-, and any key containing ... is treated as a truncated placeholder and rejected before a request goes out.

Common issues

  • "No valid CATSAPI_API_KEY" - nothing configured, or the key is mistyped. Get a real one at catsapi.com.
  • It takes minutes and looks hung. Video jobs genuinely poll for a while. The 15-minute timeout is long, but the node errors out with the task status rather than spinning forever.
  • "HTML verification page" download error. The CDN challenged the download; the client retries with curl and browser-ish headers. If both fail, re-run - these are transient.
  • Costs. Video is where coin spend sneaks up. Start at 5 seconds, watch cost_coins, and keep max_coins low while you experiment.

One honest note: this is a young pack from the service's own developer and you won't find much Reddit chatter about it. Treat any paid-API wrapper with the usual caution about where your key and images are going, and never share a workflow with api_key_override filled in - the value lands in the workflow JSON.

CategoryCatsAPI/Video

Inputs (6)

NameTypeDefaultDescription
promptSTRING
durationCOMBO56 options: 5, 6, 7, 8, 9, 10
aspect_ratioCOMBO16:92 options: 16:9, 9:16
max_coinsINT00–100000
start_imageoptIMAGE
api_key_overrideoptSTRING

Outputs (4)

NameTypeDescription
video_pathSTRING
cost_coinsINT
task_idSTRING
metadataSTRING