No description
Find a file
Aaron Kofsky 2e08a7efa6
Check if the frame length is zero in SkipDuration. (#388)
If the source we are skipping runs out of data, it will return Some(0)
as the frame length. Before, this would cause an infinite loop because
we would skip zero samples forever. This commit fixes it by checking
explicitly if the frame length is zero and bailing out if it is.
2021-07-18 00:52:16 +02:00
.github/workflows Add optional Symphonia backend (#376) 2021-06-29 09:12:28 +02:00
examples Add optional Symphonia backend (#376) 2021-06-29 09:12:28 +02:00
src Check if the frame length is zero in SkipDuration. (#388) 2021-07-18 00:52:16 +02:00
tests Add optional Symphonia backend (#376) 2021-06-29 09:12:28 +02:00
.gitignore Initial commit 2015-07-22 12:14:11 +02:00
.rustfmt.toml Migrate to edition 2018 2020-05-02 13:33:57 +01:00
Cargo.toml Add optional Symphonia backend (#376) 2021-06-29 09:12:28 +02:00
CHANGELOG.md Release 0.14.0 (#368) 2021-05-21 22:15:25 +02:00
LICENSE-APACHE Require all new contributions to be MIT/Apache2 (#175) 2018-08-17 13:59:55 +02:00
LICENSE-MIT Require all new contributions to be MIT/Apache2 (#175) 2018-08-17 13:59:55 +02:00
README.md Add optional Symphonia backend (#376) 2021-06-29 09:12:28 +02:00

Audio playback library

Crates.io Version Crates.io Downloads Build Status

Rust playback library.

  • Playback is handled by cpal.
  • MP3 decoding is handled by minimp3.
  • WAV decoding is handled by hound.
  • Vorbis decoding is handled by lewton.
  • Flac decoding is handled by claxon.
  • MP4 and AAC (both disabled by default) are handled by Symphonia.

Alternatively, Symphonia can be used to decode any of the other codecs above with the exception of Vorbis. See the docs for more details on backends.

Documentation

The documentation contains an introduction to the library.

License

Licensed under either of

at your option.

License of your contributions

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.