Nodes/PoYo AI/PoYo Generate Video
ComfyUI Node

PoYo Generate Video

Video from a text box, saved straight into ComfyUI/output/poyo

By PoyoAPI·Created about a month ago·Updated about a month ago· 0
PoYo Generate Video
  • image
  • file_url
  • local_path
  • task_id
  • response_json
model
prompt
input_json{}
media_fieldimage_urls
poll_interval3
timeout3600
model_id_override
filename

A text-to-video model running on your own GPU is a luxury - VRAM-hungry, fiddly, and slow. This node sidesteps the whole problem by not running anything: you pick a PoYo video model from the dropdown, type a prompt (and optionally wire in a starting image), and the model generates on PoYo's servers while the node waits. When it's done, the video is downloaded and written under ComfyUI/output/poyo, and you get the path back.

It's the same shape as the pack's image node - submit, poll, download - with one important difference you should know before wiring it in: there is no VIDEO output socket. The node doesn't decode the result into a video tensor for downstream nodes to consume. Its outputs are file_url and local_path (both STRING), plus task_id and response_json. So this is a fetch-and-save node, not a pipe into a video-editing graph. Want the clip in the ComfyUI output folder so you can grab it, name it, and move on? Perfect fit. Want to chain it into more video processing? This isn't your node.

Mechanism. The model dropdown comes from PoYo's live catalog, cached 15 minutes. On run, it uploads any connected IMAGE as a PNG (that's how you do image-to-video - pass a first frame into the image socket and the model takes it from there), submits your prompt, and polls the status endpoint until the job is finished. Then it downloads the first media URL from the response and saves it to disk. The optional filename input is your chance to control the saved name; leave it blank and it derives one from the URL, and the pack sanitizes the filename and de-duplicates (appending -2, -3, …) so you never overwrite a previous take.

The advanced fields are the same family as the rest of the pack: model_id_override for typing a model ID when the catalog fetch fails (dropdown stuck on (enter model ID below)), input_json for model-specific parameters, media_field if a model uses a different key than the default image_urls, and poll_interval/timeout for the wait.

Install and the one real gotcha. This pack needs ComfyUI 0.32.0+ (it uses the newer native node system). Install via ComfyUI Manager (search "PoYo"), comfy node install poyo-nodes, or:

cd ComfyUI/custom_nodes
git clone https://github.com/PoyoAPI/poyo-comfyui.git

then restart. No model downloads - the models live on PoYo's side.

The gotcha is cost. Video is where per-call API pricing gets brutal fast - a handful of clips can burn what a month of local generation costs in electricity. Check PoYo's pricing for the model you pick before you queue up a batch, because unlike an image, a 10-second video job failing at the last second still cost you. Also remember your key: set POYO_API_KEY (or run python -m poyo_nodes.configure), never paste it into a node field. And since this is an early pack with no community track record to lean on, it's worth a skim of the source before you hand it a credential - API nodes are the category that's been abused before.

CategoryPoYo AI/Generate

Inputs (9)

NameTypeDefaultDescription
modelCOMBO1 options: (enter model ID below)
promptSTRING
input_jsonSTRING{}
media_fieldSTRINGimage_urls
poll_intervalFLOAT31–60
timeoutINT36001–86400
imageoptIMAGE
model_id_overrideoptSTRING
filenameoptSTRING

Outputs (4)

NameTypeDescription
file_urlSTRING
local_pathSTRING
task_idSTRING
response_jsonSTRING