From: Kostya Shishkov Date: Thu, 22 Jan 2026 18:07:05 +0000 (+0100) Subject: switch to NATimeInfo::rescale_ts() X-Git-Url: https://git.nihav.org/?a=commitdiff_plain;h=4c6d8329e611436cb48e1a5edc9346bcc58a3002;p=nihav-player.git switch to NATimeInfo::rescale_ts() --- diff --git a/sndplay/src/demux.rs b/sndplay/src/demux.rs index f8e3c75..4e96c1b 100644 --- a/sndplay/src/demux.rs +++ b/sndplay/src/demux.rs @@ -26,7 +26,7 @@ impl<'a> RawStreamCtx<'a> { } if packet.is_keyframe() { let pts = packet.get_pts().unwrap_or(self.pts); - let time = NATimeInfo::ts_to_time(pts, 1000, self.stream.tb_num, self.stream.tb_den); + let time = NATimeInfo::rescale_ts(pts, self.stream.tb_num, self.stream.tb_den, 1, 1000); let in_range = if let Some(last) = self.seek.seek_info[0].entries.last() { last.pts >= pts } else { @@ -159,7 +159,7 @@ impl<'a> DemuxerObject<'a> { DemuxerObject::Normal(ref dmx) => dmx.get_duration(), DemuxerObject::Raw(ref dmx, _, _) => dmx.get_duration(), DemuxerObject::RawStream(ref ctx) => { - NATimeInfo::ts_to_time(ctx.stream.duration, 1000, ctx.stream.tb_num, ctx.stream.tb_den) + NATimeInfo::rescale_ts(ctx.stream.duration, ctx.stream.tb_num, ctx.stream.tb_den, 1, 1000) }, _ => 0, } diff --git a/sndplay/src/main.rs b/sndplay/src/main.rs index f829f63..80a6d40 100644 --- a/sndplay/src/main.rs +++ b/sndplay/src/main.rs @@ -151,7 +151,7 @@ impl<'a> Decoder<'a> { return false; } if let Some(pts) = frm.ts.get_pts() { - self.samplepos = NATimeInfo::ts_to_time(pts, u64::from(self.arate), frm.ts.tb_num, frm.ts.tb_den); + self.samplepos = NATimeInfo::rescale_ts(pts, frm.ts.tb_num, frm.ts.tb_den, 1, self.arate); } if buf.get_audio_length() == 0 { return false; @@ -290,7 +290,7 @@ impl Player { ainfo = Some(info); stream_no = i; if s.duration > 0 { - duration = NATimeInfo::ts_to_time(s.duration, 1000, s.tb_num, s.tb_den); + duration = NATimeInfo::rescale_ts(s.duration, s.tb_num, s.tb_den, 1, 1000); } break; } diff --git a/videoplayer/src/audiodec.rs b/videoplayer/src/audiodec.rs index 726758e..fac1c00 100644 --- a/videoplayer/src/audiodec.rs +++ b/videoplayer/src/audiodec.rs @@ -203,7 +203,7 @@ fn start_audio_decoding(asystem: &AudioSubsystem, ainfo: NAAudioInfo, sbr_hack: if let Ok(frm) = adec.decode(&mut audio_dec.dsupp, &pkt) { let buf = frm.get_buffer(); if let Some(pts) = frm.get_pts() { - samplepos = NATimeInfo::ts_to_time(pts, u64::from(dst_info.sample_rate), frm.ts.tb_num, frm.ts.tb_den) as usize; + samplepos = NATimeInfo::rescale_ts(pts, frm.ts.tb_num, frm.ts.tb_den, 1, dst_info.sample_rate) as usize; if sbr_hack { samplepos >>= 2; } diff --git a/videoplayer/src/videodec.rs b/videoplayer/src/videodec.rs index 295cfc7..d439537 100644 --- a/videoplayer/src/videodec.rs +++ b/videoplayer/src/videodec.rs @@ -85,7 +85,7 @@ impl VideoDecoder { let ret = self.scaler.convert(&bt, &mut opic); if ret.is_err() { println!(" scaler error {:?}", ret.err()); return None; } ret.unwrap(); - let time = NATimeInfo::ts_to_time(ts, 1000, self.tb_num, self.tb_den); + let time = NATimeInfo::rescale_ts(ts, self.tb_num, self.tb_den, 1, 1000); Some((opic, time)) } pub fn next_frame(&mut self, pkt: &NAPacket) -> Option {