MiniMax H3 Decode AV
MiniMax H3 Decode AV — the node that turns the joint latent back into pictures and sound
- 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_LATENTfrom the KSampler.av_encoder(required) -MINIMAX_H3_AV_ENCODERfrom 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_nameis"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.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| latent | MINIMAX_H3_LATENT | — | |
| av_encoder | MINIMAX_H3_AV_ENCODER | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| video | IMAGE | — |
| audio | AUDIO | — |