Streaming decoding support for popular audio formats.
To use this package, run the following command in your project's root directory:
Put the following dependency into your project's dependences section:
audio-formats is meant to be the easiest package to load and write sounds in D.
- ✅ Decode from WAV / MP3 / FLAC / OPUS / OGG / MOD / XM
- ✅ Encode to WAV
- ✅ File and memory support
- ✅ Seeking support
- ✅ Chunked support
- ✅ WAV encoding with dithering when reducing bit-depth
- ✅ Archs:
- Doesn't depend upon
- All exceptions thrown by
AudioFormatsException. They must be clean-up with
- Initial release.
How to use it?
audio-formatsas dependency to your
- See the transcode example for usage.
What formats are supported exactly?
|📀 OPUS||Yes (LGPL)||No||Sample|
Some of these decoders were originally translated by Ketmar, who did the heavy-lifting.
- ⚖️ Boost license otherwise.
- ⚖️ LGPL v2.1 with OPUS decoding. (use DUB subconfigurations) to choose, default is boost.
External links and references
Ultra secret options
version identifiers can be used to enable/disable decoder level features
| Version Identifier | Feature |
| AF_LINEAR | Use linear sampling for MOD modules instead of Amiga sampling | | | |
framesRemainingInPatternis unimplemented for XM currently.
- Registered by ponce
- 2.1.1 released 6 months ago