Nodes/ComfyUI-JZL-MiniMax-H3/JZL - 🎬 MiniMax H3 参考编码2
ComfyUI Node

JZL - 🎬 MiniMax H3 参考编码2

Same ref2va encoder, fixed ports — for workflows that want a stable layout

By wjluoxiao·Created 13 days ago·Updated 3 days ago· 57
JZL - 🎬 MiniMax H3 参考编码2
  • 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
width1344
height768
length124
ref_image_sizematch
ref_scale1.0

"JZL - 🎬 MiniMax H3 参考编码2" is the fixed-port twin of the pack's flagship ref2va encoder. Same encode logic, same <Picture i> / <Video k> / <Audio j> prompt tags, same ref_image_size and ref_scale options - but instead of the V3 Autogrow ports that sprout as you connect things, it exposes 18 fixed inputs: ref_image_0ref_image_8, ref_video_0ref_video_2, ref_video_audio_0ref_video_audio_2, and ref_audio_0ref_audio_2.

If you've rebuilt a ref2va workflow more than once, you know why this exists: the dynamic version is elegant while you're dragging wires, but it re-shuffles the canvas every time you add a reference. Fixed ports give you a layout that doesn't move - which is why the pack's ref bus pair ("ref2va参考总线" pack/unpack) is designed to land exactly on these names, and why the fixed-port node is the one the "Generation Manager" uses internally.

How it works

Under the hood, execute gathers the 18 named inputs back into the same dict structures the Autogrow version produces - ref_images, ref_videos, ref_video_audios, ref_audios - and calls the flagship node's core logic wholesale. So the mechanism is identical: reference images and videos are VAE-encoded (videos downsampled to 2fps with timestamps for the Qwen tokenizer, index-paired soundtracks resampled through the audio_vae), tagged references are attached as minimax_refs, and you get positive conditioning plus the empty AV LATENT out. The ref_scale extension works the same way here: an area multiplier (1.0–5.0) applied in match mode only.

The -2 in the name means "fixed-interface version," not "second generation" - and the limit of 9 images / 3 videos / 3+3 audio tracks is the same as the official ref2va encoder, so nothing extra is available by switching.

The inputs that matter

  • prompt - tags like <Picture 1>, <Video 2>, <Audio 3>, indexed per type from 1.
  • clip, vae, audio_vae - required encoders; audio references need audio_vae.
  • ref_image_0ref_image_8 - the fixed reference slots you connect to (this is the layout the ref2va bus unpacks into).
  • length - frame count, default 124, snapped to the 17k+5 temporal grid.

How to install it

Part of the JZL-MiniMax-H3 pack - ComfyUI Manager, search "ComfyUI-JZL-MiniMax-H3", or:

cd ComfyUI/custom_nodes
git clone https://github.com/wjluoxiao/ComfyUI-JZL-MiniMax-H3

Restart. It's a V3 io.Schema node, so a recent ComfyUI with comfy_api.latest is required; torch/torchaudio are the pack's audio-encode dependencies. The model itself comes from ComfyUI's official H3 loaders - and the ~42.5GB weights carry the MiniMax H3 Community License, which excludes the US, EU, UK, and South Korea from local runs.

Common issues

Reference videos under 5 frames error out (the same hard minimum as the Autogrow version). Watch the soundtrack pairing - ref_video_audio_1 must belong to ref_video_1, and it's positional, so a misordered connection gives you a clip with the wrong audio rather than a loud error. If your workflow only ever uses the same handful of references, the fixed ports are the sane choice; if you're constantly adding and removing them, the dynamic version is friendlier. Different tools, same engine.

CategoryJZL/MiniMax

Inputs (27)

NameTypeDefaultDescription
clipCLIP
vaeVAE
audio_vaeVAE
promptSTRING
widthINT134432–16384
heightINT76832–16384
lengthINT1245–360024fps 帧数,吸附到模型 17k+5 网格(124 ≈ 5s,训练区间约 124-362)
ref_image_sizeCOMBOmatch参考图尺寸策略。match=按生成画布像素面积等比缩小;max=短边对齐 2048,身份保真度最高但更慢。参考 token 参与每个采样步,max 可能慢数倍。
ref_scaleFLOAT1.01–5仅 match 模式生效。参考图最终像素面积 = 生成画布面积 × 倍率(面积倍率,非分辨率倍率)。1.0=不放大,2.0=面积×2。越大保真度越高、越慢。
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