Nodes/MiniMax H3/MiniMax H3 Decode AV
ComfyUI Node

MiniMax H3 Decode AV

MiniMax H3 Decode AV — the node that turns the joint latent back into pictures and sound

By xiaolibai-sys·Created about a month ago·Updated 29 days ago· 10
MiniMax H3 Decode AV
  • latent
  • av_encoder
  • video
  • audio

After the KSampler you're holding a latent - a compressed tensor that is neither frames nor sound yet. This is the node that unpacks it. MiniMax H3 Decode AV runs the video VAE to turn the video part of the latent into an IMAGE tensor (your frames), and the audio VAE to turn the audio part into a waveform. Two outputs: video and audio. It's the last node in every standard H3 workflow, and usually the point where you finally see whether all that BlockSwap patience was worth it.

How it works

It takes the MINIMAX_H3_LATENT from the KSampler plus the av_encoder reference from the VAE Loader. The VAEs are loaded lazily here - this is the moment the video and audio autoencoders actually get pulled off disk. The video latent is decoded and converted from [B,3,T,H,W] in −1..1 range to [T,H,W,3] in 0..1 (the IMAGE format ComfyUI's preview and save nodes expect). The audio latent is decoded to a waveform and handed out as an AUDIO dict at 32 kHz - the standard ComfyUI audio container.

If no audio VAE was configured (the VAE Loader's audio_vae_name is "none"), it doesn't crash - it returns a silent track instead, so your workflow keeps running and the silence is your cue that the audio VAE is missing. If the sampler handed back a rolling output (a long-form result), the decode path short-circuits and passes the already-decoded media straight through.

The inputs and outputs

  • latent (required) - MINIMAX_H3_LATENT from the KSampler.
  • av_encoder (required) - MINIMAX_H3_AV_ENCODER from the VAE Loader.

Outputs: video (IMAGE, the frame batch) and audio (AUDIO, stereo at 32 kHz). Wire these into a preview node, a video save node (like VHS or the pack's preferred muxer), and an audio save node. The README's Ref2VA workflow shows the shape: VAE Loader feeds both Conditioning and Decode.

Installing it

Pack-wide routine - ComfyUI Manager search "MiniMax H3", or:

cd ComfyUI/custom_nodes
git clone https://github.com/xiaolibai-sys/ComfyUI-MiniMaxH3
pip install -r requirements.txt

then restart. The heavy part is the VAE files in ComfyUI/models/vae/ - both video and audio VAE downloads, or you'll decode frames without sound.

Common issues

  • Video decodes, no audio. The audio_vae_name is "none" in the VAE Loader. Pick the audio VAE and re-run.
  • Black frames or garbage. Your latent/VAE pair doesn't match. If the conditioning encoded references with a different VAE than the one decoding, spaces get misaligned - keep one VAE Loader feeding both Conditioning and Decode.
  • Very slow decode on big batches. Decoding a 15-second 2K clip is real work on both VAEs. Tiled decode isn't built in here; give it a moment rather than assuming a hang.
CategoryMiniMax-H3/decode

Inputs (2)

NameTypeDefaultDescription
latentMINIMAX_H3_LATENT
av_encoderMINIMAX_H3_AV_ENCODER

Outputs (2)

NameTypeDescription
videoIMAGE
audioAUDIO