mirror of
https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs.git
synced 2024-11-25 13:01:07 +00:00
fmp4mux: Reset timing infos to None if a stream only contained gap events for a whole fragment
This commit is contained in:
parent
cab4cd3b8c
commit
27fac33c44
1 changed files with 5 additions and 1 deletions
|
@ -1239,12 +1239,16 @@ impl FMP4Mux {
|
||||||
) = self.drain_buffers(state, settings, timeout, at_eos)?;
|
) = self.drain_buffers(state, settings, timeout, at_eos)?;
|
||||||
|
|
||||||
// Remove all GAP buffers before processing them further
|
// Remove all GAP buffers before processing them further
|
||||||
for (_, _, buffers) in &mut drained_streams {
|
for (_, timing_info, buffers) in &mut drained_streams {
|
||||||
buffers.retain(|buf| {
|
buffers.retain(|buf| {
|
||||||
!buf.buffer.flags().contains(gst::BufferFlags::GAP)
|
!buf.buffer.flags().contains(gst::BufferFlags::GAP)
|
||||||
|| !buf.buffer.flags().contains(gst::BufferFlags::DROPPABLE)
|
|| !buf.buffer.flags().contains(gst::BufferFlags::DROPPABLE)
|
||||||
|| buf.buffer.size() != 0
|
|| buf.buffer.size() != 0
|
||||||
});
|
});
|
||||||
|
|
||||||
|
if buffers.is_empty() {
|
||||||
|
*timing_info = None;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// For ONVIF, replace all timestamps with timestamps based on UTC times.
|
// For ONVIF, replace all timestamps with timestamps based on UTC times.
|
||||||
|
|
Loading…
Reference in a new issue