Nodes/VELVET VICE — MiniMax H3/VELVET VICE MiniMax H3 — Live Preview
ComfyUI Node

VELVET VICE MiniMax H3 — Live Preview

Watch an H3 render cook in real time without trusting the pixels

By Velvet-Vice·Created 10 days ago·Updated 7 days ago· 2
VELVET VICE MiniMax H3 — Live Preview
  • model
  • video_vae
  • model
enabledtrue
preview_fps24
preview_quality3
max_preview_edge1024

Waiting on an H3 render while staring at a progress bar that doesn't show you anything is a special kind of torture. Video sampling takes long enough that the whole-shot preview - frames appearing as the sampler refines them - is less a nicety and more the only way to know you're not ten minutes into a render of a composition you already hate. VelvetViceMiniMaxH3LivePreview is the pack's answer: it attaches to ComfyUI's sampling callback and streams preview frames to the frontend as the render cooks.

The name "whole-shot" matters. Where image previews show a single noisy latent being refined, video previews have to show you frames in time. This node unpacks H3's packed AV latent - audio and video share one latent in H3 - using ComfyUI's own unpacker, and streams a buffered set of JPEG frames to the frontend paced by a real FPS clock.

How it works

The node wraps the model you feed it (model in, model out - it never touches the actual sampling math). It hooks ComfyUI's OUTER_SAMPLE callback, so every sampling step hands it the latent to visualize. The quality ladder is where the trade-offs live:

  • LOW - latent2rgb conversion. No extra decoder needed, fast, ugly. Fine for "is the composition right?"
  • MEDIUM - H3's TAEHV approximation decoder (taeh3_decoder.safetensors), which you install into models/vae_approx. The practical default: near-final quality without running the full VAE every step.
  • HIGH - the full H3 video VAE, wired in through the optional video_vae input. Best fidelity, and heavy enough that you don't want it firing every step on a 33B render.

Controls: enabled (default true), preview_fps (default 24), preview_quality (0–3, mapping to that ladder), and max_preview_edge (up to 1024px) to cap decode cost.

The two sentences in the description that should reassure you: "Preview failures never abort or modify final sampling." This node is a passenger, not a driver - if the preview decoder crashes, the render continues and you just lose the show.

Inputs and outputs

  • model (MODEL) - the H3 model, passed through unchanged.
  • enabled, preview_fps, preview_quality, max_preview_edge - the tuning set above.
  • video_vae (VAE, optional) - only needed for the HIGH tier.

Output: model (MODEL).

Install

cd ComfyUI/custom_nodes
git clone https://github.com/Velvet-Vice/velvet-vice-minimax-h3

then restart. For MEDIUM-tier previews, grab the optional decoder and drop it in:

models/vae_approx/taeh3_decoder.safetensors

(the portable Civitai release bundles an _INSTALL_H3_PREVIEW_TAEHV.cmd that does this for you).

One honest warning about live previews generally: they're great for catching a bad seed early, but don't trust them for final quality - they're low-res decodes of an intermediate latent, and the last few steps do real work. The author's LOW / MEDIUM / HIGH tiers exist precisely so you can pick how much fidelity you're willing to pay for on frames you're going to throw away anyway. When in doubt, MEDIUM.

CategoryVELVET VICE/MiniMax H3/Preview

Inputs (6)

NameTypeDefaultDescription
modelMODEL
enabledBOOLEANtrue
preview_fpsFLOAT241–30
preview_qualityINT30–3
max_preview_edgeINT1024384–1024
video_vaeoptVAE

Outputs (1)

NameTypeDescription
modelMODEL