ComfyUI Node

Preview Video X

The preview node that quietly saves too

By haroonaslam·Created 4 months ago·Updated a day ago· 10
Preview Video X
  • video
  • video
  • filenames
save_outputfalse
filename_prefixWorkflowX/preview-video

The name is only half a lie. Preview Video X does preview - it's the terminal output node of WorkflowX's video lane, the one you drop at the end of a video pipeline to actually see the thing. But flip one toggle on it and it's also a save node, and no matter which way you set it, the VIDEO you feed it passes through completely untouched. You never risk modifying your footage to look at it.

Here's the mental model that makes it click: ComfyUI's native video is lazy, but its player needs a real, encoded file. So this node always materializes the minimum H.264 MP4 that the browser player requires and shows it right on the node face. Where that file lands is the only real decision you make.

The inputs that matter

There are exactly three, and you'll touch two of them:

  • video (VIDEO, required) - "Native ComfyUI video to preview." Wire in anything that emits the native type: Load VideoX Adv, a video model's output, whatever.
  • save_output (BOOLEAN, default off) - off writes the preview to ComfyUI's temporary directory, on writes the same MP4 to your normal output directory. This is the save toggle.
  • filename_prefix (STRING, default WorkflowX/preview-video) - only matters when save_output is on; it's the prefix for the saved file.

The two outputs: video passes the original through unchanged, and filenames (VHS_FILENAMES) describes the temporary or saved preview file - the same filename type Video Helper Suite consumers expect, so it plays nice with tooling that reads it.

How the encoding works

The node encodes the preview with PyAV - ComfyUI's own bundled dependency, so nothing extra to install - as MP4/H.264. One quirk worth knowing: H.264 requires even frame dimensions, so an odd-sized video gets at most one black pixel added to the right or bottom of the preview copy. The pass-through VIDEO stays exactly as it was, so if you ever see a one-pixel line in the preview, that's the codec, not your video. There's also a graceful fallback baked in: if a stream-copy hits an avcodec_open2 error in a given PyAV build, it silently re-encodes a conservative 8-bit browser-safe copy instead of dying on you.

Why you'd reach for it

Two honest use cases. First: you've built a video graph and you just want to watch the result without wiring up a full Save Video node - this is the lightweight look-and-see. Second: you've got a trimmed VIDEO from Load VideoX Adv and you want to keep it. Flip save_output on, and the same minimal encode becomes a persistent MP4 in your output folder, named via filename_prefix. It's not a replacement for Save Video X (that one gives you H.265/AV1, CRF control, audio bitrate, metadata previews, the works) - it's the quick path.

Installing it

Part of the WorkflowX pack. In ComfyUI Manager, search "WorkflowX" and install WorkflowX-Configurator, or:

cd ComfyUI/custom_nodes
git clone https://github.com/haroonaslam/WorkflowX-Configurator

Restart ComfyUI and hard-refresh the browser. No extra Python deps, no model downloads - this pack declares zero dependencies and leans on what ComfyUI already ships, which is also why the native VIDEO type needs a reasonably up-to-date ComfyUI to exist at all.

Common issues

The #1 gotcha is people hunting in the wrong folder: with save_output off, the preview lives in ComfyUI's temp directory, so it can be overwritten or cleaned up - it's a preview, not a deliverable. If you want the file to survive, turn save_output on. If the node is missing entirely, update ComfyUI (the native video API is recent), restart, and check WorkflowX_PreviewVideoX in /object_info. And remember the one-pixel H.264 padding thing before you blame a source video for a hairline black edge in the preview.

It's a small, focused node from a young single-author pack - not much community noise around it yet, but for "let me actually see the video I just made," it does exactly one job and does it cleanly.

CategoryWorkflowX/Video

Inputs (3)

NameTypeDefaultDescription
videoVIDEONative ComfyUI video to preview.
save_outputBOOLEANfalse
filename_prefixSTRINGWorkflowX/preview-video

Outputs (2)

NameTypeDescription
videoVIDEO
filenamesVHS_FILENAMES