MiniMax H3 Motion Context Archive Stitcher
Stitch NikoDemon80 H3 Motion Context archives into one reel — dissolve the shared head in picture and audio
- video_vae
- audio_vae
- reel
- report
Here's a workflow you might have met outside this pack: render a long H3 piece as a sequence of motion-continuation clips, each saved as an h3_motion_context_av_v1 safetensor, then stitch them back together. MiniMax H3 Motion Context Archive Reel is Creator Palette's final assembly for exactly those archives - the ones NikoDemon80's ecosystem and noEmbryo's H3 Motion Context Clip Stitcher produce. It decodes each clip once and dissolves the shared Motion Context head across the seam, in picture and audio.
It's an MiniMax/internal node, and it exists because Creator Palette deliberately doesn't reinvent the wheel for generated seams - it streams its own reel to disk - but archives made outside the pack still deserve a first-class door back in. The boundary algorithm is adapted from noEmbryo's MIT-licensed stitcher.py: a linear video dissolve plus an equal-power audio crossfade over the chosen H3 context length, then the whole thing lands on the same reel type the rest of the pack uses.
How it works
Point it at a folder of numbered clip_*.safetensors files and it:
- Matches files against
pattern, filters byfirst_clip/last_clip, and verifies there are no gaps - it refuses to stitch across a missing clip rather than let the timeline silently lie. - Decodes each clip once through your
video_vaeandaudio_vae. - Overlaps consecutive clips by
context_lengthframes (that's the shared Motion Context head) and dissolves them: linear video blend, equal-power audio crossfade. - Streams the result through the pack's spill/reel path - so the finished movie is never concatenated into one giant IMAGE tensor, the same memory discipline as the rest of the pack.
The report output gives you a per-seam audit (overlap, what each clip contributes, audio seconds), ending with the totals.
The inputs that matter
video_vae,audio_vae- required; how each archived clip gets decoded.folder- defaulth3_context. An absolute path, or relative toComfyUI/output(that's where the noEmbryo/NikoDemon80 tooling typically writes).pattern- defaultclip_*.safetensors.first_clip/last_clip- number range;last_clip0 means "through the end."context_length- the overlap, and the one knob that matters. Options are 5, 22, 39, 56 frames - the H3 context lengths - default 22. Longer overlap = smoother motion carry but more of each clip gets folded into the dissolve. If your seams pop, go up; if faces smear during transitions, come down.fps- 24 default, the output rate.
Outputs: reel (ready for H3 Save to mux) and report (the STRING audit).
What it's not
It's not a motion-generator - that's the tool that made the archives. It's the assembly half, and it's here so you can keep using the archive tooling you already have while finishing the piece in Creator Palette's output pipeline. If it can't find the folder, it tells you the exact path it tried and whether you gave it an absolute one or one relative to output/ - the folder resolution is the first thing to check when it errors. Install is the shared pack install: ComfyUI Manager → search "H3 Creator Palette", or git clone https://github.com/z3rofeels/ComfyUI-H3-Creator-Palette into custom_nodes/, restart, hard-refresh. ComfyUI 0.34.0+; no extra Python deps (safetensors and torchaudio are ComfyUI's own).
Inputs (8)
| Name | Type | Default | Description |
|---|---|---|---|
| video_vae | VAE | — | |
| audio_vae | VAE | — | |
| folder | STRING | h3_context | — |
| pattern | STRING | clip_*.safetensors | — |
| first_clip | INT | 11–99999 | — |
| last_clip | INT | 00–99999 | — |
| context_length | COMBO | 22 | 4 options: 5, 22, 39, 56 |
| fps | FLOAT | 24.0001–240 | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| reel | MMC_REEL | — |
| report | STRING | — |