Nodes/MiniMax H3 Audio T8/MiniMax H3 Studio Timeline / 创作时间轴 (Advanced)
ComfyUI Node

MiniMax H3 Studio Timeline / 创作时间轴 (Advanced)

Plan a Whole H3 Video as Shots, Not One Giant Prompt

By T8mars·Created 20 days ago·Updated a day ago· 807
MiniMax H3 Studio Timeline / 创作时间轴 (Advanced)
  • cast
  • sound_canvas
  • timeline
  • timeline_json
project_idh3_project
shots_json[{"id":"shot_1","prompt":"A cinematic opening shot","duration_seconds":5.0}]
default_backendminimax_h3
default_duration_seconds5.000
default_aspect_ratio16:9
base_seed0
seed_policyincrement
split_long_shotstrue
strict_exact_dialoguetrue

H3 doesn't do "the whole video" in one prompt very well - it does windows of frames, and its timing runs on a 17n+5 grid (22, 39, 124, 362 frames…) that isn't intuitive. MiniMaxH3StudioTimelineT8Advanced is the planning layer on top of that reality: you describe your video as a list of shots, and it compiles them into deterministic H3-compatible windows with durations, prompts, aspect ratios and seeds, so the rest of the Studio chain can render each shot separately and you stitch them later.

The core idea

You feed it a shots_json array - each shot has an id, a prompt, and a duration_seconds (the default shows a one-shot skeleton). The node turns that into a compiled timeline where every shot lands on a valid H3 frame window. It also carries the seed bookkeeping for you: base_seed plus seed_policy (increment is the default) means each shot gets a deterministic, reproducible seed derived from the base rather than you hand-rolling seeds per shot.

The inputs that matter

  • shots_json - your actual script. This is where the real work happens.
  • default_backend (minimax_h3) and default_duration_seconds - fallbacks for shots that don't specify.
  • split_long_shots (default on) - long visual-only shots get explicitly split into multiple valid windows automatically. The description is careful: long dialogue must be split by the author, because dialogue has semantic continuity you can't just chop.
  • strict_exact_dialogue (default on) - validation that dialogue lines in a shot stay intact, no truncation.
  • The optional cast (from the Unified Cast node) and sound_canvas inputs bind character identity and audio beds into the compiled prompts.

Outputs:

timeline (the H3_T8_STUDIO_TIMELINE object - feed it to Shot Select) and timeline_json (a full dump you can read, diff, or hand to a script). The JSON is your truth source; the object is what runs.

Installing:

part of MiniMax H3 Audio T8. Manager → "MiniMax H3 Audio T8", or:

cd ComfyUI/custom_nodes
git clone https://github.com/T8mars/comfyui-minimax-h3-audio-T8

Restart. No mandatory pip deps.

The trap to avoid

Don't expect the timeline to be a one-click feature-film button. It's a deterministic plan - it solves window math and seed hygiene, not cinematic continuity. Shots that cross cuts still change scene, and the author's own notes say you shouldn't extrapolate from "timeline compiled" to "seamless video." Build per-shot, review per-shot, and let the timeline do the bookkeeping.

CategoryT8/MiniMax H3/Studio/Experimental

Inputs (11)

NameTypeDefaultDescription
project_idSTRINGh3_project
shots_jsonSTRING[{"id":"shot_1","prompt":"A cinematic opening shot","duration_seconds":5.0}]
default_backendCOMBOminimax_h34 options: minimax_h3, wan_2_2, ltx_video, generic_cinematic
default_duration_secondsFLOAT5.0000.001–86400
default_aspect_ratioSTRING16:9
base_seedINT00–18446744073709550000
seed_policyCOMBOincrement3 options: increment, fixed, hash_project_shot
split_long_shotsBOOLEANtrue
strict_exact_dialogueBOOLEANtrue
castoptH3_T8_UNIFIED_CAST
sound_canvasoptH3_T8_SOUND_CANVAS

Outputs (2)

NameTypeDescription
timelineH3_T8_STUDIO_TIMELINE
timeline_jsonSTRING