MiniMax H3 Media Conditioning
Images, video refs and audio in one node
- media
- clip
- vae
- audio_vae
- positive
- latent
MiniMax H3 takes four kinds of reference material in one conditioning call - images, reference videos, those videos' soundtracks, and standalone audio - and the native ComfyUI implementation exposes all of it as a wall of optional inputs you must size, count and align by hand. Sample at the wrong length and the audio track runs out before the video does. Sample a reference video at full resolution and you've spent your VRAM budget on a clip the model downscales anyway.
HenjiccMiniMaxMedia - MiniMax H3 Media Conditioning, Henjicc/Media - collapses that into one node. Give it your asset strip plus the three host loaders and it hands back positive conditioning and a latent, already matched to each other.
Two modes, one node
The mode comes from the media bundle's profile, and the two paths do genuinely different things.
First/last frame mode (minimax_frames) calls the host's MiniMaxH3ImageToVideo with zero, one or two images. Here the node is quietly fixing a real annoyance: native H3 stretches the first frame to the target canvas and centre-crops the last one, so your two frames end up geometrically disagreeing about what the shot is. This node runs both through a contain-fit to width × height with black letterboxing first, so the pair agrees before H3 sees them.
Reference mode (minimax_reference) is the multi-asset path. Every image goes in as ref_image_N; each video is decoded at the video_megapixels budget and, if you enabled its soundtrack, its audio is trimmed to the aligned frame count so picture and sound end at the same instant; standalone audio is decoded to 32 kHz stereo. Then it hands the lot to the host's MiniMaxH3ReferenceToVideo with match sizing and the video and audio VAEs.
Both modes are budget-checked rather than trusted: reference video totalling more than 15 seconds fails, and so does reference audio over 15 seconds. Better a clear error than a run that quietly eats 20 GB and gives you four seconds of usable reference.
The inputs you touch
media- the bundle from Super Input. Profile must be Minimax reference or Minimax first/last, otherwise "Select MiniMax mode."clip,vae,audio_vae- three separate host loaders. H3 is the rare model with a distinct audio VAE, and yes, you need it even when you're not using reference audio.width/height- 32-pixel steps, 32 to 2048, defaults 832×480.length- frames, default 124, min 5, step 17. That step is H3's 17k+5 latent grid showing through; the host'salign_frame_countdumps anything off it.video_megapixels- 0.05 to 1, default 0.4, the decode budget for reference videos only.
Outputs are just positive and latent. positive goes into your guider or sampler's positive slot; latent is the empty latent of the right shape. Negative conditioning is your problem, as it is everywhere in this architecture.
Install
cd ComfyUI/custom_nodes
git clone https://github.com/henjicc/ComfyUI-Henjicc.git ComfyUI-Henjicc
python -m pip install aiohttp av numpy Pillow
Manager users: search comfyui-henjicc, restart, refresh. No models ship with the pack - H3, its encoder and both VAEs are yours to supply. And this node imports comfy_extras.nodes_minimax_h3 at execution time, so an old ComfyUI without native H3 support fails at run rather than at startup; if you get an import error from comfy_extras, update ComfyUI before debugging anything else here.
Where it goes wrong
Wrong encoder. H3's 32B encoder is a cut-down 50-layer thing intended for conditioning only. It is not a chat model, and it can't generate text - which is why the pack's Qwen3-VL prompt assistant rejects it outright. Don't try to reuse it for prompt rewriting.
Soundtrack without a soundtrack. If a video item has "use soundtrack" enabled and the file has no audio stream, the Super Input fails first with "Video has no soundtrack; turn off Use soundtrack." Sane, but it means the error appears on a different node than the one you were editing.
One reference too many. Reference mode is capped at nine images, three videos and three standalone audio, twelve items total. The node's own message mentions the duration budgets; the count limits bite earlier.
Licence check, honestly. H3's open weights exclude the US, EU, UK and Korea from their applicable territory. If you're building a client workflow on top of this, that's a question for before the workflow, not after.
Inputs (8)
| Name | Type | Default | Description |
|---|---|---|---|
| media | HENJICC_MEDIA | — | |
| clip | CLIP | — | |
| vae | VAE | — | |
| audio_vae | VAE | — | |
| width | INT | 83232–2048 | — |
| height | INT | 48032–2048 | — |
| length | INT | 1245–362 | — |
| video_megapixels | FLOAT | 0.400.05–1 | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| positive | CONDITIONING | — |
| latent | LATENT | — |