From 7a9cb9d5da1b21c8d08166b730f53be98a9ee83f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= Date: Mon, 14 Apr 2025 15:44:05 +0300 Subject: [PATCH] mp4mux: Handle tags in sink_event() instead of sink_event_prequeue() Part-of: --- mux/mp4/src/mp4mux/imp.rs | 25 ++++++++++--------------- 1 file changed, 10 insertions(+), 15 deletions(-) diff --git a/mux/mp4/src/mp4mux/imp.rs b/mux/mp4/src/mp4mux/imp.rs index 59c840fc8..7c6375e4d 100644 --- a/mux/mp4/src/mp4mux/imp.rs +++ b/mux/mp4/src/mp4mux/imp.rs @@ -1434,6 +1434,16 @@ impl AggregatorImpl for MP4Mux { } self.parent_sink_event_pre_queue(aggregator_pad, event) } + _ => self.parent_sink_event_pre_queue(aggregator_pad, event), + } + } + + fn sink_event(&self, aggregator_pad: &gst_base::AggregatorPad, event: gst::Event) -> bool { + use gst::EventView; + + gst::trace!(CAT, obj = aggregator_pad, "Handling event {event:?}"); + + match event.view() { EventView::Tag(ev) => { let tag = ev.tag(); @@ -1499,21 +1509,6 @@ impl AggregatorImpl for MP4Mux { } } - self.parent_sink_event_pre_queue(aggregator_pad, event) - } - _ => self.parent_sink_event_pre_queue(aggregator_pad, event), - } - } - - fn sink_event(&self, aggregator_pad: &gst_base::AggregatorPad, event: gst::Event) -> bool { - use gst::EventView; - - gst::trace!(CAT, obj = aggregator_pad, "Handling event {event:?}"); - - match event.view() { - EventView::Tag(_ev) => { - // TODO: Maybe store for putting into the header at the end? - self.parent_sink_event(aggregator_pad, event) } _ => self.parent_sink_event(aggregator_pad, event),