MiniMax H3 Motion Window Collect / 动作窗口断点收集 (Advanced)
Assemble the repaired windows, and rerun only the one that died
- baseline_frames
- baseline_audio
- recovered_segment
- recovered_audio
- window_plan
- frames
- audio
- complete
- windows_on_disk
- report_json
If MotionSegmentPlanT8Advanced is the slicer, MiniMaxH3MotionWindowCollectT8Advanced is the bank teller. It banks one recovered window per queue item on disk and, when all the signed windows are present, deterministically assembles them back into the full repaired clip. Each window is written as a separate file, keyed to the run, so a crash, cancel or OOM mid-chain doesn't cost you everything.
The resilience detail is the point: missing windows pass the baseline through. If window 3 of 7 never got rendered (or got cancelled), the collector stitches the baseline frames in for that window and still hands you a complete video - and complete comes back false so you know which window to rerun. You only re-render the missing item, not the whole chain. For a repair pass that costs minutes per window on a modest card, that's the difference between annoying and catastrophic.
Inputs
baseline_frames/baseline_audio- the pass-1 material used as the fallback for missing windows.recovered_segment/recovered_audio- the current window's recovered output, one per queue item.window_plan- the signed per-window plan that identifies which slot this window fills.run_name- the run's namespace on disk; keep it stable across a chain so windows land in the same bank.store_dir- empty meansComfyUI/output/MiniMaxH3_Motion_Windows.write_window- whether to write this window to the bank at all.store_dtype-float32_exact(default) preserves recovered frame values exactly;float16_half_diskhalves the disk footprint but isn't pixel-exact.feather_frames(6) - the blend width at window seams, so assembled boundaries don't show hard edges.
Outputs
frames and audio - the assembled result. complete - boolean; false means at least one window is missing and baseline was used. windows_on_disk - how many windows are banked. report_json - the assembly record.
Install and where it fits
Pack install once: ComfyUI Manager → search MiniMax H3 Audio T8, or git clone https://github.com/T8mars/comfyui-minimax-h3-audio-T8 into ComfyUI/custom_nodes/, restart. No pip extras, no model downloads.
The workflow loop: for each window, SegmentPlan → RetimingPrepare → RecoveryComposer → RecoverAV, then feed the result into WindowCollect with the matching window_plan. After the last window, read complete; if false, look at report_json to find the missing slot and rerun just that one. A few things to keep straight: write_window off means "don't bank, just return," which is a preview mode; and if you change run_name mid-chain you've just created a second bank and the collector won't see your earlier windows. It's Experimental - the banking mechanism is verified, but windowed seam quality on your footage is yours to audit.
Inputs (10)
| Name | Type | Default | Description |
|---|---|---|---|
| baseline_frames | IMAGE | — | |
| baseline_audio | AUDIO | — | |
| recovered_segment | IMAGE | — | |
| recovered_audio | AUDIO | — | |
| window_plan | H3_T8_MOTION_RECOVERY_PLAN | — | |
| run_name | STRING | motion_window_run | — |
| store_dir | STRING | Empty uses ComfyUI/output/MiniMaxH3_Motion_Windows. | |
| write_window | BOOLEAN | true | — |
| store_dtype | COMBO | float32_exact | float32_exact preserves recovered frame values; float16_half_disk halves the frame-bank storage but is not pixel-exact. |
| feather_frames | INT | 60–24 | — |
Outputs (5)
| Name | Type | Description |
|---|---|---|
| frames | IMAGE | — |
| audio | AUDIO | — |
| complete | BOOLEAN | — |
| windows_on_disk | INT | — |
| report_json | STRING | — |