puremp3

MP3 decoding library in pure Rust

CC0-1.0 License

Downloads
101.7K
Stars
38

puremp3

An MP3 decoder written in pure Rust.

This project is currently unmaintained and probably not suitable for production. Pull requests are accepted.

The motivation for this crate is to create a pure Rust MP3 decoder that easily compiles to the wasm32-unknown-unknown target. No claims are made to accuracy, performance, or compatibility. For a more robust decoder, try minimp3-rs.

Support

  • MPEG-1/MPEG-2/MPEG-2.5 Layer III

Example

let data = std::fs::read("tests/vectors/MonoCBR192.mp3").expect("Could not open file");
let (header, samples) = puremp3::read_mp3(&data[..]).expect("Invalid MP3");
for (left, right) in samples {
    // Operate on samples here
}

Prior art

The following implementations and documents were referenced in creating this crate:

License

Licensed under either of

at your option.

Contribution

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