switch demuxers to use NAStream::make_ts()
[nihav.git] / nihav-game / src / demuxers / imax.rs
index ad427dd52859174dc33a611d13aad9dc68daf907..2cd9f70c3807a7975890aff93de03e17c27cd2cc 100644 (file)
@@ -49,8 +49,7 @@ impl<'a> DemuxCore<'a> for IMAXDemuxer<'a> {
             match ftype {
                 0xAA97 => {
                     let str = strmgr.get_stream(self.v_id).unwrap();
-                    let (tb_num, tb_den) = str.get_timebase();
-                    let ts = NATimeInfo::new(Some(self.cur_frame), None, None, tb_num, tb_den);
+                    let ts = str.make_ts(Some(self.cur_frame), None, None);
                     self.cur_frame += 1;
                     let mut pkt = self.src.read_packet(str, ts, true, fsize)?;
                     pkt.add_side_data(NASideData::Palette(self.pal_change, self.pal.clone()));
@@ -73,8 +72,7 @@ impl<'a> DemuxCore<'a> for IMAXDemuxer<'a> {
                 },
                 0xAA99 => {
                     let str = strmgr.get_stream(self.a_id).unwrap();
-                    let (tb_num, tb_den) = str.get_timebase();
-                    let ts = NATimeInfo::new(Some(self.apos), None, None, tb_num, tb_den);
+                    let ts = str.make_ts(Some(self.apos), None, None);
                     self.apos += fsize as u64;
                     return self.src.read_packet(str, ts, true, fsize);
                 },
@@ -124,6 +122,7 @@ mod test {
 
     #[test]
     fn test_imax_demux() {
+        // sample from Fable game
         let mut file = File::open("assets/Game/present.imx").unwrap();
         let mut fr = FileReader::new_read(&mut file);
         let mut br = ByteReader::new(&mut fr);