Nodes/MiniMax H3 Audio T8/MiniMax H3 Dual-Clock Sampler (T8)
ComfyUI Node

MiniMax H3 Dual-Clock Sampler (T8)

One clock for video, one for audio

By T8mars·Created 20 days ago·Updated a day ago· 807
MiniMax H3 Dual-Clock Sampler (T8)
  • model
  • av_latent
  • model
  • sampler
  • sigmas
steps4
shift_video12.00
shift_audio3.00
sampler_namedual_clock_euler
schedulernative_flow

Most video models have one noise schedule. H3 doesn't, because it isn't one model - it's a joint audio+video Transformer where the picture runs at 24fps and the audio runs on its own ~40Hz clock. Treat both with a single schedule and one side gets the wrong number of steps where it matters. MiniMaxH3DualClockSamplerT8 is the pack's answer: a sampling setup with separate video and audio clocks, and it's the backbone of the whole MiniMax H3 Audio T8 pack. If you're generating H3 here, this is likely the sampler node you start from.

What it actually outputs

It's a setup node, not a full KSampler: it takes model and av_latent and returns model, sampler, and sigmas - the three pieces you wire into the actual sampler node, exactly like a ModelSamplingDiscrete style setup. You set steps (default 4 - H3 is flow-trained and fast), shift_video (12) and shift_audio (3). Those two shifts are the whole point: video noise gets a strong sigma shift, audio gets a gentler one, and each stream denoises on its own clock.

The sampler/scheduler combo

sampler_name defaults to dual_clock_euler and scheduler to native_flow. That pair is T8mars' original explicit dual-clock path, and the tooltip is careful: it preserves the original behavior. If your ComfyUI build has native H3 FLOW_AV support, you can also pick any stock sampler/scheduler and it routes through ComfyUI's native protocol instead. The KB's sampler guidance applies double here: H3 is a flow-matching model, so your old DPM++ 2M Karras habits belong to a different architecture - Euler-family on a conservative schedule is the safe lane.

Where it sits in a workflow

MiniMaxH3AudioConditioningT8 builds your AV conditioning and latent, this node prepares the sampling math, then a standard sampler runs it and MiniMaxH3AVDecodeT8 decodes the joint latent back to video + audio on the timeline. The pack's examples (01-basic-generation) wire it exactly that way - start there before you experiment.

Installing it

From MiniMax H3 Audio T8 (T8mars/T8star, GPL-3.0). ComfyUI Manager → search MiniMax H3 Audio T8, or:

cd ComfyUI/custom_nodes
git clone https://github.com/T8mars/comfyui-minimax-h3-audio-T8

restart. No forced pip extras; H3 DiT, CLIP, video/audio VAE and LoRAs go in models/ yourself. And the H3 weights' Community License excludes the US, EU, UK and South Korea - check that before downloading.

The classic screw-ups

The README's troubleshooting list is worth quoting mentally: duplicated Sigma/sampler connections are a top cause of OOMs and weird output. Feed sigmas from this node once, don't re-wire a second sampler into the same path. And respect H3's frame grid - 22, 124, 362 are the shapes that work; don't guess "5 seconds" and hand the sampler an arbitrary length. If audio vanishes or comes out wrong, check that you're decoding with AVDecode's timeline-preserving path rather than treating it like a silent video model.

CategoryT8/MiniMax H3/Audio

Inputs (7)

NameTypeDefaultDescription
modelMODEL
av_latentLATENT
stepsINT41–1000
shift_videoFLOAT12.000.01–100
shift_audioFLOAT3.000.01–100
sampler_nameoptCOMBOdual_clock_eulerdual_clock_euler preserves the original T8 explicit dual-clock path. Other choices use ComfyUI's native MiniMax H3 FLOW_AV protocol.
scheduleroptCOMBOnative_flownative_flow preserves the original shifted uniform H3 flow schedule. Other choices use ComfyUI's built-in scheduler implementation.

Outputs (3)

NameTypeDescription
modelMODEL
samplerSAMPLER
sigmasSIGMAS