Mmaudio
Paper · Webpage · Models · Demo · Colab · Replicate
Taming Multimodal Joint Training for High-Quality Video-to-Audio Synthesis
Ho Kei Cheng, Masato Ishii, Akio Hayakawa, Takashi Shibuya, Alexander Schwing, Yuki Mitsufuji
University of Illinois Urbana-Champaign, Sony AI, and Sony Group Corporation
CVPR 2025
Highlight
mmaudio generates synchronized audio from video and text inputs. Its central idea is multimodal joint training across a broad range of audio-visual and audio-text data, paired with a synchronization module that aligns generated sound to the movement and timing of each frame.
Try a prompt above, or explore the examples below:
Sora-style ocean scene
Synchronized ambience
Veo-style skate sequence
Movement-aware impacts
Material close-up
Texture-led sound design
Installation
We have tested mmaudio on Ubuntu environments with modern CUDA-capable hardware.
Prerequisites
We recommend using a miniforge environment.
- Python 3.9+
- PyTorch 2.5.1+ with the corresponding torchvision and torchaudio packages for your CUDA version.
1. Install the prerequisite packages if needed:
Other CUDA versions may also work when supported by your GPU and driver.
2. Clone the repository:
3. Install mmaudio with pip:
pip install -e .
The model files are downloaded automatically when the demo script is run. Checksums and model details are included in the repository documentation.
Demo
By default, the scripts use the large_44k_v2 model. In our experiments, inference uses around 6GB of GPU memory in 16-bit mode, which fits many modern GPUs.
Command-line interface
With demo.py:
Audio is written in .flac format and reconstructed video is written in .mp4 format under ./output. Omit --video for text-to-audio synthesis.
Gradio interface
The interface supports video-to-audio and text-to-audio synthesis. Experimental image-to-audio processing is also available by duplicating an image into a video sequence. The default port is 7860.
FAQ
- Video processing. Higher-resolution videos take longer to encode and decode, but do not necessarily improve output quality. The CLIP encoder resizes frames to 384×384 pixels, while Synchformer resizes the shorter edge to 224 pixels and applies a center crop.
- Frame rates. CLIP operates at 8 FPS and Synchformer at 25 FPS. Frame-rate conversion happens through the video reader, with duplication used when the input frame rate is lower than required.
- Failure cases. As with most generative models, failures can occur and the reasons are not always obvious. Known failure modes are documented with the project materials.
- Performance variations. Hardware, video backends, inference precision, batch sizes, compilation settings, and random seeds can produce subtle differences between runs.
Known limitations
- The model can sometimes generate unintelligible human speech-like sounds.
- The model can sometimes generate background music without explicit musical training.
- The model may struggle with unfamiliar concepts and fine-grained action descriptions.
These limitations can be addressed through higher-quality and more diverse training data.
Training
See TRAINING.md for data preparation, distributed training, and configuration details.
Evaluation
See EVAL.md for benchmark setup and onset evaluation scripts.
Training Datasets
mmaudio was trained on several datasets, including AudioSet, Freesound, VGGSound, AudioCaps, and WavCaps. These datasets have their own licenses and usage terms. The pretrained models may not be suitable for every commercial use case.
Update Logs
- 2025-03-09: Uploaded corrected TSV files.
- 2025-02-27: Disabled the GradScaler by default to improve training stability.
- 2024-12-23: Added training and batch evaluation scripts.
- 2024-12-14: Replaced the frame reader with PyAV and cached frames during reconstruction.
- 2024-12-13: Improved CLIP and Sync feature extraction with a batch-size multiplier and removed the unused VAE encoder during inference.
- 2024-12-11: Replaced the framerate reader for more reliable reconstruction across hosted GPU environments.
Citation
title={{MMAudio}: Taming Multimodal Joint Training for High-Quality Video-to-Audio Synthesis},
author={Cheng, Ho Kei and Ishii, Masato and Hayakawa, Akio and Shibuya, Takashi and Schwing, Alexander and Mitsufuji, Yuki},
booktitle={CVPR},
year={2025}
}
Relevant Repositories
- av-benchmark for benchmarking results.
License
- The code is released under the MIT license.
- The checkpoints are released under the CC-BY-NC 4.0 license.
Disclaimer
We have no affiliation with and have no knowledge of the party behind the domain “mmaudio.net”.
Acknowledgement
Many thanks to:
- Make-An-Audio 2 for the 16kHz BigVGAN pretrained model and VAE architecture.
- BigVGAN
- Synchformer
- EDM2 for the magnitude-preserving VAE network architecture.