Nodes/VRGameDevGirl Video Enhancement Nodes/VRGDG MiniMax H3 Audio Drive
ComfyUI Node

VRGDG MiniMax H3 Audio Drive

Make MiniMax H3 keep your song instead of inventing one

By vrgamegirl19·Created about a year ago·Updated about 7 hours ago· 718
VRGDG MiniMax H3 Audio Drive
  • av_latent
  • source_audio
  • audio_vae
  • audio_driven_av_latent
  • original_audio

MiniMax H3 is a multimodal video model with a party trick LTX can't match: it generates audio and video together, up to 15 seconds at 2K with native stereo sound. But that cuts both ways. If you're making a music video, you don't want the model to generate audio - you want it to obey your track, and a blank generated-audio latent is exactly the wrong starting point. VRGDG MiniMax H3 Audio Drive is the node that takes the song out of the model's hands: it replaces H3's blank audio latent with your encoded source track, locks it so denoising can't touch it, and passes your original audio through untouched for the final mux.

How it works

H3's video generation runs on a joint audio-video latent - the av_latent output you get from the H3 Reference/Image-to-Video nodes. By default that latent's audio region is generated noise waiting to become H3's own sound. This node does three things with it:

  1. Encodes your source_audio through H3's audio_vae and places it into the audio region of the AV latent, replacing the blank.
  2. Locks that audio with a zero-denoise mask, so the sampler physically cannot alter it - it stays exactly your track for the whole generation.
  3. Passes through the original source_audio as the original_audio output, so when you mux the final video you use the lossless source instead of anything the VAE round-tripped.

The prompt side is where people get burned. The pack's instructions are explicit: keep the same audio connected to the H3 reference node's ref_audio_0 input, and reference it in your prompt as <Audio 1>. H3's prompting uses indexed audio tags to point the model at which reference it should listen to - if you don't name it, the model may lip-sync to nothing or pick the wrong track.

Outputs: audio_driven_av_latent (your LATENT, ready to sample) and original_audio (for the mux).

The inputs that matter

  • av_latent - the joint AV latent from the H3 reference/i2v nodes.
  • source_audio - your actual music track. Same one goes into ref_audio_0.
  • audio_vae - H3's audio VAE. Using the wrong VAE here produces garbage that the zero-denoise lock then dutifully preserves.

Install

Part of the VRGameDevGirl pack: ComfyUI Manager → search vrgamedev (or https://github.com/vrgamegirl19/comfyui-vrgamedevgirl), restart, hard-refresh. Manual: git clone into custom_nodes, pip install -r requirements.txt; on Windows portable, pip install Cython scikit-build-core first and prefer Python 3.12.

Troubleshooting

The #1 failure is connecting the wrong audio to ref_audio_0 or skipping it entirely - the node locks your source into the latent, but the prompt's reference to <Audio 1> is what tells the model whose voice/music to pay attention to; mismatch those and you get synced-to-nothing output. Second: audio length. The encoded track has to fit the AV latent's temporal span - a 3-minute song into a 10-second clip will be cut, so feed it the clip-length excerpt. And if the final video's audio sounds worse than your source, you're probably muxing the encoded latent instead of the original_audio output - use the passthrough.

CategoryVRGDG/Video/Conditioning

Inputs (3)

NameTypeDefaultDescription
av_latentLATENTJoint AV latent from MiniMax H3 Reference/Image to Video.
source_audioAUDIOAudio that should drive the video and remain unchanged in the final mux.
audio_vaeVAEMiniMax H3 audio VAE used to place the source audio in the AV latent.

Outputs (2)

NameTypeDescription
audio_driven_av_latentLATENT
original_audioAUDIO