MiniMax H3 Chunked Two-Pass Plan (Advanced EXP/T8)
The planner for H3's chunked two-pass upscale — and why full-frame is the safe default
- plan
- report_json
The classic two-pass recipe from image generation - render small, upscale, re-sample at low denoise - has a video-shaped problem: your "image" is a joint audio-video latent that gets very long, very fast. This node is the planning half of the T8 pack's chunked two-pass answer for MiniMax H3. It produces a plan describing how a learned 3D latent upscale and a temporal-chunk H3 re-sample should run. The other half, MiniMaxH3ChunkedTwoPassUpscaleT8Advanced, executes it.
The idea is straightforward and worth knowing before you touch any slider: first pass generates a low-resolution H3 clip, then an independent learned 3D upscaler model grows the latent (not the pixels) to high resolution, and then H3 re-samples at the higher canvas to add real detail. That's different from plain interpolation, and the KB's upscaling notes back the intuition: upscaling the intermediate and doing a low-denoise second pass is the standing recipe for coherent high-res output. The "learned" part is the difference between this and the pack's simple 32-divisible latent upscale - a model trained to add plausible detail instead of just resizing.
The inputs that matter
There are a lot of sliders here, but the safe defaults are actually safe. The ones you'll touch:
model_name- the learned 3D latent upscaler fromComfyUI/models/latent_upscale_models(the pack expectsminimax_h3_latent_upscaler_3d_fp16.safetensors).target_width/target_height- default 1280×704. The note in the description is worth reading: there is no project pixel-area ceiling; memory and runtime are yours to own. 1920×1088 is a risk reference area, not a hard limit, and bigger will warn but not block.temporal_chunk_frames(136) andtemporal_overlap_frames(17) - the clip is split into temporal chunks so the whole thing fits in memory. The overlap lets chunks blend into each other rather than showing seams.anchor_strength(0.999) - how strongly each chunk is anchored to the previous one's result. This is your seam-control knob.spatial_strategy- the one that decides everything about risk.full_frame_safekeeps each temporal chunk full-frame, which preserves H3's global spatial context.independent_tiles_expsplits the frame into independent spatial canvases to save memory, and the "exp" suffix is doing real work: those tiles' content can diverge, so it's research-only.
Tiles, overlaps, fades, blend mode, precision and release policy round out the plan - leave them alone until you know why you're changing them. Outputs are the plan object (feed it to the Upscale executor) and a report_json describing what you're about to do.
Who it's for
If you're generating H3 at 1472×832 or bigger on a 16GB card and hitting OOM, this is the workflow's planning stage. It pairs naturally with the pack's 13-latent-upscale workflows, which use a low-res 4-step pass + learned upscale + high-res pass. And keep the pack's honesty rule in mind: chunked two-pass doesn't mean "unlimited resolution is now free." It lowers the peak memory by chunking the temporal dimension; it doesn't lift the per-chunk cost.
Install
Same pack, same steps:
cd ComfyUI/custom_nodes
git clone https://github.com/T8mars/comfyui-minimax-h3-audio-T8.git minimax-h3-audio-T8
or ComfyUI Manager → "MiniMax H3 Audio T8" → restart. Update ComfyUI itself first. The one model you do need for this node is the learned 3D latent upscaler - grab it from the pack's model links or the t8star HuggingFace org and drop it in ComfyUI/models/latent_upscale_models.
Inputs (15)
| Name | Type | Default | Description |
|---|---|---|---|
| model_name | COMBO | 1 options: minimax_h3_latent_upscaler_3d_fp16.safetensors | |
| target_width | INT | 128032–16384 | — |
| target_height | INT | 70432–16384 | — |
| temporal_chunk_frames | INT | 13617–3600 | — |
| temporal_overlap_frames | INT | 170–1700 | — |
| anchor_strength | FLOAT | 0.9990–1 | — |
| tile_width | INT | 51232–16384 | — |
| tile_height | INT | 51232–16384 | — |
| spatial_overlap | INT | 1280–4096 | — |
| spatial_fade | INT | 320–4096 | — |
| minimum_tile_size | INT | 25632–4096 | — |
| overlap_blend | COMBO | smoothstep | 2 options: smoothstep, linear |
| precision | COMBO | fp16 | 3 options: fp16, bf16, fp32 |
| release_policy | COMBO | offload_after | 3 options: offload_after, clear_after, keep_loaded |
| spatial_strategy | COMBO | full_frame_safe | 2 options: full_frame_safe, independent_tiles_exp |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| plan | T8_H3_CHUNKED_TWO_PASS_PLAN | — |
| report_json | STRING | — |