From 14a55dc73dfed4bc2e0c0ae40b6e4a505b9ac52e Mon Sep 17 00:00:00 2001 From: Hans Ole Hatzel Date: Wed, 18 Dec 2019 12:07:42 +0100 Subject: [PATCH] gstreamer-base/basesink: Provide default implementation for render We need some classes derived from `BaseSink` to not enforce render being implemented. An example of this is AudioSink which only requires the user to implement `write` but not `render`, so the default implementation of render needs to be called. --- gstreamer-base/src/subclass/base_sink.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gstreamer-base/src/subclass/base_sink.rs b/gstreamer-base/src/subclass/base_sink.rs index 33c477541..42bd7883f 100644 --- a/gstreamer-base/src/subclass/base_sink.rs +++ b/gstreamer-base/src/subclass/base_sink.rs @@ -35,7 +35,9 @@ pub trait BaseSinkImpl: BaseSinkImplExt + ElementImpl + Send + Sync + 'static { &self, element: &BaseSink, buffer: &gst::Buffer, - ) -> Result; + ) -> Result { + self.parent_render(element, buffer) + } fn prepare( &self,