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

Upload Image (from Tensor)

Upload the image your SD pipeline just made, straight from the tensor

By IamCreateAI·Created 10 months ago·Updated 9 months ago· 0
Upload Image (from Tensor)
  • animon_key
  • image
  • IMAGE_ID

The node that connects local generation to cloud video

This is the upload node for the case where your first frame doesn't exist as a file yet - it's a tensor, fresh out of your local SD pipeline. Animon Upload Image (from Tensor) takes a ComfyUI IMAGE, converts it to PNG bytes in memory, uploads it to Animon, and returns an IMAGE_ID you can feed straight into Start-End to Video.

It's the bridge between the local and cloud halves of the workflow. The README's example literally shows it chained after LoadImage as an alternative to uploading files directly: LoadImage → Animon Upload Image (from Tensor). But its real home is the end of a generation chain - KSampler → VAE Decode → this node → Start-End to Video - where saving and reloading a file would be pure waste.

How it works

The node converts the input IMAGE tensor to a PIL image (tensor_to_pil), then to an in-memory PNG buffer, then calls Animon's files.create with purpose="video_generation" and returns the server's file ID. All the work is done in memory - nothing touches your disk, nothing gets re-encoded into a lossy intermediate. The image input is a plain IMAGE tensor, and the output is the ANIMON_IMAGE_ID that the interpolation node wants.

One thing worth knowing: the conversion path is capped at 6000 × 6000 pixels in the source. Anything your local pipeline produces will upload fine; it's just a sanity ceiling on the tensor-to-PIL conversion rather than something you'll normally hit.

Installing and the honest trade-off

Pack-standard install: ComfyUI Manager → search ComfyUI-Animon → restart, Key node wired in, no extra models. If you cloned manually, pip install -r requirements.txt covers it (just openai and decord).

The trade-off is where you use it. This node is ideal when the frame comes from your own diffusion - you're only ever a few nodes from the IMAGE_ID. If you already have the image as a file on disk, Upload Image (from File) is simpler and gives you the same IMAGE_ID. The other thing to remember: this is still an upload to a cloud service, so it costs time on your connection and the generation it feeds is a paid API call. Uploading the same tensor twice is wasted effort - hold onto the IMAGE_ID and reuse it, exactly like the README's tip about reusing IDs when start and end frames match.

CategoryAnimon/Upload

Inputs (2)

NameTypeDefaultDescription
animon_keyANIMON_KEY
imageIMAGE

Outputs (1)

NameTypeDescription
IMAGE_IDANIMON_IMAGE_ID