audio-formats 1.5.0

Streaming decoding support for popular audio formats.


To use this package, run the following command in your project's root directory:

Manual usage
Put the following dependency into your project's dependences section:

audio-formats

Audio format loading for D.

Can decode WAV / MP3 / FLAC / OPUS / OGG / MOD / XM, from file or memory. Can encode WAV to a file or to memory.

It is a replacement for the wave-d package but with more formats, nothrow @nogc and chunk support.

API

See examples/transcode/main.d: https://github.com/AuburnSounds/audio-formats/blob/master/examples/transcode/source/main.d

File format support

DecodingEncodingSeeking support
WAVYesYesSample
MP3YesNoSample
FLACYesNoSample
OPUSYes (LGPL)NoSample
OGGYesNoSample
MODYesNoPattern+Row
XMYesNoPattern+Row

Some of these decoders were originally translated by Ketmar, who did the heavy-lifting.

References

  • https://github.com/Zoadian/mp3decoder
  • https://github.com/rombankzero/pocketmod
  • https://github.com/Artefact2/libxm

License

  • Boost license otherwise.
  • LGPL v2.1 with OPUS decoding. (use DUB subconfigurations) to choose, default is boost.

Extras

The following 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 | | | |

Bugs

  • framesRemainingInPattern is unimplemented for XM currently.
Dependencies:
dplug:core
Versions:
3.0.2 2024-Feb-11
3.0.1 2023-Sep-30
3.0.0 2023-Sep-30
2.2.1 2023-Jul-07
2.2.0 2023-Apr-16
Show all 34 versions
Download Stats:
  • 0 downloads today

  • 3 downloads this week

  • 8 downloads this month

  • 555 downloads total

Score:
1.0
Short URL:
audio-formats.dub.pm