Nodes/Minimax H3 Temporal Window & Spatial Tiles/Minimax H3 Long Generation (mo-akkakk)
ComfyUI Node

Minimax H3 Long Generation (mo-akkakk)

For text-to-video, image-to-video and first/last-frame generation (no reference video). Put after the model, and route the CLIP through it into Image to Video or Reference to Video. The video is generated as overlapping windows, one after another, each continuing from the previous one, with an optional prompt schedule so the story moves on instead of restarting every window. For video-to-video use the V2V node instead.

By mo-akkakk·Created 15 days ago·Updated a day ago· 53
Minimax H3 Long Generation (mo-akkakk)
  • model
  • clip
  • MODEL
  • CLIP
◄prompt_schedule►
◄continuous_shottrue►
◄window_frames124►
◄overlap_frames39►
◄short_final_windowfalse►
◄min_final_window_frames22►
◄carry_overlaptrue►
◄first_last_imagesown_window►
Categorymodel/patch/minimax

Inputs (10)

NameTypeDefaultDescription
modelMODEL—
prompt_scheduleSTRINGOptional timeline for the whole video, one line per action, in seconds (H3 runs at 24 fps): 0s: he walks along the street 6s: he stops at the bakery window or H3's own format: [0s-6s] he walks along the street Write the look, character and setting once in the conditioning node's prompt; it is kept for every window. Each window then gets that scene plus the part of this timeline it covers, re-timed so the window starts at 0 s. Empty = a 'Timeline:' written in the conditioning prompt is re-timed the same way; with none, every window uses the prompt as it is.
continuous_shotBOOLEANtrueAdd 'One continuous shot, no cuts.' to every window's prompt, so H3 continues the carried frames instead of cutting to a new shot when the action changes. Turn off if you want cuts.
window_framesINT12422–3600Frames per window (17k+5). 124 = 5.2 s. Keep it inside what works natively for you.
overlap_framesINT395–1000Frames shared by neighbouring windows (5, 22, 39...). Without a reference video the overlap is what carries the motion forward, so use more than for V2V (39 recommended).
short_final_windowBOOLEANfalseLet the last window be shorter than window_frames instead of pulling it back to full length.
min_final_window_framesINT225–3600With short_final_window on: the last window is never shorter than this (17k+5: 5, 22, 39, 56...).
carry_overlapBOOLEANtrueEach window starts from the previous window's finished overlap frames (video and audio). Keep it on: without it, windows are unrelated clips.
first_last_imagesCOMBOown_windowImage to Video's first/last frame images in the prompt. own_window: the first image is only in the first window's prompt and the last image only in the last window's (matches where they are used as frames). all_windows: every window's prompt shows them (can help keep a character's look, but later windows may drift back toward the first frame).
clipoptCLIPRoute the CLIP through here into Image to Video or Reference to Video. Needed for the prompt schedule and for keeping the first/last image only in its own window.

Outputs (2)

NameTypeDescription
MODELMODEL—
CLIPCLIP—