use NAPacketiser::attach_stream() where appropriate
[nihav-tool.git] / src / main.rs
index 929ab6eddebf72a67680e7853c2a795a3ec463b8..78c9fb09ec0bfe3057d6d2e7b8a2ba3398abab9f 100644 (file)
@@ -105,6 +105,7 @@ fn main() {
     let mut ignore_errors = false;
     let mut dump_frames = false;
     let mut force_dmx: Option<&str> = None;
+    let mut demux_opts: Vec<NAOption> = Vec::new();
 
     while (cur_arg < args.len()) && args[cur_arg].starts_with('-') {
         match args[cur_arg].as_str() {
@@ -154,6 +155,9 @@ fn main() {
                 }
                 force_dmx = Some(&args[cur_arg]);
             },
+            "-print_mov_chunks" => {
+                demux_opts.push(NAOption{name: "print_chunks", value: NAValue::Bool(true) });
+            },
             "-ignerr"   => { ignore_errors = true; },
             "-dumpfrm"  => { dump_frames = true; },
             _           => { println!("unknown option {}", args[cur_arg]); return; },
@@ -188,7 +192,7 @@ fn main() {
     }
     let mut br = ByteReader::new(nfr.as_mut());
     let full_reg = FullRegister::new();
-    let mut demuxer = DemuxerObject::create(&mut br, &full_reg, name, force_dmx, is_raw);
+    let mut demuxer = DemuxerObject::create(&mut br, &full_reg, name, force_dmx, is_raw, &demux_opts);
     if demuxer.is_none() {
         println!("No demuxer found!");
         return;
@@ -304,7 +308,7 @@ println!("stream {} - {} {}", i, s, info.get_name());
                     }
                 },
             };
-            if pkt.get_pts() != None && lastpts != NATimePoint::None && !pkt.ts.less_than(lastpts) { break; }
+            if pkt.get_pts().is_some() && lastpts != NATimePoint::None && !pkt.ts.less_than(lastpts) { break; }
         }
     }
 //panic!("end");