1
0
Fork 0
mirror of https://github.com/alfg/mp4-rust.git synced 2024-11-14 11:11:16 +00:00
🎥 MP4 reader and writer library in Rust! 🦀
Find a file
Alfred Gutierrez a4fd45b3e8
Add basic integration test (#10)
* Add basic integration test and update README and example. Add sample minimal.mp4 file for tests.

* Add .travis.yml file.

* Update readme.
2020-07-25 20:07:39 -07:00
.github/workflows Create rust.yml 2020-07-24 20:00:09 -07:00
examples Add basic integration test (#10) 2020-07-25 20:07:39 -07:00
src Add ReadBox trait (#7) 2020-07-24 19:57:46 -07:00
tests Add basic integration test (#10) 2020-07-25 20:07:39 -07:00
.gitignore Add basic integration test (#10) 2020-07-25 20:07:39 -07:00
.travis.yml Add basic integration test (#10) 2020-07-25 20:07:39 -07:00
Cargo.lock 0.4.2 2020-07-24 20:02:32 -07:00
Cargo.toml 0.4.2 2020-07-24 20:02:32 -07:00
LICENSE Change main.rs to lib.rs and create example mp4info project. Update readme and license. 2020-01-12 19:33:26 -08:00
README.md Add basic integration test (#10) 2020-07-25 20:07:39 -07:00

mp4rs

MP4 Reader in Rust

ISO/IEC 14496-12 - ISO Base Media File Format (QuickTime, MPEG-4, etc)

Crates.io Crates.io Build Status Rust

Example

use mp4;

fn main() {
    let f = File::open("example.mp4").unwrap();

    let bmff = mp4::read_mp4(f).unwrap();

    println!("file size:  {}", bmff.size);
    println!("brands: {:?} {:?}\n",
        bmff.ftyp.major_brand, bmff.ftyp.compatible_brands
    );
}

See examples/ for a full example.

Documentation

Development

Requirements

Build

cargo build

Run Examples

  • mp4info
cargo run --example mp4info <movie.mp4>

Run Tests

cargo test

With print statement output.

cargo test -- --nocapture

Resources

Thanks to the following resources used when learning Rust:

License

MIT