diff options
Diffstat (limited to 'matroska/src/bin')
| -rw-r--r-- | matroska/src/bin/experiment.rs | 32 | ||||
| -rw-r--r-- | matroska/src/bin/mkvdump.rs | 18 | 
2 files changed, 50 insertions, 0 deletions
| diff --git a/matroska/src/bin/experiment.rs b/matroska/src/bin/experiment.rs new file mode 100644 index 0000000..caeae09 --- /dev/null +++ b/matroska/src/bin/experiment.rs @@ -0,0 +1,32 @@ +use jellymatroska::{matroska::MatroskaTag, read::EbmlReader, write::EbmlWriter}; +use std::{ +    fs::File, +    io::{stdout, BufReader, BufWriter}, +}; + +fn main() -> anyhow::Result<()> { +    env_logger::init_from_env("LOG"); +    let path = std::env::args().skip(1).next().unwrap(); +    let mut r = EbmlReader::new(BufReader::new(File::open(path)?)); +    let mut w = EbmlWriter::new(BufWriter::new(stdout()), 0); + +    // r.seek( +    //     631147167 + 52, +    //     ebml::matroska::MatroskaTag::Cues(Master::Start), +    // ) +    // .unwrap(); + +    while let Some(tag) = r.next() { +        let tag = tag?; +        // println!("{} {tag:?}", r.position); +        match tag { +            tag => { +                if MatroskaTag::is_master(tag.id())? { +                    eprintln!("{tag:?}"); +                } +                w.write_tag(&tag)?; +            } +        } +    } +    Ok(()) +} diff --git a/matroska/src/bin/mkvdump.rs b/matroska/src/bin/mkvdump.rs new file mode 100644 index 0000000..d5b6de4 --- /dev/null +++ b/matroska/src/bin/mkvdump.rs @@ -0,0 +1,18 @@ +use jellymatroska::{matroska::MatroskaTag, read::EbmlReader}; +use std::{fs::File, io::BufReader}; + +fn main() -> anyhow::Result<()> { +    env_logger::init_from_env("LOG"); +    let path = std::env::args().skip(1).next().unwrap(); +    let mut r = EbmlReader::new(BufReader::new(File::open(path)?)); + +    while let Some(tag) = r.next() { +        let tag = tag?; +        match tag { +            MatroskaTag::SimpleBlock(_) => (), +            MatroskaTag::Block(_) => (), +            _ => eprintln!("{} {tag:?}", r.position), +        } +    } +    Ok(()) +} | 
