Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.freedesktop.org/gstreamer/gst-plugins-rs.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/mux
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian@centricular.com>2023-10-16 19:16:52 +0300
committerSebastian Dröge <sebastian@centricular.com>2023-10-17 08:44:06 +0300
commitd468e1e4a695902ce011a8fb9f35f0118b9d1e87 (patch)
tree34c64e66c9040feee349703d8d12c92e2a942324 /mux
parent50dd519c4f99e162fc1bca3b9d85eb056a2fa78f (diff)
Clean up usage of pad probes
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1361>
Diffstat (limited to 'mux')
-rw-r--r--mux/fmp4/examples/hls_live.rs28
-rw-r--r--mux/fmp4/examples/hls_vod.rs28
2 files changed, 30 insertions, 26 deletions
diff --git a/mux/fmp4/examples/hls_live.rs b/mux/fmp4/examples/hls_live.rs
index 1843c612e..4f58a6a83 100644
--- a/mux/fmp4/examples/hls_live.rs
+++ b/mux/fmp4/examples/hls_live.rs
@@ -365,19 +365,21 @@ fn setup_appsink(appsink: &gst_app::AppSink, name: &str, path: &Path, is_video:
fn probe_encoder(state: Arc<Mutex<State>>, enc: gst::Element) {
enc.static_pad("src").unwrap().add_probe(
gst::PadProbeType::EVENT_DOWNSTREAM,
- move |_pad, info| match info.data {
- Some(gst::PadProbeData::Event(ref ev)) => match ev.view() {
- gst::EventView::Caps(e) => {
- let mime = gst_pbutils::codec_utils_caps_get_mime_codec(e.caps());
-
- let mut state = state.lock().unwrap();
- state.all_mimes.push(mime.unwrap().into());
- state.maybe_write_manifest();
- gst::PadProbeReturn::Remove
- }
- _ => gst::PadProbeReturn::Ok,
- },
- _ => gst::PadProbeReturn::Ok,
+ move |_pad, info| {
+ let Some(ev) = info.event() else {
+ return gst::PadProbeReturn::Ok;
+ };
+ let gst::EventView::Caps(ev) = ev.view() else {
+ return gst::PadProbeReturn::Ok;
+ };
+
+ let mime = gst_pbutils::codec_utils_caps_get_mime_codec(ev.caps());
+
+ let mut state = state.lock().unwrap();
+ state.all_mimes.push(mime.unwrap().into());
+ state.maybe_write_manifest();
+
+ gst::PadProbeReturn::Remove
},
);
}
diff --git a/mux/fmp4/examples/hls_vod.rs b/mux/fmp4/examples/hls_vod.rs
index a31f17db8..c84102f48 100644
--- a/mux/fmp4/examples/hls_vod.rs
+++ b/mux/fmp4/examples/hls_vod.rs
@@ -260,19 +260,21 @@ fn setup_appsink(appsink: &gst_app::AppSink, name: &str, path: &Path, is_video:
fn probe_encoder(state: Arc<Mutex<State>>, enc: gst::Element) {
enc.static_pad("src").unwrap().add_probe(
gst::PadProbeType::EVENT_DOWNSTREAM,
- move |_pad, info| match info.data {
- Some(gst::PadProbeData::Event(ref ev)) => match ev.view() {
- gst::EventView::Caps(e) => {
- let mime = gst_pbutils::codec_utils_caps_get_mime_codec(e.caps());
-
- let mut state = state.lock().unwrap();
- state.all_mimes.push(mime.unwrap().into());
- state.maybe_write_manifest();
- gst::PadProbeReturn::Remove
- }
- _ => gst::PadProbeReturn::Ok,
- },
- _ => gst::PadProbeReturn::Ok,
+ move |_pad, info| {
+ let Some(ev) = info.event() else {
+ return gst::PadProbeReturn::Ok;
+ };
+ let gst::EventView::Caps(ev) = ev.view() else {
+ return gst::PadProbeReturn::Ok;
+ };
+
+ let mime = gst_pbutils::codec_utils_caps_get_mime_codec(ev.caps());
+
+ let mut state = state.lock().unwrap();
+ state.all_mimes.push(mime.unwrap().into());
+ state.maybe_write_manifest();
+
+ gst::PadProbeReturn::Remove
},
);
}