diff options
author | François Laignel <francois@centricular.com> | 2023-05-10 18:02:08 +0300 |
---|---|---|
committer | François Laignel <francois@centricular.com> | 2023-05-12 13:55:31 +0300 |
commit | 7ba0073052c81c8f2f1ebe500048ed6d974e81d8 (patch) | |
tree | 26a4f2b74ac8a7129b6ecc95e8affcb302aa1bc2 /utils/togglerecord | |
parent | 8e93d294e5a61a94f14e812bef59cd0e529494e1 (diff) |
use Pad builders for optional name definition
Also, apply auto-naming in the following cases
* When building from a non wildcard-named template, the name of the template is
automatically assigned to the Pad. User can override with a specific name by
calling `name()` on the `PadBuilder`.
* When building with a target and no name was provided via the above, the
GhostPad is named after the target.
See https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/448
Auto-naming discussion: https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1255#note_1891181
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1197>
Diffstat (limited to 'utils/togglerecord')
-rw-r--r-- | utils/togglerecord/src/togglerecord/imp.rs | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/utils/togglerecord/src/togglerecord/imp.rs b/utils/togglerecord/src/togglerecord/imp.rs index beffa2064..d32ba3508 100644 --- a/utils/togglerecord/src/togglerecord/imp.rs +++ b/utils/togglerecord/src/togglerecord/imp.rs @@ -1705,7 +1705,7 @@ impl ObjectSubclass for ToggleRecord { fn with_class(klass: &Self::Class) -> Self { let templ = klass.pad_template("sink").unwrap(); - let sinkpad = gst::Pad::builder_with_template(&templ, Some("sink")) + let sinkpad = gst::Pad::builder_from_template(&templ) .chain_function(|pad, parent, buffer| { ToggleRecord::catch_panic_pad_function( parent, @@ -1737,7 +1737,7 @@ impl ObjectSubclass for ToggleRecord { .build(); let templ = klass.pad_template("src").unwrap(); - let srcpad = gst::Pad::builder_with_template(&templ, Some("src")) + let srcpad = gst::Pad::builder_from_template(&templ) .event_function(|pad, parent, event| { ToggleRecord::catch_panic_pad_function( parent, @@ -2002,7 +2002,8 @@ impl ElementImpl for ToggleRecord { *pad_count += 1; let templ = self.obj().pad_template("sink_%u").unwrap(); - let sinkpad = gst::Pad::builder_with_template(&templ, Some(format!("sink_{id}").as_str())) + let sinkpad = gst::Pad::builder_from_template(&templ) + .name(format!("sink_{id}").as_str()) .chain_function(|pad, parent, buffer| { ToggleRecord::catch_panic_pad_function( parent, @@ -2034,7 +2035,8 @@ impl ElementImpl for ToggleRecord { .build(); let templ = self.obj().pad_template("src_%u").unwrap(); - let srcpad = gst::Pad::builder_with_template(&templ, Some(format!("src_{id}").as_str())) + let srcpad = gst::Pad::builder_from_template(&templ) + .name(format!("src_{id}").as_str()) .event_function(|pad, parent, event| { ToggleRecord::catch_panic_pad_function( parent, |