Nodes/MiniMax H3 Audio T8/MiniMax H3 Reel Delivery Plan / 成片交付计划 (Advanced)
ComfyUI Node

MiniMax H3 Reel Delivery Plan / 成片交付计划 (Advanced)

Plan the whole reel before you render a single frame of it

By T8mars·Created 20 days ago·Updated a day ago· 807
MiniMax H3 Reel Delivery Plan / 成片交付计划 (Advanced)
  • timeline
  • reel_plan
  • total_frames
  • total_duration_seconds
  • plan_json
project_idh3_reel
reel_json{"clips":[{"id":"shot_1","path":"output:shot_1.mp4","trim_in_seconds":0,"crossfade_to_next_seconds":0}],"audio_lanes":[]}
sample_rate48000
maximum_transition_seconds1.0000
maximum_transition_buffer_mib512

If you're assembling a final cut from H3 clips - a reel, a sequence of shots with crossfades and a dialogue/music/ambience/SFX bed - you probably don't want to discover at the very end that one clip is 23.9fps instead of 24, or that a crossfade overlaps two clips you didn't mean to overlap. This node is the planning pass that catches all of that before anything expensive happens. It's read-only: it takes a JSON description of your reel, validates every source file, fingerprints it, and hands back a reel_plan object that the Compose node will later render.

The mechanism is deliberately file-level. It doesn't load clips into ComfyUI's IMAGE/AUDIO tensors - it checks actual video files on disk, confirms they're exact 24fps, applies trims and crossfades within your stated limits, and validates the four audio lanes (dialogue, music, ambience, SFX). Every source file gets fingerprinted at plan time, so what you plan is what gets rendered later, and the Compose step can verify nothing changed in between.

Inputs that matter

  • reel_json - the heart of it. A JSON with clips (each: id, path, trim_in_seconds, crossfade_to_next_seconds) and audio_lanes. The default shows the shape: {"clips":[{"id":"shot_1","path":"output:shot_1.mp4","trim_in_seconds":0,"crossfade_to_next_seconds":0}],"audio_lanes":[]}. Note output: prefix - clips live in ComfyUI's output tree.
  • sample_rate - the audio bus rate, 48000 default (32k–48k).
  • maximum_transition_seconds - how long crossfades may be (1s default, max 2s).
  • maximum_transition_buffer_mib - memory budget for transitions (512 default), so a plan can't secretly balloon your RAM.
  • timeline - optional H3_T8_STUDIO_TIMELINE input, so a Studio timeline can feed the plan directly instead of hand-written JSON.

Outputs: reel_plan (typed handle for Compose), total_frames, total_duration_seconds, and a plan_json string you can eyeball.

Installing and using it

Part of the T8mars MiniMax H3 Audio T8 pack (ComfyUI Manager → "MiniMax H3 Audio T8", or git clone https://github.com/T8mars/comfyui-minimax-h3-audio-T8 into custom_nodes), restart, no pip deps. But because the Compose step writes actual MP4s, ffmpeg must be callable from PATH - standard ComfyUI builds ship it; if yours doesn't, the node errors clearly before writing anything.

The take

The flow you want: ReelDeliveryPlan → review plan_json and total_duration_seconds → wire reel_plan into ReelDeliveryCompose. Treat this node as the "sign off on the edit list" step. The author's whole design language is explicit-confirm-everything, and the plan stage is where that pays off - it's the cheapest moment to notice a bad trim or a lane that's missing. One tip: fingerprints mean the plan is tied to those exact files. Re-render a shot after planning and the Compose stage can (and should) complain rather than silently shipping the stale one.

CategoryT8/MiniMax H3/Studio/Experimental

Inputs (6)

NameTypeDefaultDescription
project_idSTRINGh3_reel
reel_jsonSTRING{"clips":[{"id":"shot_1","path":"output:shot_1.mp4","trim_in_seconds":0,"crossfade_to_next_seconds":0}],"audio_lanes":[]}
sample_rateINT4800032000–48000
maximum_transition_secondsFLOAT1.00000–2
maximum_transition_buffer_mibFLOAT51216–4096
timelineoptH3_T8_STUDIO_TIMELINE

Outputs (4)

NameTypeDescription
reel_planH3_T8_REEL_DELIVERY_PLAN
total_framesINT
total_duration_secondsFLOAT
plan_jsonSTRING