onvifmetadatacombiner: Drop gap metadata buffers

They won't have a reference timestamp metadata set and are not useful
for further processing.
This commit is contained in:
Sebastian Dröge 2022-09-15 18:10:49 +03:00
parent f2893aae0b
commit 1fa39d0ab4

View file

@ -158,6 +158,15 @@ impl OnvifMetadataCombiner {
end: gst::ClockTime,
) -> Result<bool, gst::FlowError> {
while let Some(buffer) = self.meta_sink_pad.peek_buffer() {
// Skip over gap buffers
if buffer.flags().contains(gst::BufferFlags::GAP)
&& buffer.flags().contains(gst::BufferFlags::DROPPABLE)
&& buffer.size() == 0
{
self.meta_sink_pad.pop_buffer().unwrap();
continue;
}
let meta_ts = crate::lookup_reference_timestamp(&buffer).ok_or_else(|| {
gst::element_error!(
element,