Nodes/IAMCCS-nodes/MiniMax H3 Audio Policy
ComfyUI Node

MiniMax H3 Audio Policy

The simple select-and-gain between H3's audio and your driven source

By IAMCCS·Created 11 months ago·Updated 4 days ago· 113
MiniMax H3 Audio Policy
  • h3_audio
  • driven_audio
  • audio
  • report
modeh3_native_generated
h3_gain1.00
driven_gain1.00

Some audio nodes are routers with five modes and a JSON report. This one is the uncomplicated cousin: IAMCCS_MiniMaxH3AudioPolicy is a two-way select-with-gain between the audio H3 generated and an external driven source, and it does one thing well. You give it h3_audio (what the model produced for the chunk), a mode, and - when the mode needs it - a driven_audio input. You get back a single audio plus a report saying which mode won.

The three modes map cleanly onto how you think about a shot:

  • h3_native_generated (default) - trust H3's own generation. Output is h3_audio times h3_gain, clamped to [-1, 1].
  • h3_ref2va_audio - same shape of behavior as native: H3's decoded audio, gained and clamped. The distinction matters upstream (whether the chunk was conditioned on reference audio), but at this node both modes just keep the model's audio.
  • external_audio_post - drop H3's audio entirely and use driven_audio times driven_gain instead. This is the "I'm laying the real soundtrack in post" mode, and it hard-errors if driven_audio isn't connected (the message is in Italian: "richiede driven_audio" - requires driven audio), which is the right failure mode: better to fail at this node than to discover the master has no audio at the end of a render.

The two gain knobs are straightforward: h3_gain (default 1, range 0–2) applies to the H3-generated path, driven_gain (default 1, same range) to the external path. Output is always clamped to [-1, 1] so you can't accidentally blow out the master. The report STRING confirms which mode and which gain were applied.

Honest placement advice: in the full atomic H3 graph, this is the simple policy - the R21 variants (IAMCCS_MiniMaxH3AtomicAudioDrive + IAMCCS_MiniMaxH3AudioOutputPolicyR21) give you the four-mode routing with locked slices and external-post baskets. Use those when a timeline mixes generated audio with source-locked audio. Use this node when you just need "H3's audio, but I might duck it with a driven source" - it's lighter, easier to read, and its two-way logic is exactly right for a single-chunk graph or a quick test.

Installation is pack-standard: search IAMCCS in ComfyUI Manager, or clone https://github.com/IAMCCS/IAMCCS-nodes.git into custom_nodes, restart. No models, no pip deps - it's gain math on tensors.

Where people stumble: h3_ref2va_audio and h3_native_generated produce identical output at this node, and that confuses people who expect the reference mode to behave differently here. The difference between those two lives upstream - in whether H3 was conditioned on reference audio at sampling - not in this select node. If you were expecting the reference audio to be returned, you want the reference_audio output of the audio drive node, not this one. And the external_audio_post hard-error is intentional; if you hit it, either connect driven_audio or switch modes - don't leave the node in a state where it can't resolve.

CategoryIAMCCS/MiniMax H3

Inputs (5)

NameTypeDefaultDescription
h3_audioAUDIO
modeCOMBOh3_native_generated3 options: h3_native_generated, h3_ref2va_audio, external_audio_post
h3_gainFLOAT1.000–2
driven_gainFLOAT1.000–2
driven_audiooptAUDIO

Outputs (2)

NameTypeDescription
audioAUDIO
reportSTRING