
In simple English
This tool lets your C or C++ programs play sounds and record audio from a microphone. You drop one file into your project, and it handles all the complicated audio code for Windows, Mac, Linux, and phones. It has no extra dependencies, so you do not need to install heavy system packages or setup tools. It supports common sound formats like MP3 and WAV right out of the box. It is free to use for any personal or commercial project without paying anything.
What it is
Miniaudio is an audio playback and capture library written in C, delivered as a single source file. It provides both simple high-level functions for playing sound effects and low-level control for advanced mixing and effects.
What it is good for
Solo developers building games, media players, or custom audio tools in C or C++ who want to avoid complicated audio setup across different operating systems.
- Fits in a single source file that you drop straight into your project tree.
- Requires no external dependencies beyond the standard system library.
- Runs on almost all major desktop, mobile, and web platforms.
- Requires writing code in C or C++ to use its features.
- Does not guarantee application binary interface (ABI) compatibility between versions.
- Only supports WAV files for encoding out of the box.
complex platform-specific audio APIs like DirectSound, CoreAudio, or ALSA
SDL
- libsdl-org/SDL17k stars
SDL is a large cross-platform multimedia library that includes audio alongside window management and input handling.
- Immediate-Mode-UI/Nuklear11k stars
Nuklear is another single-header C library, though it handles user interfaces rather than audio playback.
- unocss/unocss19k stars
A styling engine that reads the labels in your markup and generates only the CSS those labels need.
- HypothesisWorks/hypothesis9.1k stars
A Python library that generates test inputs and reduces any failure to the smallest example that still fails.
# Drop miniaudio.h and miniaudio.c into your source tree and compile them directly.