Nodes/ComfyUI-Apt_Preset/AD_MiniMax_Ref2V
ComfyUI Node

AD_MiniMax_Ref2V

The older MiniMax H3 ref-to-video node — same engine, manual sockets

By cardenluo·Created 2 years ago·Updated 6 days ago· 331
AD_MiniMax_Ref2V
  • 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
prompt
width512
height768
length124
ref_image_sizematch

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_0 through ref_image_8 - nine image references.
  • ref_video_0 through ref_video_2 - three reference videos, plus ref_video_audio_0..2 for the soundtrack of each.
  • ref_audio_0 through ref_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.

CategoryApt_Preset/AD/😺backup

Inputs (26)

NameTypeDefaultDescription
clipCLIP
vaeVAE
audio_vaeVAE
promptSTRING
widthINT51232–4096
heightINT76832–4096
lengthINT1245–3600帧数(24 fps),自动 snap 到 17k+5 网格(124 ≈ 5s)
ref_image_sizeCOMBOmatch'match' 缩放到画布面积;'max' 对齐 2048 短边(身份更好但更慢)
ref_image_0optIMAGE
ref_image_1optIMAGE
ref_image_2optIMAGE
ref_image_3optIMAGE
ref_image_4optIMAGE
ref_image_5optIMAGE
ref_image_6optIMAGE
ref_image_7optIMAGE
ref_image_8optIMAGE
ref_video_0optIMAGE
ref_video_1optIMAGE
ref_video_2optIMAGE
ref_video_audio_0optAUDIO
ref_video_audio_1optAUDIO
ref_video_audio_2optAUDIO
ref_audio_0optAUDIO
ref_audio_1optAUDIO
ref_audio_2optAUDIO

Outputs (2)

NameTypeDescription
positiveCONDITIONING
latentLATENT