
Veo 3.1 ComfyUI Nodes
https://github.com/anil-matcha/veo3.1-comfyui- Category
- AI Tools
- Rank
- No. 1622Tools index
- Pricing
- Open Source
- Type
- TOOL
- Builder
- Anil-matcha
- GitHub
- 6 stars
- Date
About
ComfyUI custom nodes for Google Veo 3.1 video generation — text-to-video, image-to-video, reference-to-video, extend, and 4K upscale via MuAPI.
What it does
It turns remote video jobs into composable ComfyUI graph steps. Each generation node submits inputs to MuAPI, polls until completion, then exposes a video URL, preview frame, and reusable request identifier. A saver node downloads the result and converts selected frames into image tensors.
Why it's ranked here
The package covers a practical workflow from prompt or source images through preview, continuation, upscaling, download, and frame reuse. Three loadable example graphs reduce setup work, while explicit authentication, credit, rate-limit, failure, and timeout handling make remote execution easier to diagnose.
What's good
Inputs and outputs fit ComfyUI conventions instead of stopping at an API response. Image uploads accept tensors, generation returns a first-frame tensor, and saved videos can return every frame or a sampled subset. Request identifiers connect earlier generations to continuation and upscaling steps.
Tradeoffs
Every generation depends on MuAPI, an API key, network access, and sufficient credits. Output duration is fixed at eight seconds. Polling runs every ten seconds for up to fifteen minutes. Preview extraction failures return a blank tensor, while saver decoding failures can return a dummy frame instead of stopping the graph.
How to use it well
Use it when ComfyUI already coordinates your image and video processing, especially when generated frames must feed later nodes. Start from the supplied example graphs, then add continuation or upscaling through the returned request identifier. It does not provide local inference, a standalone application, or a general scripting library.
Technical notes+
__init__.py merges node registries from veo31_nodes.py and veo31_video_saver.py. In veo31_nodes.py, _submit_job posts JSON to MuAPI, _poll_result checks prediction status every 10 seconds with a 900-second ceiling, _upload_image converts the first tensor image to JPEG, and _first_frame_from_url downloads the MP4 for OpenCV decoding. veo31_video_saver.py writes numbered MP4 files beneath ComfyUI's output directory, supports frame caps, initial-frame skipping, and stride sampling, then returns an IMAGE tensor plus path and count. requirements.txt declares requests, Pillow, NumPy, Torch, and OpenCV. Three MuAPI_Veo31_*_Example.json files provide loadable graphs.
Observed
- License
- MIT
- Primary language
- Python
- Install surface
- ComfyUI custom-node package installed by cloning and installing requirements with pip
- Interface
- ComfyUI nodes backed by the MuAPI HTTP API
- Runtime support
- Python 3.8 or newer with a recent ComfyUI installation
- Dependencies
- requests, Pillow, NumPy, Torch, and OpenCV
- Examples
- Three ComfyUI workflow JSON examples cover text, image, and reference inputs
Read from README.md, requirements.txt, __init__.py, veo31_nodes.py, veo31_video_saver.py, LICENSE, MuAPI_Veo31_I2V_Example.json, MuAPI_Veo31_T2V_Example.json, MuAPI_Veo31_Reference_Example.json.
What it can do
Generate video from text description
Text prompt describing desired video content → Generated video file
Generate video from image
Static image file → Video file animated from the input image
Generate video from reference material
Reference video or image content → New video based on reference style or content
Extend existing video duration
Existing video file → Longer video with extended content
Upscale video to 4K resolution
Lower resolution video file → 4K resolution video file
Tags
Tech Stack
Comments (0)
No comments yet
Editorially curated, with community endorsements as a secondary signal. Corrections welcome.