MMAudio ModelLoader
The boring node that decides what your audio can even be
- mmaudio_model
The MMAudio ModelLoader does exactly one job and does it quietly: it loads the MMAudio transformer into VRAM and hands it to the sampler. It's the least glamorous node in the pack, and also the one you can't skip - every MMAudio workflow starts here. If you've ever bolted audio onto the end of a Wan or Hunyuan render, MMAudio is the model doing it, and this is the node that pulls its brain in.
MMAudio is a flow-matching model that generates sound matching an input video (with an optional text prompt steering it). The KB's audio layer essay calls it "the workhorse" of video-to-audio - it's what turns a silent clip into something with a soundtrack. This loader just brings the core model, which is honestly the easy part. The clever part is what it does while loading.
How it works
Kijai's loader doesn't ask you which variant you have - it sniffs the safetensor. On load it looks at the shape of a weight in the audio input projection and uses it to pick the architecture: a 448-wide projection means the small 7-head model, 896 means the large 14-head one, and it even detects the newer "v2" revision from the timestep embedder. So one node handles every MMAudio checkpoint without you ever thinking about hidden dimensions.
The one thing you do have to get right is the filename. The node parses the model filename to decide the sequence config: a file containing 44 gets the 44.1kHz config, 16 gets the 16kHz one. That config sets the sample rate and latent layout the sampler works with, and it has to match what the FeatureUtilsLoader is set to. Keep "44k" or "16k" in the filename and life is simple.
The inputs that matter
There are only two, and one of them you'll never touch after the first run:
- mmaudio_model - a dropdown of everything in
ComfyUI/models/mmaudio. Pick your MMAudio safetensor (for the standard 44k path that'smmaudio_large_44k_v2_fp16.safetensorsfrom Kijai's HF repo). Only MMAudio weights belong here - this is not where the VAE, CLIP, or vocoder go. - base_precision -
fp16default,fp32, orbf16. fp16 is the sane default and halves VRAM versus fp32. Grab fp32 only if you're chasing marginal quality and have the headroom; the pack's own issue tracker has people asking what the difference even is, which tells you most of them never notice.
The output is a single mmaudio_model socket (type MMAUDIO_MODEL), and it wires straight into the MMAudio Sampler's mmaudio_model input. That's it - one link.
Installing it
This is a Kijai pack, so it's a git clone plus a dependency install, not a one-click core feature:
cd ComfyUI/custom_nodes
git clone https://github.com/kijai/ComfyUI-MMAudio
Then, in your ComfyUI environment:
pip install -r ComfyUI/custom_nodes/ComfyUI-MMAudio/requirements.txt
Portable installs run that through python_embeded\python.exe -m pip install. ComfyUI Manager also has it under "ComfyUI-MMAudio" if you'd rather click. The requirements pull in librosa, torchdiffeq, open_clip_torch, timm, omegaconf, accelerate and friends - torchdiffeq is the heavy one, but it's a clean install on any recent Python.
Where people get burned
The headline error for this loader is module 'torch.nn' has no attribute 'Buffer'. It's not your fault and not your workflow's fault - it means your torch is older than 2.6, and the MMAudio code uses nn.Buffer which didn't exist before then. Update torch and it stops. Other classic wall-hits: loading a random file into the dropdown and getting KeyError: 'audio_input_proj.0.bias' (that's the model-detect crashing because you fed it a VAE or a clip), and picking a 16k model while the rest of the workflow is set to 44k mode. Keep the mode consistent across the pack and the filename honest, and this node stops being the one that eats your afternoon.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| mmaudio_model | COMBO | These models are loaded from the 'ComfyUI/models/mmaudio' -folder | |
| base_precision | COMBO | fp16 | 3 options: fp16, fp32, bf16 |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| mmaudio_model | MMAUDIO_MODEL | — |