Extensions/comfyui-vidia-open-studio-node
ComfyUI Extension

comfyui-vidia-open-studio-node

Vidia Open Studio video saver custom node for ComfyUI: watermark, ffmpeg mux, R2 upload, backend notify.

By Vidia-Tools·Created about a month ago·Updated about a month ago· 0
Vidia-Tools/Vidia-Open-Studio-Nodes
Nodes
On cloudLocal install
Stars0
Updatedabout a month ago
Readme

comfyui-vidia-open-studio-node

Vidia Open Studio video saver custom node for ComfyUI. This is the Open Studio node pack. Takes generated frames and produces a finished video: optional corner/append watermarks, ffmpeg encode, audio mux, metadata strip, Cloudflare R2 upload, and a videoReady callback to the Vidia backend.

Part of Vidia Open Studio. Development happens on GitHub; the Codeberg mirror is read-only and is what the GPU worker clones at boot. Licensed under FSL-1.1-Apache-2.0 (see LICENSE.md).

Requirements

  • ComfyUI with the V3 node API (comfy_api.latest). Target: ComfyUI >= v0.24.
  • ffmpeg on PATH.
  • Python deps in requirements.txt: boto3, python-dotenv, requests.

Install

Drop this folder into ComfyUI/custom_nodes/ and install dependencies:

pip install -r requirements.txt

Configuration

All configuration is environment-based. Copy .env.example to .env and fill in the values. Required for upload + backend notify:

  • VIDIA_BACKEND_URL, RUNPOD_CALLBACK_SECRET
  • S3_PUBLIC_URL_PREFIX, S3_ENDPOINT_URL, S3_ACCESS_KEY_ID, S3_SECRET_ACCESS_KEY, S3_BUCKET_NAME, S3_REGION_NAME

Optional:

  • VIDIA_API_ENDPOINT + VIDIA_REMOTE_LOGGING=true to ship processing logs to a remote endpoint. Off by default (each log line is otherwise a local print).

Node

VidiaVideoSaver (category Vidia) is an output node. It is marked not_idempotent so the R2 upload and backend callback always run, even when upstream inputs are unchanged. Output type is the custom VIDIA_FILENAMES tuple (save_output, [file_paths]).

Inputs

  • images (IMAGE, required)
  • frame_rate (FLOAT, default 8)
  • filename_prefix (STRING, default Vidia)
  • format (COMBO: image/gif, image/webp, plus video/* from video_formats/*.json)
  • save_output (BOOLEAN, default true)
  • audio (AUDIO, optional, lazy)
  • append_watermark (IMAGE, optional)
  • watermark_audio (AUDIO, optional, lazy)
  • corner_watermark (IMAGE, optional)
  • corner_watermark_mask (MASK, optional)
  • corner_opacity (FLOAT, 0.0 to 1.0, default 0.4)
  • append_watermark_source_fps (FLOAT, 0 to 120, default 0)

Video formats

Format presets live in video_formats/ (e.g. h264-mp4.json). Each preset defines extension, main_pass (ffmpeg video args), audio_pass, and save_metadata.