Skip to content

Latest commit

 

History

History
73 lines (58 loc) · 1.65 KB

README.md

File metadata and controls

73 lines (58 loc) · 1.65 KB

FLAC

Build Status

An implementation of FLAC, free lossless audio codec, written in Rust.

Documentation

Install

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;

Implementation Status

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
  • encoder
    • frame
      • left side
      • right side
      • midpoint side
    • sub-frame
      • fixed
      • LPC