Audio.cpp now supports MiniMax-Music3. No Python. Demo and performance metrics inside.

#24
by audio-cpp - opened

Check our repo https://github.com/0xShug0/audio.cpp. GGUFs here https://huggingface.co/audio-cpp/MiniMax-Music3-GGUF.

Measured on an RTX 5090 with CUDA using a 30-second lyric generation request (official prompt features/pop), 30 flow steps, flow guidance scale 1.7, AR guidance scale 1.5, and top-k 50. Peak VRAM is the observed nvidia-smi process peak during a warmup-plus-measured-request run.

Component mix Language model RVQ depth decoder Flow transformer RTF Speed Peak VRAM
Default Q4/Q8/Q4 q4_0 q8_0 q4_0 0.738 1.35× realtime 9.8 GiB
Q8 q8_0 q8_0 q8_0 0.832 1.20× realtime 13.4 GiB
BF16 bf16 bf16 bf16 1.389 0.72× realtime 19.4 GiB

Lower values such as 10 or 20 can be much faster, while still producing reasonable results depending on the prompt and seed.
Q8:
steps=10 rtf=0.597129
steps=20 rtf=0.719549
steps=30 rtf=0.824861

End to end demo:

audio-cpp changed discussion title from Audio.cpp now support MiniMax-Music3. No Python. Demo and performance metrics inside. to Audio.cpp now supports MiniMax-Music3. No Python. Demo and performance metrics inside.

What does "Source Audio" do?

What does "Source Audio" do?

Nothing...Some fields are part of the generic UI template for music models (AceStep 1.5, Stable Audio 3 etc) but are not used in Music3.

audio-cpp changed discussion status to closed
audio-cpp changed discussion status to open

How do you actually get this working? I got through compiling it, then downloading the model using the integrated model downloading feature as I couldn't figure out what to do with the GGUFs link as I was expecting a single model, not a whole bunch of them, so I just let it download the model instead, but when I pick the model and try and generate something I just get an error:
"model directory contains 5 GGUF files: /home/francois/Development/audio.cpp/bin/models/MiniMax-Music3-GGUF; found: condition_encoder.gguf, language_model_q8_0.gguf, rvq_depth_decoder_q8_0.gguf, transformer_q8_0.gguf, vocoder.gguf; pass one of them directly with --model, or keep a single GGUF in the directory"

Screenshot 2026-11-04 at 1.20.37 am

@RazielAU Please use -DAUDIOCPP_DEPLOYMENT_BUILD=ON when building to embed the model specs, so the server can find Music3’s contract regardless of its working directory.

Without this flag, launch the server from the repository root or pass --model-spec-override /path/to/audio.cpp/model_specs/minimax_music3.json.

Thanks, I'll try it out soon, audio.cpp seems really promising, I just hope these difficulties aren't common when using it as it would be good to have a single audio app that handles a lot of models.

Sign up or log in to comment