Nodes/ComfyUI_JR_MiniMaxH3Node/JR MiniMax H3 Directed Video Conditioning
ComfyUI Node

JR MiniMax H3 Directed Video Conditioning

The node that turns a Director timeline into real H3 conditioning

By Goldlionren·Created 21 days ago·Updated about 10 hours ago· 28
JR MiniMax H3 Directed Video Conditioning
  • clip
  • vae
  • pipe
  • audio_vae
  • positive
  • latent
mode_overrideAuto
dimension_sourcePrefer Pipe
width1344
height768
length124
ref_image_sizematch

If you've built the Director chain - Desk compiles the timeline, Optimizer formats the prompt, Review approves it - this is the node where all that work finally touches the model. JR_H3_DirectedVideoConditioning takes the approved JR_H3_DIRECTOR_PIPE, decodes the media it references, and hands you a ready-to-sample CONDITIONING plus the LATENT noise initialization. What makes it worth a whole node is that it doesn't reinvent MiniMax H3 conditioning; it delegates to ComfyUI's current native MiniMaxH3ImageToVideo / MiniMaxH3ReferenceToVideo implementations. You get the official code path with the Director structure pre-mapped onto it.

What you feed it

  • clip and vae (required) - your H3 text encoder and VAE, the same ones the stock workflow uses. audio_vae is optional but you want it connected if the pipe carries audio, since H3 generates native stereo audio jointly.
  • pipe (required) - the JR_H3_DIRECTOR_PIPE from Review/Optimizer.
  • mode_override - Auto picks Reference-to-Video whenever any Reference Image/Video/Audio or Driving Audio exists, else Image-to-Video. Forcing Image-to-Video against Ref2V-only media raises an explicit conflict rather than silently dropping stuff.
  • dimension_source - Prefer Pipe derives canvas from the first Picture/Video media and converts duration to frames at H3's fixed 24 fps (ceil(duration×24), then aligned to the model's n % 17 == 5 grid). Prefer Node uses width/height/length. When the pipe has no media dimensions, it falls back to the node values anyway.

The outputs

  • positive (CONDITIONING) and latent (LATENT) - both go straight into the standard H3 sampling chain (guider/sampler/sigmas). The latent is the AV NestedTensor, so the Temporal Chunk Sampler or Split AV Latent can pick it up directly.

A few honest limits, straight from the README, so you don't get surprised mid-render: the native Ref2V interface allows at most 9 reference images, 3 reference videos, and 3 reference audios, and first/last frames count toward the 9-picture budget in Ref2V mode (they become ordinary references - there's no I2V hard-anchor semantics there). Reference video must decode to 24 fps with at least 5 frames after cropping, max 15 seconds per clip, with a pixel budget protecting you. In Prefer Pipe mode a timeline over 150 seconds exceeds the node's 3600-frame input cap and is rejected outright - that's a node limit, not a statement about H3's ceiling.

Install

One install, all 16 nodes:

cd ComfyUI/custom_nodes
git clone https://github.com/Goldlionren/ComfyUI_JR_MiniMaxH3Node
<your-comfyui-python> -m pip install -r ComfyUI_JR_MiniMaxH3Node/requirements.txt

or ComfyUI Manager → search ComfyUI_JR_MiniMaxH3Node. Use ComfyUI's own Python, restart, hard-refresh the browser. imageio-ffmpeg is the only required pip dependency (media decoding), and you still need the H3 weights in place under their own license - which excludes US, EU, UK and Korea for the open weights.

Troubleshooting

  • "Ref2V-only media with Image to Video" error - you forced Image-to-Video but connected reference media. Set mode_override back to Auto.
  • Wrong canvas size. If the pipe media and your node width/height disagree, dimension_source decides. Check which one you're on before assuming the node is broken.
  • Long timelines rejected. Over 150s in Prefer Pipe mode hits the frame cap. Shorten the timeline or go node-mode with a shorter length.
CategoryJR MiniMax H3/Generation

Inputs (10)

NameTypeDefaultDescription
clipCLIP
vaeVAE
pipeJR_H3_DIRECTOR_PIPE
mode_overrideCOMBOAuto3 options: Auto, Image to Video, Reference to Video
dimension_sourceCOMBOPrefer Pipe2 options: Prefer Pipe, Prefer Node
widthINT134432–16384
heightINT76832–16384
lengthINT1245–3600
ref_image_sizeCOMBOmatch2 options: match, max
audio_vaeoptVAE

Outputs (2)

NameTypeDescription
positiveCONDITIONING
latentLATENT