MiniMax H3 Auto Accept & Continue / 自动接受续跑 (EXP/T8)
The terminal node that accepts, composes, and queues exactly one next segment
- video
- accepted
- manifest_path
- final_video_path
- background_state_json
- report_json
Where Background Start opens the long-video run, this node closes it. It's the terminal node of the explicit background workflow: it accepts the current candidate, optionally composes the final MP4, applies the selected release policy even at pause/final boundaries, and queues exactly one next prompt. The phrase to hold onto is "exactly one" - a long video that queues five segments by accident is how you wake up to a dead VRAM card. This node is built to not do that.
It's in T8/MiniMax H3/Long Video/Experimental and pairs with Background Start: that node hands you chain_id, auto_accept, job_id, and background_state_json, and this is where they land.
How it works
You feed it the candidate_json_path from Candidate Save plus the job_id from Background Start. With auto_accept true it promotes the candidate into the accepted manifest (same atomic promotion and invalidation rules as Review & Accept), and compose_when_complete (default true) then streams the accepted segments into a final MP4. Then it queues the next prompt - one.
The compose settings are the delivery controls: filename_prefix (default H3_Long_Video), audio_seam_policy (cosine_bridge default, which preserves the exact sample count across joins), bridge_ms (default 5, the audio seam bridge width), and crf (default 18, the encode quality). The release policy from Background Start is requested even at pause and final boundaries, so memory doesn't quietly accumulate across the whole chain.
replace_policy (reject_existing) and strict_chain_identity (true) carry the same staleness guards as Review & Accept - the terminal node is not a shortcut past the integrity system, it's an automation of it.
The inputs that matter
candidate_json_path+job_id- the current candidate and its run. Both required.auto_accept- the gate. False = review-only, true = promote.compose_when_complete- true by default; set false if you want the segments and want to compose manually later.crf- 18 is the default; lower is better quality but bigger files.audio_seam_policy/bridge_ms- your seam-quality controls for the joins.
Outputs
video (the composed file or the candidate preview), accepted (BOOLEAN), manifest_path, final_video_path (only populated when compose ran), background_state_json, and report_json.
Installing it
Pack install: ComfyUI Manager → "MiniMax H3 Audio T8", or git clone https://github.com/T8mars/comfyui-minimax-h3-audio-T8 into ComfyUI/custom_nodes, restart. No mandatory pip deps - but composing an MP4 requires ffmpeg on PATH, same as Candidate Save, and the node will tell you before writing if it's missing.
Common issues
It queues nothing and the chain stops. Check background_state_json and the job_id - if the job identity doesn't match what Background Start registered, the controller can't know what "next" means. Keep the two in lockstep.
Audio clicks at the segment joins. cosine_bridge at 5ms is the default and usually fine; if you hear clicks on a particular source, raise bridge_ms in small steps. If the sample count drifts instead, that's a different failure - cosine_bridge exists to preserve the exact sample count, so a drift there means something upstream changed the audio length.
Inputs (10)
| Name | Type | Default | Description |
|---|---|---|---|
| candidate_json_path | STRING | — | |
| job_id | STRING | — | |
| auto_accept | BOOLEAN | false | — |
| replace_policy | COMBO | reject_existing | 2 options: reject_existing, replace_and_invalidate_following |
| strict_chain_identity | BOOLEAN | true | — |
| compose_when_complete | BOOLEAN | true | — |
| filename_prefix | STRING | H3_Long_Video | — |
| audio_seam_policy | COMBO | cosine_bridge | 2 options: cosine_bridge, none |
| bridge_ms | FLOAT | 5.00–50 | — |
| crf | INT | 180–51 | — |
Outputs (6)
| Name | Type | Description |
|---|---|---|
| video | VIDEO | — |
| accepted | BOOLEAN | — |
| manifest_path | STRING | — |
| final_video_path | STRING | — |
| background_state_json | STRING | — |
| report_json | STRING | — |