QOA - The “Quite OK Audio Format” for fast, lossy audio compression
January 23, 2026 · View on GitHub
QOA - The “Quite OK Audio Format” for fast, lossy audio compression
Single-file MIT licensed library for C/C++
See qoa.h for the documentation and format specification.
More info at: https://qoaformat.org
Audio samples in WAV & QOA format can be found at: https://qoaformat.org/samples/
⚠️ This implementation has not yet been fuzzed. Don't use it with untrusted input.
Compiling
Call make to build qoaconv and qoaplay. By default qoaconv is compiled
without MP3 and FLAC support.
To compile qoaconv with MP3 and FLAC support, download the
dr_*.h files and pass HAS_DRLIBS=true
to make:
curl https://raw.githubusercontent.com/mackron/dr_libs/refs/heads/master/dr_mp3.h -o dr_mp3.h
curl https://raw.githubusercontent.com/mackron/dr_libs/refs/heads/master/dr_flac.h -o dr_flac.h
make HAS_DRLIBS=true
Alternative Implementations of QOA
- pfusik/qoa-fu - Fusion, transpiling to C, C++, C#, D, Java, JavaScript, Python, Swift and TypeScript
- qoa-format - JavaScript encoder/decoder
- JohannesFriedrich/qoa4R - R
- rafaelcaricio/qoaudio - Pure Rust zero-dependency decoder implementation
- AuburnSounds/audio-formats - D library, supports QOA
- braheezy/goqoa - Go library and CLI tool
- HaxelWorks/qoa-python - Python wrapper using cffi
- Cl Qoa - Common Lisp
- Resona QOA - Pure Go decoder and encoder implementation
QOA Support in Other Software
- Godot Engine - supports compressing WAV files into QOA since 4.3
- raylib - supports decoding QOA samples through its raudio module
- SerenityOS supports QOA system wide through QOALoader.h
- Qmmp - supports decoding QOA samples
- Visual Studio Code: supports playing QOA files with the QOA Preview extension
- OpenCubicPlayer - supports playing QOA files
- file: identify QOA files