Nodes/ComfyUI-FL-MiniMaxH3/FL MiniMax H3 Temporal Reshot Planner
ComfyUI Node

FL MiniMax H3 Temporal Reshot Planner

Regenerate a slice of an existing video, not the whole thing

By filliptm·Created about a month ago·Updated about 13 hours ago· 17
FL MiniMax H3 Temporal Reshot Planner
  • clip
  • vae
  • audio_vae
  • ref_images
  • shot_plan
video
prompt
reshot_settings{"version":1,"start_frame":0,"frame_count":72,"context_before":39,"context_after":39,"edge_blend_frames":0}
ref_image_sizematch

Temporal reshooting is the edit you keep wanting but no video model directly gives you: keep an existing clip, pick a span of time, and regenerate just that interval with a new prompt while everything outside it stays untouched. FL MiniMax H3 Temporal Reshot Planner is the front half of that - the part that normalizes your source video to H3's 24 fps editing timeline, lets you select the exact interval, and builds a one-render shot_plan for it.

The workflow is compact:

FL MiniMax H3 Temporal Reshot Planner
    → FL MiniMax H3 Beat KSampler
    → FL MiniMax H3 Temporal Reshot Assembler

The planner outputs a shot_plan that carries a lot of hidden structure: the source fingerprint, the protected surrounding latent, the replacement mask, the context windows, and the assembly metadata. It's a temporal inpaint plan rather than a spatial one - you're replacing a slice of time on a full-frame basis, not painting out an object.

The editor is where the work happens

The node has an Open Temporal Reshot Editor button, and that's the real interface. You browse or drop a video into it, and it's normalized locally to 24 fps (variable-frame-rate sources included). Then you work the timeline:

  • Drag the purple interval to move it, drag either edge to resize it, or type exact frame values in the inspector. Wheel zooms, Alt-drag or middle-drag pans.
  • Context before and after the selection shows up as teal (retained context), purple is the exact replacement, and the hatched range marks the extra H3 temporal tokens that must be sampled coherently.
  • Enter the replacement prompt in the modal, connect reference images on the node, and optionally connect the audio VAE when source sound should condition the new motion - the assembler always keeps the original soundtrack regardless.
  • Close with Done or Escape; the compact preview on the node loops the selected interval without taking over the canvas.

Inputs

  • clip and vae - H3 text encoder and video VAE; the VAE encodes the source window.
  • video - the source video, picked from your ComfyUI input directory.
  • prompt - the new action, performance, camera motion, or scene direction for the interval.
  • reshot_settings - the JSON selection state managed by the editor (start frame, frame count, context before/after, edge blend frames). You generally don't hand-edit this; the editor does.
  • ref_image_size - matches the standard H3 reference node ("match" or "max").
  • audio_vae (optional) - connect when source audio should condition the new motion.
  • ref_images (optional) - character, wardrobe, prop, or scene references for the new interval.

The honest limitations

The README lists them deliberately: one interval per planner, no spatial/object mask, and no latent or pixel-upscale pass between sampling and reshot assembly. The H3 working window snaps to the 17k+5 frame grid, and the UI warns when the selection falls outside H3's approximate 124–362-frame trained range. The sampler denoises full spatial frames only across the H3 tokens intersecting the selection; source latent is re-injected everywhere else at every step. And plan for RAM: the assembler materializes and normalizes the full source video in memory, so long or high-resolution sources need substantial system RAM.

Install is the pack standard: ComfyUI Manager → FL MiniMax H3, or cd ComfyUI/custom_nodes && git clone https://github.com/filliptm/ComfyUI-FL-MiniMaxH3.git, restart. No extra Python deps, no bundled weights - you supply the H3 model files from your normal ComfyUI directories.

CategoryFL/MiniMax H3/Prompting

Inputs (8)

NameTypeDefaultDescription
clipCLIPMiniMax H3 text encoder for the replacement prompt.
vaeVAEMiniMax H3 video VAE used to encode the source window.
videoCOMBOSource video. It is normalized to 24 fps before the selected range is replaced.
promptSTRINGNew action, performance, camera motion, or scene direction for the interval.
reshot_settingsSTRING{"version":1,"start_frame":0,"frame_count":72,"context_before":39,"context_after":39,"edge_blend_frames":0}Timeline selection state managed by the temporal reshot interface.
ref_image_sizeCOMBOmatchReference image sizing, matching the standard H3 reference node.
audio_vaeoptVAEOptional H3 audio VAE. When connected, source audio conditions the reshot.
ref_imagesoptCOMFY_AUTOGROW_V3Optional character, wardrobe, prop, or scene references for the new interval.

Outputs (1)

NameTypeDescription
shot_planFL_H3_SHOT_PLAN