#ffmpeg #decoding #data #pcm #chunk #audio-decoder

nightly earwax

Audio decoding library for Rust based on ffmpeg

7 releases

Uses old Rust 2015

0.1.7 Jul 11, 2017
0.1.6 Jul 11, 2017
0.1.4 Apr 9, 2017

#436 in Video

MIT license

4MB
500 lines

crates.io docs.rs

Audio decoding library based on ffmpeg 2.8. The purpose of this library is to provide a safe and simple way of converting any audio input to raw PCM data.

Dependencies

From ffmpeg 2.8, the required libraries are libavcodec, libavformat, and libavdevice.

Usage

extern crate earwax;

use earwax::Earwax;

fn main() {
    let mut earwax = Earwax::new("[URL]").unwrap();
    while let Some(chunk) = earwax.spit() {
        // Do something with chunk.data, an array of raw pcm data.
        println!("Time: {}", chunk.time.seconds()); // or chunk.time.pts().
    }
}

Check the documentation for a detailed reference.

TODO

  • Add error handling to the spit function.

Dependencies