extern crate nihav_core;
+extern crate nihav_codec_support;
extern crate nihav_registry;
extern crate nihav_allstuff;
use nihav_core::frame::*;
use nihav_core::codecs::*;
use nihav_core::demuxers::*;
+use nihav_codec_support::imgwrite::*;
use nihav_registry::detect;
use nihav_allstuff::*;
use std::env;
-mod frmwriter;
-use crate::frmwriter::*;
-
mod wavwriter;
use crate::wavwriter::WavWriter;
NumberMode::PktPTS => { pkt.get_pts().unwrap() },
NumberMode::FrmPTS => { if let Some(pt) = frm.get_pts() { pt } else { pkt.get_pts().unwrap() } },
};
- let vinfo = frm.get_buffer().get_video_info().unwrap();
- if vinfo.get_format().is_paletted() {
- write_palppm(&self.prefix, self.streamno, pts, frm);
- } else if vinfo.get_format().get_model().is_yuv() {
- write_pgmyuv(&self.prefix, self.streamno, pts, frm);
- } else if vinfo.get_format().get_model().is_rgb() {
- write_ppm(&self.prefix, self.streamno, pts, frm);
- } else {
-panic!(" unknown format");
+ if let Err(_) = write_pnm(&self.prefix, self.streamno, pts, frm) {
+ println!("error writing output picture");
}
}
self.frameno += 1;