AD_MiniMax_Ref2V
The older MiniMax H3 ref-to-video node — same engine, manual sockets
- clip
- vae
- audio_vae
- ref_image_0
- ref_image_1
- ref_image_2
- ref_image_3
- ref_image_4
- ref_image_5
- ref_image_6
- ref_image_7
- ref_image_8
- ref_video_0
- ref_video_1
- ref_video_2
- ref_video_audio_0
- ref_video_audio_1
- ref_video_audio_2
- ref_audio_0
- ref_audio_1
- ref_audio_2
- positive
- latent
This is the node the pack's newer AD_MiniMax_guide grew out of, and the pack literally files it under Apt_Preset/AD/😺backup - the cat face is the author's "kept for compatibility" marker. It does the same core job as its successor: take a text prompt and a pile of reference media, and build the CONDITIONING + starting LATENT for a MiniMax H3 reference-to-video generation. The difference is how you attach the references. Where the guide node lets you dump media into one universal input and reference it by <Picture 1> tags in the prompt, this one gives you fixed, numbered sockets and you just write a plain prompt.
So which do you reach for? Honestly, the guide node. It's strictly more flexible and its tag system is the whole point of the pack's AD stack. But AD_MiniMax_Ref2V is worth knowing for two reasons: it's the one most existing pack workflows and shared JSONs use (so you'll bump into it when you load other people's graphs), and its explicit, single-purpose sockets are easier to reason about when you're first learning what each reference does. If you're reading this because a workflow you downloaded references it, that's exactly why.
How it works
Same machinery as AD_MiniMax_guide: it reuses ComfyUI's native H3 encode path (clip.tokenize with minimax_ref_items, then minimax_refs attached to the conditioning). Images are resized - match scales to canvas area, max aligns the 2048 short edge for better identity at a speed cost - then VAE-encoded. Reference videos are resampled to 24 fps and their frame counts snap to the H3 17k+5 grid. Audio goes through audio_vae at 32 kHz. There's no prompt rewriting here; the prompt is passed through as-is, so if you want the model to know which reference is which, you wire them to the right sockets and describe them in words.
The length tooltip is the same H3 reminder: frames at 24 fps, auto-snapped to 17k+5 (124 ≈ 5s).
Inputs and outputs
Required: clip, vae, audio_vae, prompt, width/height (multiples of 32), length (5–3600), and ref_image_size (match/max).
Optional references, all fixed slots:
ref_image_0throughref_image_8- nine image references.ref_video_0throughref_video_2- three reference videos, plusref_video_audio_0..2for the soundtrack of each.ref_audio_0throughref_audio_2- three standalone audio references (for voice, BGM, ambience).
Outputs: positive (CONDITIONING) and latent (LATENT) - straight into your sampler.
Installing it
Part of ComfyUI-Apt_Preset: Manager → search "ComfyUI-Apt_Preset", or
cd ComfyUI/custom_nodes
git clone https://github.com/cardenluo/ComfyUI-Apt_Preset
# then install.bat (Windows) or pip install -r requirements.txt, and restart
Load the H3 model with the pack's sum_load_MiniMaxH3 loader, which supplies the clip, vae, audio_vae, and a context.
Gotchas
Same family as its sibling. It requires a ComfyUI build with comfy_extras.nodes_minimax_h3; older builds throw "This ComfyUI build does not provide MiniMax H3 support." Reference videos need at least 5 frames, and a reference video's audio only lands if you wire the matching ref_video_audio_N socket. And no, don't panic if length won't accept your nice round number like 100 - it's snapping to the H3 grid, that's the model, not you.
Inputs (26)
| Name | Type | Default | Description |
|---|---|---|---|
| clip | CLIP | — | |
| vae | VAE | — | |
| audio_vae | VAE | — | |
| prompt | STRING | — | |
| width | INT | 51232–4096 | — |
| height | INT | 76832–4096 | — |
| length | INT | 1245–3600 | 帧数(24 fps),自动 snap 到 17k+5 网格(124 ≈ 5s) |
| ref_image_size | COMBO | match | 'match' 缩放到画布面积;'max' 对齐 2048 短边(身份更好但更慢) |
| ref_image_0opt | IMAGE | — | |
| ref_image_1opt | IMAGE | — | |
| ref_image_2opt | IMAGE | — | |
| ref_image_3opt | IMAGE | — | |
| ref_image_4opt | IMAGE | — | |
| ref_image_5opt | IMAGE | — | |
| ref_image_6opt | IMAGE | — | |
| ref_image_7opt | IMAGE | — | |
| ref_image_8opt | IMAGE | — | |
| ref_video_0opt | IMAGE | — | |
| ref_video_1opt | IMAGE | — | |
| ref_video_2opt | IMAGE | — | |
| ref_video_audio_0opt | AUDIO | — | |
| ref_video_audio_1opt | AUDIO | — | |
| ref_video_audio_2opt | AUDIO | — | |
| ref_audio_0opt | AUDIO | — | |
| ref_audio_1opt | AUDIO | — | |
| ref_audio_2opt | AUDIO | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| positive | CONDITIONING | — |
| latent | LATENT | — |