No description
Find a file
Gusted e1108abe71
Add TrackPosition to Source
This adds a new TrackPosition trait which counts the amount of times
`next()` is called (where it returns `Some`) and provide a function to
get the position, which is a simple calculation.

This is added to the Sink struct by default and the accuracy of this depends on
the interval of `periodic_access`.

I wasn't able to add testing to the sink counter part, because I
wanted to also test `try_seek`, but it seems like I would need to have
some threading code to call `next` on sink in another thread, which
didn't look that good and resulted in a flaky test so only a 'unit test'
in ``position.rs`.

Resolves #457
Closes #510
2024-06-09 23:17:45 +02:00
.github/workflows refactor: replace archived action 2024-04-20 00:57:02 -07:00
assets possibly fixed m4a and mp4a playback 2024-06-01 13:44:53 -05:00
examples add test checking for #578 2024-05-23 13:10:37 +02:00
src Add TrackPosition to Source 2024-06-09 23:17:45 +02:00
tests make mp4a test conditional on the right rodio features being enabled 2024-06-06 23:49:20 +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 remove features from testing from symphonia dep 2024-06-06 23:41:09 +02:00
CHANGELOG.md add mp4a playback fix to changelogs unreleased 2024-06-06 23:54:12 +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 Default to pure-Rust Symphonia for MP3 decoding (#453) 2022-11-12 05:08:36 +01:00

Audio playback library

Crates.io Version Crates.io Downloads Build Status

Rust playback library.

Playback is handled by cpal. Format decoding can be handled either by Symphonia, or by format-specific decoders:

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.