X-Git-Url: https://git.nihav.org/?p=nihav.git;a=blobdiff_plain;f=nihav-realmedia%2Fsrc%2Fdemuxers%2Frealmedia.rs;fp=nihav-realmedia%2Fsrc%2Fdemuxers%2Frealmedia.rs;h=b2ea95896e1c4372c5f2d96a4e6a6791e0fa7a63;hp=14183c9cc4ac54fca43069cf4b3a10d7c9b5cbed;hb=951a626bb478d30a69e3b7ac7f76edfbb5db44aa;hpb=0d9dc164b091428c4d23637c4996c430bbc09f2c diff --git a/nihav-realmedia/src/demuxers/realmedia.rs b/nihav-realmedia/src/demuxers/realmedia.rs index 14183c9..b2ea958 100644 --- a/nihav-realmedia/src/demuxers/realmedia.rs +++ b/nihav-realmedia/src/demuxers/realmedia.rs @@ -1247,7 +1247,8 @@ impl<'a> DemuxCore<'a> for RealAudioDemuxer<'a> { fn get_frame(&mut self, strmgr: &mut StreamManager) -> DemuxerResult { if !self.queued_pkts.is_empty() { - let pkt = self.queued_pkts.pop().unwrap(); + let mut pkt = self.queued_pkts.pop().unwrap(); + pkt.ts.pts = None; return Ok(pkt); } if (self.data_end != 0) && (self.src.tell() >= self.data_end) { @@ -1257,10 +1258,13 @@ impl<'a> DemuxCore<'a> for RealAudioDemuxer<'a> { let stream = streamres.unwrap(); if let Some(ref mut astr) = self.stream { loop { - let ret = astr.read_apackets(&mut self.queued_pkts, self.src, stream.clone(), 0, false, self.blk_size); + let mut ret = astr.read_apackets(&mut self.queued_pkts, self.src, stream.clone(), 0, false, self.blk_size); if let Err(DemuxerError::TryAgain) = ret { continue; } + if let Ok(ref mut pkt) = ret { + pkt.ts.pts = None; + } return ret; } }