[Legacy] H3 Continuum Join
The V1 building block that chains one H3 clip to the next
- model
- conditioning
- latent
- previous_state
- model
- conditioning
- latent
- plan
- report
H3 Continuum Join is the workhorse of the pack's V1 generation - the manual, block-by-block way to build a long MiniMax H3 video. The modern samplers chain chunks for you automatically; this node is the Lego brick those samplers replaced. You place it in front of a normal KSampler, and it prepares a continuation clip: it takes the previous run's audio/video latent state, positions it on the new clip's timeline as one context reference, and gives you a model, conditioning, and latent that you feed into your regular sampler to generate the next segment. Then Finish trims that segment and captures the state for the next Join, and Assemble glues the decoded segments together.
Because it slots into a normal sampling graph, it composes with whatever you already have in the chain - the description is explicit that it uses per-MODEL wrappers only and works alongside external SageAttention, Sol-Attn, and Spectrum.
Inputs that matter
model,conditioning,latent- the normal KSampler wiring, transformed by the node into continuation-ready versions.previous_state(optional) - theH3_CONTINUUM_STATEfrom the previous Finish. Without it, the node has no context and can't continue.continuity-Balanced - 22 frames(reproduces the V1 default),Fast - 5 frames, orStrong - 39 frames (Experimental). This is how much prior video context the next clip gets.extend_seconds(5.0) - the new duration requested. The tooltip is the key detail: H3 snaps to the nearest 17k+5 frame count, so the actual output won't always be exactly what you typed.audio_continuity(true) - carry the previous native audio latent and place it on the new clip's timeline.first_frame_policy- default keeps the Continuum context while preserving visual identity tokens; alternatives error on an existing keyframe or keep the first-frame keyframe too (advanced).preserve_last_frame(true) - moves an existing FL2VA last-frame anchor to the end of the continuation clip.strict_compatibility(true) - proactive native-H3 API checks; marked payload failures always stop.
Outputs: model, conditioning, latent (into your KSampler), plus plan (an H3_CONTINUUM_PLAN that Finish consumes) and report.
Install
cd ComfyUI/custom_nodes
git clone https://github.com/ukr8b3g-cmyk/ComfyUI-H3-Continuum.git
or via ComfyUI Manager ("H3 Continuum"), then restart. No extra pip packages; needs a MiniMax H3 ComfyUI environment (weights not bundled) and ComfyUI v0.32.0+.
Honest verdict: this is the fiddly old way, and the current V3.3 sampler exists precisely so you don't have to string Join → KSampler → Finish → Assemble by hand across a dozen clips. Keep this node in your vocabulary for reading old workflows - the manual chaining loop is the clearest explanation of what "continuation" means in this pack - but reach for the integrated sampler for actual work. If you do build with it, the loop is: Join (with the previous Finish's state) → sample → Finish → next Join. Forget the previous_state wire and you're just generating unconnected clips.
Inputs (11)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | — | |
| conditioning | CONDITIONING | — | |
| latent | LATENT | — | |
| continuity | COMBO | Balanced — 22 frames | 3 options: Balanced — 22 frames, Fast — 5 frames, Strong — 39 frames (Experimental) |
| extend_seconds | FLOAT | 5.00.5–15 | Requested NEW duration. H3 snaps to the nearest 17k+5 frame count. |
| audio_continuity | BOOLEAN | false | Carry the previous native audio latent and place it on the new clip timeline. |
| first_frame_policy | COMBO | Use Continuum context; keep visual identity tokens (Recommended) | Recommended: replace only the old spatial keyframe. If the prompt was encoded with an input image, its Qwen visual tokens remain as an identity cue. |
| preserve_last_frame | BOOLEAN | true | Move an existing FL2VA last-frame anchor to the end of the continuation clip. |
| strict_compatibility | BOOLEAN | true | Run proactive native-H3 API checks. Marked Continuum payload failures always stop; they are never silently bypassed. |
| debug | BOOLEAN | false | — |
| previous_stateopt | H3_CONTINUUM_STATE | — |
Outputs (5)
| Name | Type | Description |
|---|---|---|
| model | MODEL | — |
| conditioning | CONDITIONING | — |
| latent | LATENT | — |
| plan | H3_CONTINUUM_PLAN | — |
| report | STRING | — |