Nodes/MiniMax H3 Audio T8/MiniMax H3 Save AV Tail / 保存下一段上下文 (EXP/T8)
ComfyUI Node

MiniMax H3 Save AV Tail / 保存下一段上下文 (EXP/T8)

Save the tail of this H3 segment, and nothing else — that's the job

By T8mars·Created 20 days ago·Updated a day ago· 807
MiniMax H3 Save AV Tail / 保存下一段上下文 (EXP/T8)
  • av_latent
  • context_path
  • report_json
chain_idmy_h3_long_video
segment_index0
save_contexttrue
model_idunknown
sampling_summarydual_clock_euler/native_flow

The long-video story in MiniMax H3 is a chain: render segment 1, keep its tail, feed that tail as context to segment 2, and so on. MiniMaxH3LongVideoContextSaveT8 is the node that writes the tail down so the next segment can pick it up. It saves only the bounded H3 AV tail for the current segment - a little bit of the end of your video and the matching audio, not the whole latent - and it saves it atomically, which in practice means you can rerun a segment as many times as you like without corrupting the chain.

What makes it trustworthier than a generic "save latent" node: re-running the same segment replaces only its own slot in the chain store. It never touches the tail saved by segment N-1. That's the difference between a chain you can iterate on and a chain that silently degrades every time you re-queue. Combined with the ContextLoad node's "never pick the newest file" rule, you get a deterministic pipeline: what segment N sees depends only on what segment N-1 explicitly saved, never on file-system coincidence.

The inputs that matter

  • av_latent - the completed H3 joint audio/video latent from your sampler. This is what gets trimmed to a tail.
  • chain_id - must match the ContextLoad and Planner nodes. Mismatched ids are the #1 way this node "doesn't work."
  • segment_index - which slot this tail goes into. Segment N's tail is consumed by segment N+1.
  • save_context - the on/off switch. The orchestrator chain drives it automatically; set it false and the node validates but writes nothing (handy when you want to test the chain wiring before committing).
  • model_id and sampling_summary - metadata the node records alongside the tail, used to reject loading a tail from a different model or sampler setup. The default dual_clock_euler/native_flow matches the pack's stock H3 chain; leave it alone unless you're deliberately mixing.

Outputs

Two: context_path gives the location of the saved tail file, and report_json gives you the validation report. The node is marked as an output node, so it's a natural end of the segment's graph.

Install and gotchas

Install once for the whole pack: ComfyUI Manager → search MiniMax H3 Audio T8, or cd ComfyUI/custom_nodes && git clone https://github.com/T8mars/comfyui-minimax-h3-audio-T8, then restart. No mandatory pip dependencies, no auto model downloads. If your Long Video pipeline's final save or stitching complains, that's the ffmpeg-on-PATH requirement - the pack wants a real ffmpeg callable for candidate save and final concat, and most one-click ComfyUI builds already ship it.

Where people get burned: forgetting to run the save node for a segment, or running it with save_context off, then wondering why the next segment restarts clean. Another classic - changing model_id mid-chain and getting a context rejection on load. That's the fail-closed design working as intended: the pack would rather refuse a mismatched tail than glue it on and give you a broken seam. Keep chain_id, segment_index and model_id consistent across the planner, save and load nodes, and the chain behaves. This whole subsystem is Experimental, so keep expectations calibrated - the pack's own README is blunt that a mechanically clean chain isn't a guarantee of seamless visual quality.

CategoryT8/MiniMax H3/Long Video/Experimental

Inputs (6)

NameTypeDefaultDescription
av_latentLATENT
chain_idSTRINGmy_h3_long_video
segment_indexINT00–99999
save_contextBOOLEANtrue
model_idSTRINGunknown
sampling_summarySTRINGdual_clock_euler/native_flow

Outputs (2)

NameTypeDescription
context_pathSTRING
report_jsonSTRING