/* vim: set filetype=c: */ % ClassName GstAudioFilter % TYPE_CLASS_NAME GST_TYPE_AUDIO_FILTER % pads srcpad-audio sinkpad-audio % pkg-config gstreamer-audio-1.0 % includes #include % prototypes static gboolean gst_replace_setup (GstAudioFilter * filter, const GstAudioInfo * info); static GstFlowReturn gst_replace_transform (GstBaseTransform * trans, GstBuffer * inbuf, GstBuffer * outbuf); static GstFlowReturn gst_replace_transform_ip (GstBaseTransform * trans, GstBuffer * buf); % declare-class GstBaseTransformClass *base_transform_class = GST_BASE_TRANSFORM_CLASS (klass); GstAudioFilterClass *audio_filter_class = GST_AUDIO_FILTER_CLASS (klass); % set-methods audio_filter_class->setup = GST_DEBUG_FUNCPTR (gst_replace_setup); base_transform_class->transform = GST_DEBUG_FUNCPTR (gst_replace_transform); base_transform_class->transform_ip = GST_DEBUG_FUNCPTR (gst_replace_transform_ip); % methods static gboolean gst_replace_setup (GstAudioFilter * filter, const GstAudioInfo * info) { GstReplace *replace = GST_REPLACE (filter); GST_DEBUG_OBJECT (replace, "setup"); return TRUE; } /* transform */ static GstFlowReturn gst_replace_transform (GstBaseTransform * trans, GstBuffer * inbuf, GstBuffer * outbuf) { GstReplace *replace = GST_REPLACE (trans); GST_DEBUG_OBJECT (replace, "transform"); return GST_FLOW_OK; } static GstFlowReturn gst_replace_transform_ip (GstBaseTransform * trans, GstBuffer * buf) { GstReplace *replace = GST_REPLACE (trans); GST_DEBUG_OBJECT (replace, "transform_ip"); return GST_FLOW_OK; } % end