diff --git a/generic/threadshare/src/inputselector.rs b/generic/threadshare/src/inputselector.rs index 8508d413..45e84a65 100644 --- a/generic/threadshare/src/inputselector.rs +++ b/generic/threadshare/src/inputselector.rs @@ -556,6 +556,8 @@ impl ObjectImpl for InputSelector { let element = obj.downcast_ref::().unwrap(); element.add_pad(self.src_pad.gst_pad()).unwrap(); + element + .set_element_flags(gst::ElementFlags::PROVIDE_CLOCK | gst::ElementFlags::REQUIRE_CLOCK); } } @@ -626,6 +628,10 @@ impl ElementImpl for InputSelector { let _ = element.post_message(&gst::Message::new_latency().src(Some(element)).build()); } + + fn provide_clock(&self, _element: &gst::Element) -> Option { + Some(gst::SystemClock::obtain()) + } } pub fn register(plugin: &gst::Plugin) -> Result<(), glib::BoolError> { diff --git a/generic/threadshare/src/jitterbuffer/jitterbuffer.rs b/generic/threadshare/src/jitterbuffer/jitterbuffer.rs index 748cfe0a..541f5868 100644 --- a/generic/threadshare/src/jitterbuffer/jitterbuffer.rs +++ b/generic/threadshare/src/jitterbuffer/jitterbuffer.rs @@ -1592,6 +1592,8 @@ impl ObjectImpl for JitterBuffer { let element = obj.downcast_ref::().unwrap(); element.add_pad(self.sink_pad.gst_pad()).unwrap(); element.add_pad(self.src_pad.gst_pad()).unwrap(); + element + .set_element_flags(gst::ElementFlags::PROVIDE_CLOCK | gst::ElementFlags::REQUIRE_CLOCK); } } @@ -1634,6 +1636,10 @@ impl ElementImpl for JitterBuffer { Ok(success) } + + fn provide_clock(&self, _element: &gst::Element) -> Option { + Some(gst::SystemClock::obtain()) + } } pub fn register(plugin: &gst::Plugin) -> Result<(), glib::BoolError> { diff --git a/net/rusoto/src/aws_transcribe_parse.rs b/net/rusoto/src/aws_transcribe_parse.rs index bd76108c..c8eecfea 100644 --- a/net/rusoto/src/aws_transcribe_parse.rs +++ b/net/rusoto/src/aws_transcribe_parse.rs @@ -1095,6 +1095,8 @@ impl ObjectImpl for Transcriber { let element = obj.downcast_ref::().unwrap(); element.add_pad(&self.sinkpad).unwrap(); element.add_pad(&self.srcpad).unwrap(); + element + .set_element_flags(gst::ElementFlags::PROVIDE_CLOCK | gst::ElementFlags::REQUIRE_CLOCK); } fn set_property(&self, _obj: &glib::Object, id: usize, value: &glib::Value) { @@ -1170,6 +1172,10 @@ impl ElementImpl for Transcriber { Ok(success) } + + fn provide_clock(&self, _element: &gst::Element) -> Option { + Some(gst::SystemClock::obtain()) + } } pub fn register(plugin: &gst::Plugin) -> Result<(), glib::BoolError> {