Video To Blob Node
Export your VIDEO tensor as MP4, GIF, or WebP bytes for any API
- video
- video_bytes
- frame_count
The Video To Blob Node is the video-side sibling of Audio To Blob Node: it takes ComfyUI's VIDEO type - a tensor of frames plus timing info - and encodes it to actual video bytes your HTTP nodes can send. MP4, GIF, or WebP, your pick, with frame rate control. It's the node that lets a video workflow hand a clip to a processing API instead of just previewing it locally.
It's one of the new nodes in ComfyUI-HttpRequestNodes, ahkimkoo's fork of felixszeto's ComfyUI-RequestNodes, and it's genuinely the part of the fork that didn't exist upstream. On the send side it feeds the Binary Post Request Node (raw bytes) or Media Form Post Node (MP4 as a form file); on the way back in, Blob To Video Node decodes a response into a VIDEO tensor again.
The inputs that matter
video(VIDEO) - required. The node deliberately handles both VIDEO representations floating around the ecosystem: the VideoHelperSuite style ({"video_info": {...}, "frames": tensor}) and ComfyUI's native{"frames": tensor, "frame_rate": float}. It reads either.frame_rate(INT, default 0) - the tooltip says it plainly:0 = auto-detect from VIDEO type. Detection order in the source: your explicit value, then the VIDEO's ownframe_rate, thenvideo_info.fps, then a 24 fps fallback.output_format-mp4,gif, orwebp, default mp4.
The outputs are video_bytes (BYTES) and frame_count (INT) - the latter is handy for sanity-checking that the right number of frames made it out.
How it works
Under the hood it's imageio writing to an in-memory buffer, frames converted to uint8. If the input is a batched tensor it squeezes the batch dimension, so feed it a single video (a batch of several will misbehave - the encoder expects one clip). The GIF and WebP options are a nice touch for sending lightweight previews to an endpoint that can't take video files. The one dependency to remember is imageio-ffmpeg, which provides the actual MP4 codec - without it, mp4 output fails even though gif/webp work.
Install
ComfyUI Manager → search ComfyUI-HttpRequestNodes → Install, restart. Or:
cd ComfyUI/custom_nodes
git clone https://github.com/ahkimkoo/ComfyUI-HttpRequestNodes
pip install soundfile imageio imageio-ffmpeg
Category: RequestNode/Converters. imageio and imageio-ffmpeg are the real requirements here (plus soundfile for the pack's audio nodes). If your first mp4 encode throws, the pip install imageio imageio-ffmpeg line above is the fix. No models, no keys.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| video | VIDEO | — | |
| frame_rateopt | INT | 00–120 | 0 = auto-detect from VIDEO type |
| output_formatopt | COMBO | mp4 | 3 options: mp4, gif, webp |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| video_bytes | BYTES | — |
| frame_count | INT | — |