mirror of
https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs.git
synced 2024-11-22 03:21:00 +00:00
webrtcsink: fix custom_signaller hanging
Since 6a23ae168f
, the chain function
of webrtcsink adds a custom meta on input buffers.
That custom meta was registered only by the class_init of the subclasses
of BaseWebRTCSink, but the custom signaller example uses
BaseWebRTCSink::with_signaller() directly.
Fix by registering the meta in BaseWebRTCSink::class_init()
Fixes: #610
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1854>
This commit is contained in:
parent
628dee9079
commit
5f0ca7acde
1 changed files with 5 additions and 6 deletions
|
@ -4419,6 +4419,10 @@ impl ObjectSubclass for BaseWebRTCSink {
|
|||
type Type = super::BaseWebRTCSink;
|
||||
type ParentType = gst::Bin;
|
||||
type Interfaces = (gst::ChildProxy, gst_video::Navigation);
|
||||
|
||||
fn class_init(_klass: &mut Self::Class) {
|
||||
register_dye_meta();
|
||||
}
|
||||
}
|
||||
|
||||
fn register_dye_meta() {
|
||||
|
@ -4442,12 +4446,7 @@ fn register_dye_meta() {
|
|||
});
|
||||
}
|
||||
|
||||
unsafe impl<T: BaseWebRTCSinkImpl> IsSubclassable<T> for super::BaseWebRTCSink {
|
||||
fn class_init(class: &mut glib::Class<Self>) {
|
||||
register_dye_meta();
|
||||
Self::parent_class_init::<T>(class);
|
||||
}
|
||||
}
|
||||
unsafe impl<T: BaseWebRTCSinkImpl> IsSubclassable<T> for super::BaseWebRTCSink {}
|
||||
|
||||
pub(crate) trait BaseWebRTCSinkImpl: BinImpl {}
|
||||
|
||||
|
|
Loading…
Reference in a new issue