Nodes/ComfyUI-FL-MiniMaxH3/FL MiniMax H3 Shot Assembler
ComfyUI Node

FL MiniMax H3 Shot Assembler

Stitch the shots back

By filliptm·Created about a month ago·Updated 11 days ago· 17
FL MiniMax H3 Shot Assembler
  • latents
  • vae
  • images

The beat workflow doesn't finish until this node runs. FL MiniMax H3 Shot Assembler is the decoder-and-stitcher at the end of the chain: it takes the latent list from your Beat KSampler (optionally refined by the pixel upscale sampler), decodes every planned render separately, and concatenates them into one images batch with hard cuts exactly at your authored shot boundaries.

Simple job, messy details. Each planned render may carry things the final video shouldn't see: H3 padding around the authored frames, and - if you used Shot Motion Context - a hidden prefix of the previous shot that was fed in as conditioning. The assembler knows about both. It removes the H3 padding and strips the motion-context prefixes, validates each render's timeline metadata, then lays the authored frames out in plan order. That's why the visible transition stays a hard cut even though the generation was conditioned on the prior shot.

Inputs and output

  • latents - the editable H3 latent list from FL MiniMax H3 Beat KSampler, optionally processed by metadata-preserving latent nodes (like the pixel upscale sampler). "Editable" is doing work here: because each render is a separate latent, you can route the list through other latent-aware nodes and still assemble in order.
  • vae - the H3 video VAE used to decode every planned render.
  • images (output) - the final frame batch with hard cuts at the authored boundaries. From here it's a normal ComfyUI IMAGE - Save Video, a preview, whatever you'd normally do.

Gotchas

The metadata requirement is the one that bites. The assembler relies on the timeline metadata embedded in each latent, so any node you put between the sampler and this node has to preserve that metadata - the pack's own latent nodes do, but a generic latent transformer that flattens H3's nested structure will leave you with a decoding mess. Keep the list untouched (or run it through H3-aware nodes only) and it just works.

Also worth knowing: this assembler is the multi-shot finalizer. If you're doing temporal reshooting instead - regenerating an interval of an existing source clip - you want FL MiniMax H3 Temporal Reshot Assembler, which splices back into the original source rather than concatenating independent renders.

Install is the pack-standard story: ComfyUI Manager → FL MiniMax H3, or cd ComfyUI/custom_nodes && git clone https://github.com/filliptm/ComfyUI-FL-MiniMaxH3.git, then restart. No extra Python deps, no bundled model files - you supply the H3 video VAE from your normal ComfyUI model directory. And if you're migrating from Fill Nodes, update Fill Nodes past the version that still registers these MiniMax node IDs before loading old workflows, or you'll hit duplicate registrations.

CategoryFL/MiniMax H3/Output

Inputs (2)

NameTypeDefaultDescription
latentsLATENTEditable H3 latent list from FL MiniMax H3 Beat KSampler, optionally processed by metadata-preserving latent nodes.
vaeVAEMiniMax H3 video VAE used to decode every planned render.

Outputs (1)

NameTypeDescription
imagesIMAGEFinal frame batch with hard cuts at the authored beat boundaries.