use super::*;
use register;
use super::DemuxerError::*;
-use io::byteio::*;
-use frame::*;
+//use io::byteio::*;
+//use frame::*;
use formats::*;
macro_rules! mktag {
#[allow(dead_code)]
struct AVIDemuxer<'a> {
- opened: bool,
src: &'a mut ByteReader<'a>,
cur_frame: Vec<u64>,
num_streams: u8,
#[allow(unused_variables)]
fn open(&mut self, strmgr: &mut StreamManager) -> DemuxerResult<()> {
self.read_header(strmgr)?;
- self.opened = true;
Ok(())
}
fn get_frame(&mut self, strmgr: &mut StreamManager) -> DemuxerResult<NAPacket> {
- if !self.opened { return Err(NoSuchInput); }
if self.movi_size == 0 { return Err(EOF); }
let mut tag: [u8; 4] = [0; 4];
loop {
let (tb_num, tb_den) = stream.get_timebase();
let ts = NATimeInfo::new(Some(self.cur_frame[stream_no as usize]), None, None, tb_num, tb_den);
let pkt = self.src.read_packet(stream, ts, false, size)?;
- self.cur_frame[stream_no as usize] += 1;
+ self.cur_frame[stream_no as usize] += 1;
self.movi_size -= size + 8;
return Ok(pkt);
#[allow(unused_variables)]
fn seek(&mut self, time: u64) -> DemuxerResult<()> {
- if !self.opened { return Err(NoSuchInput); }
Err(NotImplemented)
}
}
AVIDemuxer {
cur_frame: Vec::new(),
num_streams: 0,
- opened: false,
src: io,
size: 0,
movi_size: 0,