From c46725845b91631b7b7bbd44765f592c3c83408b Mon Sep 17 00:00:00 2001 From: Stefan Kost Date: Wed, 27 Apr 2011 16:56:09 +0300 Subject: element-templates: improve the audiofilter template Add comments. Add start/stop methods. Add (commented) instance casts at the begin of the method. Make transform_ip returning FLOW_OK by default. --- tools/element-templates/audiofilter | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) (limited to 'tools/element-templates') diff --git a/tools/element-templates/audiofilter b/tools/element-templates/audiofilter index cf10fc120..5e7ea376b 100644 --- a/tools/element-templates/audiofilter +++ b/tools/element-templates/audiofilter @@ -12,27 +12,56 @@ gstreamer-audio-0.10 % prototypes static gboolean gst_replace_setup (GstAudioFilter * filter, GstRingBufferSpec * format); +static gboolean +gst_replace_start (GstBaseTransform * trans); static GstFlowReturn gst_replace_transform_ip (GstBaseTransform * trans, GstBuffer * buf); +static gboolean +gst_replace_stop (GstBaseTransform * trans); % declare-class GstAudioFilterClass *audio_filter_class = GST_AUDIO_FILTER_CLASS (klass); GstBaseTransformClass *base_transform_class = GST_BASE_TRANSFORM_CLASS (klass); % set-methods audio_filter_class->setup = GST_DEBUG_FUNCPTR (gst_replace_setup); + base_transform_class->start = GST_DEBUG_FUNCPTR (gst_replace_start); base_transform_class->transform_ip = GST_DEBUG_FUNCPTR (gst_replace_transform_ip); + base_transform_class->stop = GST_DEBUG_FUNCPTR (gst_replace_stop); % methods static gboolean gst_replace_setup (GstAudioFilter * filter, GstRingBufferSpec * format) { + /* GstReplace *replace = GST_REPLACE (filter); */ + + /* handle audio format changes */ + return TRUE; +} + +static gboolean +gst_replace_start (GstBaseTransform * trans) +{ + /* GstReplace *replace = GST_REPLACE (trans); */ + + /* initialize processing */ return TRUE; } static GstFlowReturn gst_replace_transform_ip (GstBaseTransform * trans, GstBuffer * buf) { + /* GstReplace *replace = GST_REPLACE (trans); */ + + /* process the audio data in the buffer in-place */ + return GST_FLOW_OK; +} - return GST_FLOW_ERROR; +static gboolean +gst_replace_stop (GstBaseTransform * trans) +{ + /* GstReplace *replace = GST_REPLACE (trans); */ + + /* finalize processing */ + return TRUE; } % end -- cgit v1.2.1