H3 Continuum Sampler V3.8
Making MiniMax H3 last longer than 15 seconds without losing the thread
- model
- clip
- video_vae
- sampler
- sigmas
- first_frame
- last_frame
- reference_image_1
- reference_image_2
- reference_image_3
- reference_video_1
- driving_audio
- audio_vae
- reference_audio_1
- reference_audio_vae
- guide
- audio_references
- video_latents
- audio_latents
- assembly_plan
- status
- driving_audio
- refine_context
MiniMax H3 is a 33B omni-modal video model that generates its audio in the same pass as the picture - genuinely impressive stuff, and the first serious open answer to "video that comes with sound." But like most diffusion video, a single native generation tops out around 15 seconds, and if you've ever faked a longer clip by queuing three separate generations, you know how that ends: the camera drifts, the jacket changes color, the music shifts key at every cut. H3 Continuum Sampler V3.8 is the node that solves that properly. It's the "production sampler" of the H3 Continuum pack - it splits a long run into chunks, carries video and audio context across every boundary, and lets you review, keep, retry, or resume each chunk instead of gambling on one whole run.
An orchestrator, not a sampler
The name is a bit of a lie in one direction: it's not a sampler in the ComfyUI sense of "pick Euler vs. DPM++." It's an orchestrator that sits between your model and your decoder. You still give it a real sampler and sigmas, and it uses them unchanged for every chunk - what it adds is the chunking, the continuation, and the bookkeeping.
What goes in
The required graph inputs read like a Core H3 setup: model, clip, video_vae, sampler, sigmas, and sequence_prompt (one multiline text node with your whole sequence). One quirk: video_vae only encodes image conditioning - Continuum never decodes with it, and pure text-to-video doesn't touch it. Decoding happens downstream.
Then the widgets that actually run the show:
prompt_mode-Autodetects whether yoursequence_promptis a Fixed prompt, a----separated List, or a[0-5s]-style Timeline. Timeline is where long-form scenes live - put a global preamble before the first[0-5s]header, then describe each chunk's action in its own section.chunksandchunk_seconds- the final total (1–16) and each chunk's duration. 5–15 seconds is the validated sweet spot; 30-second chunks exist but eat VRAM at high resolution.Total Lengthis just their product - it is not a progress counter.size_source-First Imagesizes the output from yourfirst_frame's aspect ratio (with apresetfromDraft - 0.30 MPup toNative 768);Manualuses exactwidth/heightin multiples of 32 - the normal choice for text-to-video.continuityandaudio_continuity- how much prior context survives each boundary.Balanced - 22 framesis the accepted default;Strong - 39 framesis experimental.base_seed- keep it fixed across queues if you want resume and regeneration to actually reuse your saved chunks.run_storage(Save + Auto Resume) with an optionalrun_name, plusreroll_from_chunkto rebuild from a chosen chunk, andgeneration_mode(Full RunvsReview Each Chunk) for human-in-the-loop work.
Optional media sockets round it out: first_frame/last_frame for I2VA/FL2VA, three reference_image_* sockets, reference_video_1 (the "Video Guide Frames" batch), driving_audio + audio_vae to preserve a source track, and reference_audio_*/audio_references for conditioning-only sound.
What comes out
Six outputs, but the pipeline you'll actually wire is the first two: video_latents and audio_latents (lists, one entry per chunk) go to Core Video/Audio VAE Decode, then assembly_plan tells Continuum's Finalize node how to stitch the decoded groups back into the exact requested timeline. status is a plain-text report of what the last queue did - read it before blaming the node for a mystery. driving_audio passes your selected source track through, and refine_context is only for the advanced Second Pass bridge.
Installing
It's the one-clone whole-pack install:
cd ComfyUI/custom_nodes
git clone https://github.com/ukr8b3g-cmyk/ComfyUI-H3-Continuum.git
Restart ComfyUI, or search "H3 Continuum" in ComfyUI Manager. No pip dependencies - it runs on ComfyUI's bundled PyTorch and needs ComfyUI 0.32.0+ (verified against 0.34.2). The supplied example workflow also wants Spectrum, rgthree, KJNodes and ComfyUI-Easy-Use installed, but those are only for opening that one graph - the node itself doesn't need them.
Where people get burned
First: in Review Each Chunk mode the first queue intentionally produces one chunk - a 5-second video when Total Length says 30. That's the design; approve it and queue again. Second: the review action buttons only select what the next queue does - you still have to press ComfyUI's top-right Run. Third: V3.8 exports exactly seven nodes, so a saved workflow from an older release can load as an unknown node; use the matching release tag rather than fighting it. Two honest caveats from the pack's docs: long repeated continuation can drift contrast and sharpness (open issue #13, no production fix), and the accepted 16 GB gate ran near 15.5 GiB in the hardest cases - tested, not guaranteed. And if you're in the US, EU, UK or South Korea, double-check the MiniMax H3 Community License before building anything on the weights this node orchestrates.
Inputs (47)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | MiniMax H3 diffusion model used for every Continuum chunk. | |
| clip | CLIP | MiniMax H3 text encoder used to encode the complete Sequence Prompt. | |
| video_vae | VAE | Used only to encode image conditioning. T2VA does not use it; Continuum never decodes with it. | |
| sampler | SAMPLER | ComfyUI sampler algorithm used unchanged for every generated chunk. | |
| sigmas | SIGMAS | ComfyUI noise schedule used unchanged for every generated chunk. | |
| sequence_prompt | STRING | Connect one Text (Multiline) for the complete sequence. | |
| prompt_mode | COMBO | Auto | Auto accepts Fixed, list-separated, and timeline prompt styles. |
| chunks | INT | 31–16 | Number of sequential Continuum chunks to generate. |
| chunk_seconds | FLOAT | 5.04–30 | Target duration shared by every chunk. 5–15 seconds is the recommended and validated range. Values above 15 seconds are supported, but VRAM use and processing time can increase substantially, especially at high resolution. |
| aspect | COMBO | Auto from First Image | Saved V3.8 workflow compatibility only. The frontend migrates this value to Size Source and hides it from the Main UI. |
| preset | COMBO | Draft — 0.30 MP | Used only with Size Source = First Image. Draft is fastest; Balanced retains more detail; Native 768 uses the H3 native short edge; Custom uses Custom MP. |
| custom_mp | FLOAT | 0.300.1–16 | Custom target megapixels while preserving the connected First Image aspect ratio. Used only when Resolution Preset is Custom. |
| continuity | COMBO | Balanced — 22 frames | Amount of prior video context retained at each chunk boundary. |
| base_seed | INT | 00–18446744073709550000 | Base seed used to derive deterministic per-chunk seeds. |
| audio_continuity | BOOLEAN | true | On passes prior audio context into continuation chunks. Turn it off only to isolate or replace generated audio. |
| diagnostics | COMBO | Basic | Controls the detail level of the read-only Status report. It does not change generated tensors. |
| reroll_from_chunk | COMBO | Auto | Auto resumes the longest compatible saved prefix. Choosing a chunk reuses earlier chunks and regenerates that chunk and everything after it. |
| reroll_nonce | INT | 00–4294967295 | Change only when regenerating an explicit chunk and you want a new variation with otherwise identical settings. |
| strict_compatibility | BOOLEAN | true | Legacy saved-workflow input. V3.8 keeps it loadable but ignores its value. |
| debug | BOOLEAN | false | Developer diagnostics controlled by the H3 Continuum settings panel. |
| show_preview | BOOLEAN | true | Show live sampling previews. Disable only to reduce preview overhead. |
| run_storage | COMBO | Off | Atomically save raw AV chunks and resume a compatible saved run. |
| run_name | STRING | Enter a stable name for this saved run. Compatible chunks are selected automatically. | |
| reference_size | COMBO | Match Output | Match Output is the practical default; Max Identity preserves more reference detail. |
| project_id | STRING | Optional. Leave blank to derive a stable ID from this sampler node. Run Name remains the explicit override. | |
| video_reference_size | COMBO | Efficient - 0.4 MP | Efficient limits Video Guide Frames to about 0.4 MP; Balanced uses about 0.6 MP; Match Output uses the output pixel area. Source aspect ratio is preserved and smaller sources are not enlarged. |
| continuation_backend | COMBO | Standard | Standard uses the V3.6 target-preserving continuation path. With Audio Continuity enabled, Masked AV currently uses Balanced 22; Fast 5, Strong 39, and Auto safely use Reference Context. Compatibility restores the V3.5 Reference Context path for older workflows or comparison. Run Storage identity follows the resolved transport before execution begins. |
| generation_mode | COMBO | Full Run | Full Run preserves normal Production execution. Review Each Chunk generates at most one new physical group per Queue and requires Run Storage = Save + Auto Resume. |
| review_action | COMBO | Continue / Next | Continue / Next accepts the current review and advances. Regenerate Current and Finish Remaining are one-shot actions. Smart Regenerate requires Regenerate From = Auto. |
| take_group | INT | 00–16 | Internal Render History selection. Use the visible Previous/Next Take controls instead of editing this value directly. |
| take_revision_id | STRING | Immutable revision selected by Render History. The visible Take controls manage this value from verified Run Storage data. | |
| take_action | COMBO | Automatic | One-shot Render History action. Selecting a Take alone does not change the canonical branch; Queue normally after choosing an action. |
| size_source | COMBO | Legacy Aspect | First Image preserves its aspect at the selected Resolution Preset. Manual uses Width and Height exactly. Legacy Aspect is accepted only for saved-workflow and API compatibility. |
| width | INT | 73632–16384 | Exact output width in Manual mode. Use a multiple of 32. Manual mode is the normal choice for T2VA or workflows without a First Image. |
| height | INT | 41632–16384 | Exact output height in Manual mode. Use a multiple of 32. Manual mode is the normal choice for T2VA or workflows without a First Image. |
| first_frameopt | IMAGE | First Image conditioning for I2VA or FL2VA. With Output Size = First Image, its aspect ratio also defines the output canvas. Leave it disconnected and use Manual Width/Height for T2VA. | |
| last_frameopt | IMAGE | Optional last-frame anchor for FL2VA. Leave disconnected for T2VA and normal I2VA. | |
| reference_image_1opt | IMAGE | Optional Reference Image 1 for appearance, identity, subject, or scene guidance. | |
| reference_image_2opt | IMAGE | Optional Reference Image 2. Prompt references follow the connected image order. | |
| reference_image_3opt | IMAGE | Optional Reference Image 3. Prompt references follow the connected image order. | |
| reference_video_1opt | IMAGE | Optional video guide. Connect the IMAGE frame batch from a video loader; source-video audio is not included. Frames are interpreted at 24 fps and applied to every chunk. Non-native frame counts are padded by repeating the final frame to the next H3 17k+5 count, up to the one-chunk limit. | |
| driving_audioopt | AUDIO | Optional original audio timeline. It is used as native H3 guide conditioning and selected unchanged for final output. | |
| audio_vaeopt | VAE | Required only when Driving Audio is connected. Uses the same Audio VAE encode path as ComfyUI Core MiniMax H3 Add Guide. | |
| reference_audio_1opt | AUDIO | Optional standalone audio reference for H3 conditioning. It is not the audio track of Video Guide Frames. Unlike Driving Audio, it does not replace the generated final audio. | |
| reference_audio_vaeopt | VAE | Required only when Reference Audio is connected. It encodes the reference for H3 conditioning; generated audio remains the output. | |
| guideopt | H3_CONTINUUM_STILL_IMAGE_GUIDE | Optional V3.7 Still Image Guide. Only the owning physical sampling group receives the Core minimax_keyframes entry. | |
| audio_referencesopt | H3_CONTINUUM_AUDIO_REFERENCES | Optional ordered bundle from H3 Continuum Reference Audios. Do not connect it together with the legacy single Reference Audio input. |
Outputs (6)
| Name | Type | Description |
|---|---|---|
| video_latents | LATENT | — |
| audio_latents | LATENT | — |
| assembly_plan | H3_CONTINUUM_ASSEMBLY_PLAN | — |
| status | STRING | — |
| driving_audio | AUDIO | — |
| refine_context | H3_CONTINUUM_REFINE_CONTEXT | — |