MiniMax H3 Temporal Detail Enhance / 时序保护细节增强 (Advanced)
Sharpen H3 Footage Without Making the Motion Flicker
- frames
- frames
- report_json
Plain sharpening on video is a trap: it makes every frame crisper and then the motion stroboscopically flickers, because the sharpening fires on moving regions frame after frame. MiniMaxH3TemporalDetailEnhanceT8Advanced is a smarter sharpener - it gates its detail enhancement on motion, so it beefs up luma detail in quiet areas and backs off exactly where things are moving, which is where per-frame sharpening turns into shimmer. It also throws in optional bicubic upscaling on a 32-pixel grid, so it doubles as a mild size-up node.
What it actually does
It works on decoded frames (an IMAGE batch), post-decode - the description is explicit that it runs where Temporal Detail stays: after AV Decode, and it never touches audio. The mechanism is a luma detail pass with a motion gate: motion_threshold decides what counts as "moving," and temporal_guard (default 0.85) controls how hard the gate suppresses sharpening in those regions. The blur_radius/blur_sigma pair shapes the detail-extraction blur that separates "detail to enhance" from "noise to ignore."
The settings a beginner actually touches
strength- 0.35 default, the overall amount of detail boost. Start here, nudge up if it's soft, back off the instant you see edge halos.upscale_factor- 1 by default (no upscale). Crank it and it bicubic-upscales on multiples of 32, which matters because H3's latents and decoders are grid-aligned.motion_threshold- 0.04 default. Lower = more regions treated as "moving" = more flicker protection but less sharpening overall.frame_chunk_size- 8 default. This is the memory governor: it processes frames in chunks with a one-frame temporal halo, so long clips don't blow up VRAM.maximum_output_megapixels- 2.1 default, and the tooltip calls it a "fail-closed output pixel budget": if the requested output exceeds it, the node refuses rather than OOMing. H3's official high-res reference is 1920×1088, which this tracks.
Outputs:
frames (the enhanced batch - same shape in, same out) and report_json. Drop it between AV Decode and your save/preview, and it slots into a workflow with zero other changes.
Installing:
part of MiniMax H3 Audio T8. Manager → "MiniMax H3 Audio T8", or:
cd ComfyUI/custom_nodes
git clone https://github.com/T8mars/comfyui-minimax-h3-audio-T8
Restart. No mandatory pip deps.
The honest limits
This is a sharpen, not a repair: it "cannot reconstruct missing faces or geometry," so a mushy face stays a mushy face - you want a face-refine pass for that. It's also motion-gated, not motion-aware in any semantic sense; heavy camera shake may still gate awkwardly. And it's experimental in the pack's careful way: default modest, fail-closed on the pixel budget, and the author isn't claiming it's a universal quality win.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| frames | IMAGE | — | |
| upscale_factor | FLOAT | 1.001–4 | — |
| strength | FLOAT | 0.350–2 | — |
| blur_radius | INT | 20–8 | — |
| blur_sigma | FLOAT | 1.20.1–8 | — |
| motion_threshold | FLOAT | 0.0400.001–1 | — |
| temporal_guard | FLOAT | 0.850–1 | — |
| frame_chunk_size | INT | 81–64 | Processes frames with a one-frame temporal halo to bound temporary memory. |
| maximum_output_megapixels | FLOAT | 2.10.1–64 | Fail-closed output pixel budget; this does not include the input tensor. |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| frames | IMAGE | — |
| report_json | STRING | — |