MiniMax H3 • Long Media Setup
The one node that decides what your H3 video will be
- clip
- vae
- audio_vae
- clip_plan
- reconstruction
- 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
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) andduration_source(auto/manual/audio/video/longest_input) - where the final length comes from. Pickaudioand 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 atlow; 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), andlip_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_1is the opening frame anchor; connectimage_2and 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_1carries motion/camera/composition,image_1..9do identity/style replacement. If the source video has a soundtrack, load and connect it toaudio_1separately - an IMAGE connection never carries audio.loop-image_1becomes 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.
Inputs (46)
| Name | Type | Default | Description |
|---|---|---|---|
| clip | CLIP | — | |
| vae | VAE | — | |
| audio_vae | VAE | — | |
| prompt | STRING | Prompt text. Can also be connected directly through the prompt input socket. | |
| width | INT | 51232–8192 | — |
| height | INT | 51232–8192 | — |
| manual_duration | FLOAT | 10.00.1–600 | — |
| duration_source | COMBO | Controls target timeline length independently from audio_mode and prompt conditioning. In video_ref_edit, auto follows video_1. video follows video_1 explicitly; audio follows audio_1; manual uses manual_duration; longest_input follows the longest connected audio/video input. Choosing a shorter source trims the target timeline; choosing a longer source allows the edited scene to continue beyond video_1. MultiClip Planner and Video Reconstructor own their own timeline lengths. | |
| segment_seconds | FLOAT | 5.01–60 | New output timeline per segment. transition_frames is added as continuation context and does not reduce this duration. |
| overlap_frames | INT | 225–3600 | — |
| loop_closure_enabled | BOOLEAN | false | Context-preserving seamless loop closure. Runs one extra H3 tail pass guided toward the opening-frame macro context while keeping motion and fine detail free. Available in every workflow. |
| loop_closure_frames | INT | 572–720 | Approximate tail region used for loop closure. It snaps to the nearest valid H3 frame count without unnecessarily expanding the ending. |
| resolution_mode | COMBO | 2 options: match, max | |
| reference_budget | COMBO | 4 options: low, medium, high, max | |
| video_fps | FLOAT | 241–120 | — |
| video_mode | COMBO | 3 options: auto, preserve, transform | |
| audio_mode | COMBO | auto: legacy behavior; in video_ref_edit, connected audio_1 is also the authoritative source-performance timing clock and is restored untouched. preserve: restore original audio at output; in video_ref_edit it also locks replacement facial/mouth timing to audio_1. generate: generate final H3 audio. reference_only: use input audio as H3 reference but output generated audio. preserve_reference: use input audio as H3 reference/timing source and restore the untouched original track; in video_ref_edit it also locks source-performance sync. lip_sync: audio_1 stays native <Audio 1> Ref2VA content conditioning and is also time-anchored per clip; the untouched audio_1 is restored at output. | |
| conditioning_mode | COMBO | auto_refs | auto_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_guardopt | BOOLEAN | true | Production 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_planopt | H3_LONGMEDIA_CLIP_PLAN | Connect MiniMax H3 LongMedia Planner. It is authoritative only when timeline_mode=multiclip; single/segmented timelines ignore the connected Planner. | |
| workflow_modeopt | COMBO | hybrid_auto | hybrid_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. |
| reconstructionopt | H3_LONGMEDIA_RECONSTRUCTION | Optional MiniMax H3 LongMedia Video Reconstructor contract. When connected it owns source video/audio, FPS, chunking and reconstruction strength. | |
| multiclip_jsonopt | STRING | [{"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_1opt | IMAGE | Native MiniMax H3 <Picture 1> reference. | |
| image_2opt | IMAGE | Native MiniMax H3 <Picture 2> reference. | |
| image_3opt | IMAGE | Native MiniMax H3 <Picture 3> reference. | |
| image_4opt | IMAGE | Native MiniMax H3 <Picture 4> reference. | |
| image_5opt | IMAGE | Native MiniMax H3 <Picture 5> reference. | |
| image_6opt | IMAGE | Native MiniMax H3 <Picture 6> reference. | |
| image_7opt | IMAGE | Native MiniMax H3 <Picture 7> reference. | |
| image_8opt | IMAGE | Native MiniMax H3 <Picture 8> reference. | |
| image_9opt | IMAGE | Native MiniMax H3 <Picture 9> reference. | |
| video_1opt | IMAGE | Video 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_2opt | IMAGE | Video frames only (IMAGE batch). Passed as <Video 2> reference. Pair with audio_2 when they come from the same source. | |
| video_3opt | IMAGE | Video frames only (IMAGE batch). Passed as <Video 3> reference. Pair with audio_3 when they come from the same source. | |
| audio_1opt | AUDIO | Native MiniMax H3 <Audio 1> reference. In video_ref_edit with auto/preserve/preserve_reference, audio_1 is the paired source-performance clock and can be addressed from the prompt. With audio_mode=lip_sync, Audio 1 is an independent authoritative dub/timing source rather than the soundtrack paired to Video 1. duration_source controls timeline length separately. | |
| audio_2opt | AUDIO | Optional second native H3 audio reference. In video_ref_edit it remains standalone <Audio 2> prompt conditioning, independent from Audio 1 timing/output ownership. | |
| audio_3opt | AUDIO | Optional third native H3 audio reference. In video_ref_edit it remains standalone <Audio 3> prompt conditioning, independent from Audio 1 timing/output ownership. | |
| loop_closure_strengthopt | FLOAT | 0.650–1 | Structural attraction of the regenerated tail toward the opening-frame context. 0 keeps the existing ending; 1 applies the strongest macro-geometry guidance. Fine detail remains free. |
| control_modeopt | COMBO | auto | Setup control surface. auto derives safe internal policies from H3 Mode + Timeline. manual exposes the advanced Setup-only conditioning/transition controls. |
| h3_modeopt | COMBO | hybrid | Native H3 conditioning family. FL2VA uses image_1 as first frame and optional image_2 as last frame without LongMedia latent injection. Ref2VA keeps images as Picture refs. Hybrid enables LongMedia first-frame injection controls. video_ref_edit uses video_1 as the source motion/camera/composition stream. |
| timeline_modeopt | COMBO | single | LongMedia timeline only. single is one H3 pass; segmented uses fixed-duration continuation clips; multiclip consumes Clip Plan / per-clip prompts. It does not choose the H3 conditioning family. |
| transition_framesopt | INT | 225–3600 | Transition/context length between adjacent Segmented or MultiClip units. Native H3 values are 5, 22, 39, 56... frames. Replaces the old hidden overlap_frames control for public timeline modes. |
| first_frame_modeopt | COMBO | latent_inject | Hybrid image injection policy. native_keyframe is pure native H3 frame conditioning; latent_inject seeds the leading target latent; pixel_override/blend are decode-time opening-frame policies. FL2VA always forces native_keyframe. |
| first_frame_denoiseopt | FLOAT | 0.250–1 | Hybrid latent-injection denoise amount. Used only when first_frame_mode=latent_inject. |
| first_frame_blend_framesopt | INT | 31–17 | Hybrid decode blend span. Used only when first_frame_mode=blend. |
Outputs (6)
| Name | Type | Description |
|---|---|---|
| positive | CONDITIONING | — |
| long_media_av | LATENT | — |
| long_media_plan | LONG_MEDIA_PLAN | — |
| duration_seconds | FLOAT | — |
| passes | INT | — |
| report | STRING | — |