Nodes/ComfyUI-MiniMax-H3-LongMedia/MiniMax H3 • Long Media Setup
ComfyUI Node

MiniMax H3 • Long Media Setup

The one node that decides what your H3 video will be

By vizart-vj·Created 14 days ago·Updated 2 days ago· 71
MiniMax H3 • Long Media Setup
  • clip
  • vae
  • audio_vae
  • clip_plan
  • image_1
  • image_2
  • image_3
  • image_4
  • image_5
  • image_6
  • image_7
  • image_8
  • image_9
  • video_1
  • video_2
  • video_3
  • audio_1
  • audio_2
  • audio_3
  • positive
  • long_media_av
  • long_media_plan
  • duration_seconds
  • passes
  • report
prompt
width512
height512
manual_duration10.0
duration_source
segment_seconds5.0
overlap_frames22
resolution_mode
reference_budget
video_fps24
video_mode
audio_mode
conditioning_modeauto_refs
release_guardtrue
workflow_modehybrid_auto
multiclip_json[{"prompt":"","duration":7.5,"seed":null},{"prompt":"","duration":7.5,"seed":null}]

This is where every long H3 run starts. Long Media Setup is the orchestrator: it takes your prompt, duration, references and workflow mode, builds the multi-segment plan, encodes the source media into the AV latent, and hands the whole thing to the sampler. If you're new to this pack, this is the node you'll stare at longest, so it's worth understanding the handful of settings that actually change your output.

The core inputs

  • clip, vae, audio_vae - the H3 text encoder, video VAE and audio VAE. Three separate model files; the audio VAE is easy to forget and the pack needs it even for silent video.
  • prompt - the text. There's also a direct STRING socket if you want to drive it dynamically.
  • width, height, video_fps (24) - canvas and frame rate.
  • manual_duration (10 s) and duration_source (auto / manual / audio / video / longest_input) - where the final length comes from. Pick audio and a connected reference and the clip lengths itself to the soundtrack.
  • segment_seconds (5) - the amount of new visible timeline per segment. The 22-frame continuation overlap is extra hidden context and does not count against this. This is your main VRAM lever: smaller segments = lower peak memory.
  • overlap_frames (22) - continuation context between segments, snapped to the H3 grid.
  • reference_budget (low/medium/high/max) - how aggressively reference payloads are limited. On constrained cards start at low; big Picture/Video/Audio references balloon the packed sequence and can dominate VRAM.
  • audio_mode - auto (legacy), preserve (restore source audio at output), generate (H3 makes the audio), reference_only (input as reference, output generated), preserve_reference (input as timing reference, source restored), and lip_sync (source audio drives timing, untouched track restored). If you're dubbing or matching a soundtrack, this is the input.

Workflow modes - the ones that matter

workflow_mode is the decision that shapes everything:

  • hybrid_auto (default) - image_1 is the opening frame anchor; connect image_2 and it becomes the final frame anchor; the rest are Picture references.
  • segmented_continuation - auto-splits one continuous prompt into equal fixed segments. Good for VRAM control and stability with a single prompt. It does not map different actions to different time points - that's what multiclip is for.
  • multiclip - uses the Long Media Planner; every clip gets its own prompt, duration and optional seed. This is the one for "different shots at different times."
  • ref2va_full - all images are plain <Picture N> references, no anchors.
  • video_ref_edit - video_1 carries motion/camera/composition, image_1..9 do identity/style replacement. If the source video has a soundtrack, load and connect it to audio_1 separately - an IMAGE connection never carries audio.
  • loop - image_1 becomes both first and last frame for seam-friendly loops.

One trap the README calls out: if you connect a clip_plan (Planner) while workflow_mode is anything other than multiclip, Setup silently ignores it. The Planner is authoritative only in multiclip, and that's deliberate so a leftover connected Planner can't override your mode.

Outputs

positive (CONDITIONING) and long_media_av (LATENT) into the sampler, long_media_plan (the plan object) into both Sampler and Decode, plus duration_seconds, passes and a report. If release_guard is off, the console prints the full internal diagnostics - handy for debugging, noisy otherwise.

Install

cd ComfyUI/custom_nodes
git clone https://github.com/vizart-vj/ComfyUI-MiniMax-H3-LongMedia

(Manager search "MiniMax-H3-LongMedia" also works), restart, and load the H3 weights from MiniMaxAI/MiniMax-H3 - checkpoint + both VAEs, ~42.5 GB, under the H3 Community License that excludes the US, EU, UK and Korea. Check your region before downloading.

Troubleshooting

If your references seem to do nothing, check the mode: in ref2va_full nothing is anchored, and in hybrid_auto only image_1/2 get anchor status - a connected image in the wrong slot reads as a plain reference, not a keyframe. If runs OOM, cut segment_seconds, set reference_budget=low, and leave Dynamic VRAM enabled (the pack explicitly wants you to not launch with --disable-dynamic-vram). And if passes comes back unexpectedly large, you've set manual_duration way above segment_seconds - which is fine, but it's worth knowing segmentation is doing the work, not single-pass generation. Community wisdom on H3 is that it's genuinely good but genuinely heavy; the people running it on 8–12 GB cards are the ones leaning on exactly these segment and budget knobs.

CategoryMiniMax H3/LongMedia/LongMedia

Inputs (35)

NameTypeDefaultDescription
clipCLIP
vaeVAE
audio_vaeVAE
promptSTRINGPrompt text. Can also be connected directly through the prompt input socket.
widthINT51232–8192
heightINT51232–8192
manual_durationFLOAT10.00.1–600
duration_sourceCOMBO5 options: auto, manual, audio, video, longest_input
segment_secondsFLOAT5.01–60New output timeline per segment. overlap_frames is added as continuation context and does not reduce this duration.
overlap_framesINT225–3600
resolution_modeCOMBO2 options: match, max
reference_budgetCOMBO4 options: low, medium, high, max
video_fpsFLOAT241–120
video_modeCOMBO3 options: auto, preserve, transform
audio_modeCOMBOauto: legacy behavior. preserve: restore original audio at output without using it as a reference when possible. generate: generate final H3 audio. reference_only: use input audio as H3 reference but output generated audio. preserve_reference: use input audio as H3 timing/rhythm reference and restore the untouched original track. lip_sync: audio_1 stays native <Audio 1> Ref2VA content conditioning and is also time-anchored per clip with the native H3 Audio Guide; the untouched audio_1 is restored at output.
conditioning_modeCOMBOauto_refsauto_refs keeps the original LongMedia behavior. hybrid_first_frame: image_1 is the opening keyframe, image_2..image_9 become <Picture 1>..<Picture 8> identity/style refs. hybrid_first_last: image_1 is the first keyframe, image_2 is the last keyframe, and image_3..image_9 become <Picture 1>..<Picture 7> refs. Manual mode only. auto_refs sends all connected images as Picture refs. hybrid_first_frame uses image_1 as the opening keyframe. hybrid_first_last uses image_1/image_2 as first/last keyframes. video_1..3 and audio_1..3 remain native H3 refs.
release_guardoptBOOLEANtrueProduction console guard. ON suppresses routine LongMedia diagnostics and keeps only actionable failures. OFF prints the full internal execution/memory/attention diagnostics for profiling and A/B tests.
clip_planoptH3_LONGMEDIA_CLIP_PLANConnect MiniMax H3 LongMedia Planner. It is authoritative only when workflow_mode=multiclip; all other workflows ignore the connected Planner.
workflow_modeoptCOMBOhybrid_autohybrid_auto: image_1 is first frame; if image_2 is connected it is last frame; segmented_continuation: fixed-duration timeline policy using the exact same Ref2VA/Motion-Context clip executor as MultiClip; every generated clip has the same H3-aligned length and the final excess is trimmed. segment_duration controls fixed clip size; Planner is ignored. remaining images are Picture refs. video_ref_edit: video_1 is the main motion/camera/composition reference, image_1..9 are Picture refs for identity/style replacement, and audio_1 can carry the paired source soundtrack. ref2va_full: all connected images are Picture refs with no first/last anchors. loop: image_1 is reused as BOTH first and last frame for a seam-friendly viral loop; image_2..9 are Picture refs. manual: exposes legacy conditioning and segmentation controls for advanced diagnostics and A/B tests.
multiclip_jsonoptSTRING[{"prompt":"","duration":7.5,"seed":null},{"prompt":"","duration":7.5,"seed":null}]MultiClip backend storage. JSON array: [{prompt, duration, seed}, ...]. Prompt is local to the clip; null seed uses sampler seed + clip index.
image_1optIMAGENative MiniMax H3 <Picture 1> reference.
image_2optIMAGENative MiniMax H3 <Picture 2> reference.
image_3optIMAGENative MiniMax H3 <Picture 3> reference.
image_4optIMAGENative MiniMax H3 <Picture 4> reference.
image_5optIMAGENative MiniMax H3 <Picture 5> reference.
image_6optIMAGENative MiniMax H3 <Picture 6> reference.
image_7optIMAGENative MiniMax H3 <Picture 7> reference.
image_8optIMAGENative MiniMax H3 <Picture 8> reference.
image_9optIMAGENative MiniMax H3 <Picture 9> reference.
video_1optIMAGEVideo frames only (IMAGE batch). video_ref_edit: primary motion/camera/composition source as <Video 1>. Other modes: regular <Video 1> reference. If the source video has audio, connect that extracted audio to audio_1.
video_2optIMAGEVideo frames only (IMAGE batch). Passed as <Video 2> reference. Pair with audio_2 when they come from the same source.
video_3optIMAGEVideo frames only (IMAGE batch). Passed as <Video 3> reference. Pair with audio_3 when they come from the same source.
audio_1optAUDIONative MiniMax H3 <Audio 1> reference. With audio_mode=lip_sync it remains <Audio 1> and also drives a native per-clip H3 Audio Guide; the untouched source is restored at output.
audio_2optAUDIOOptional second audio reference. Passed as <Audio 2>; pair with video_2 by convention when they come from the same source.
audio_3optAUDIOOptional third audio reference. Passed as <Audio 3>; pair with video_3 by convention when they come from the same source.

Outputs (6)

NameTypeDescription
positiveCONDITIONING
long_media_avLATENT
long_media_planLONG_MEDIA_PLAN
duration_secondsFLOAT
passesINT
reportSTRING