summaryrefslogtreecommitdiff
path: root/tools/element-templates/audiofilter
blob: efd4969113e3bfcf0218ad4849f45a37d55e1632 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
/* 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 <gst/audio/gstaudiofilter.h>
% 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