mpls
A movie playlist file (MPLS) parser. Written in Rust using the nom parser combinator library.
Dual-licensed under MIT and Apache 2.0.
Example
use std::fs::File;
use std::io::Read;
use mpls::Mpls;
fn main() -> std::io::Result<()> {
let mut file = File::open("00800.mpls")?;
let mpls = Mpls::from(&file).expect("failed to parse MPLS file.");
let angles = mpls.angles();
for angle in angles {
let segment_numbers: Vec<i32> = angle
.segments()
.iter()
.map(|s| s.file_name.parse::<i32>().unwrap())
.collect();
println!("angle {}: {:?}", angle, segment_numbers);
}
Ok(())
}
Installation
Add this to your Cargo.toml
:
[dependencies]
mpls = "0.2.0"
Documentation
See the reference docs on crates.io.