An implementation of FLAC, free lossless audio codec, written in Rust.
flac is on crates.io and can be included in your Cargo file like so:
[dependencies]
flac = "^0.5.0"
Followed by including it in you code:
extern crate flac;
The status of this FLAC implementation:
Currently this project fully parses every FLAC file I've thrown at it and the decoder is working great for any file that has a bit sample size of 16 and before. This is based on the test suite I have on this project and the tests do fail when the bit sample size is larger than 16.
Now that I have the varied size integers, making the buffer allocation more efficient, I want to start on the encoding side of FLAC. It will be a bit slower as I am busy with work but that is a goal of the project for sure.
- serialization
- metadata
- header
- data
- stream info
- padding
- application
- seek table
- vorbis comment
- cuesheet
- picture
- unknown
- frame
- header
- footer
- sub-frame
- header
- constant
- fixed
- LPC
- verbatim
- metadata
- encoder
- frame
- left side
- right side
- midpoint side
- sub-frame
- fixed
- LPC
- frame