a wav player in standard C99
- u8 s16 s32 PCM wav
- 32 and 64 bit float wav
later maybe
- more raw PCM formats, e.g. AIFF, AU
- ADCPM encoded WAV
the big maybes
- losslessly compressed data, e.g. FLAC
- ogg vorbis
- opus
- mp3 (probably won't)
portaudiois pulled by cmake but you may need to install its dependencies, e.g.libasound2-dev
- Multimedia Programming Interface and Data Specifications 1.0
- Defines the RIFF container, including the WAV audio format
- ISO/IEC 11172-3:1993 - MPEG-1 Audio (Layer I, II, III) (158 pages)
- Core MP3 spec, frame structure, headers, and essential tables (Huffman, etc.)
- ISO/IEC 13818-3:1997 - MPEG-2 Audio (127 pages)
- MP3 extension, Adds support for LSF for modern MP3 files.
- ISO/IEC TR 11172-5:1998 - MPEG-1 Software Simulation (404 pages)
- Reference C code
- ffmpeg