From c4d2f4a60a1be4676aef40aa836b7d162f0d76ee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= Date: Fri, 23 Sep 2022 12:46:16 +0300 Subject: [PATCH] onvifmetadataparse: Start source pad task on StreamStart if needed Otherwise receiving StreamStart after Eos might keep the source pad task paused and no new data is ever pushed downstream. --- net/onvif/src/onvifmetadataparse/imp.rs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/net/onvif/src/onvifmetadataparse/imp.rs b/net/onvif/src/onvifmetadataparse/imp.rs index 80dcf6447..c5d02bf09 100644 --- a/net/onvif/src/onvifmetadataparse/imp.rs +++ b/net/onvif/src/onvifmetadataparse/imp.rs @@ -859,6 +859,11 @@ impl OnvifMetadataParse { let mut state = self.state.lock().unwrap(); match ev { + gst::EventView::StreamStart(_) => { + // Start task again if needed in case we previously went EOS and paused the + // task because of that. + let _ = Self::src_start_task(element, &self.srcpad); + } gst::EventView::Segment(ev) => { match ev.segment().downcast_ref::().cloned() { Some(mut segment) => {