Nodes/ComfyUI-Animon/Upload Video (from Tensor)
ComfyUI Node

Upload Video (from Tensor)

Re-encode a ComfyUI video tensor to MP4 and upload it to Animon

By IamCreateAI·Created 10 months ago·Updated 9 months ago· 0
Upload Video (from Tensor)
  • animon_key
  • video
  • VIDEO_ID

The node for videos you made yourself, not files you found

The Animon generation and upscale nodes work on server-side VIDEO_IDs, and most of the time your video starts life inside ComfyUI as a VIDEO tensor - fresh out of a local video model or a LoadImage → SaveVideo cycle. Animon Upload Video (from Tensor) takes that tensor, encodes it to an in-memory MP4, uploads it to Animon, and hands you the VIDEO_ID that everything downstream wants.

It's the video counterpart to Upload Image (from Tensor), and it exists for one reason: to let the output of your local pipeline walk directly into a cloud upscale without you manually exporting and re-importing a file.

How it works

The node takes the VIDEO tensor, permutes it from frames-first to channels-first, scales it to 0–255, and encodes it with PyAV (libx264, yuv420p) at a fixed 30 FPS into an in-memory buffer. That buffer goes to Animon's files.create with purpose="video_generation", and the returned ID comes out as VIDEO_ID.

Two details from the source are worth filing away. First, the 30 FPS is hardcoded - whatever your source video's actual frame rate, the upload re-encodes it at 30 FPS, so a 16 FPS Animon generation re-uploaded this way silently changes timing. Second, PyAV is used but not listed in the pack's requirements.txt (which only has openai and decord). In practice it's fine because ComfyUI itself ships PyAV for its video nodes - just know the pack is leaning on ComfyUI's bundle rather than its own dependency list.

Installing and the honest trade-off

Pack-standard install: ComfyUI Manager → search ComfyUI-Animon → restart, Key node wired in. No model downloads.

The trade-off is the re-encode. This node is the right tool when the video genuinely exists as a tensor - you generated it locally and want it upscaled. If the clip is Animon's own output, you're throwing away quality by converting it: Upload Video (from Bytes) takes the generation node's raw VIDEO_BYTES and skips re-encoding entirely, which the README calls out as both faster and better. And if you just have a file, Upload Video (from File) is simpler. Use the tensor path only when the tensor is where the video actually lives.

CategoryAnimon/Upload

Inputs (2)

NameTypeDefaultDescription
animon_keyANIMON_KEY
videoVIDEO

Outputs (1)

NameTypeDescription
VIDEO_IDANIMON_VIDEO_ID