1<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 2<html> 3<head> 4<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 5<title>GstAudioFilter: GStreamer Base Plugins 1.0 Library Reference Manual</title> 6<meta name="generator" content="DocBook XSL Stylesheets V1.79.1"> 7<link rel="home" href="index.html" title="GStreamer Base Plugins 1.0 Library Reference Manual"> 8<link rel="up" href="gstreamer-audio.html" title="Audio Library"> 9<link rel="prev" href="GstAudioEncoder.html" title="GstAudioEncoder"> 10<link rel="next" href="GstAudioSink.html" title="GstAudioSink"> 11<meta name="generator" content="GTK-Doc V1.28 (XML mode)"> 12<link rel="stylesheet" href="style.css" type="text/css"> 13</head> 14<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> 15<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle"> 16<td width="100%" align="left" class="shortcuts"> 17<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 18 <a href="#GstAudioFilter.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 19 <a href="#GstAudioFilter.object-hierarchy" class="shortcut">Object Hierarchy</a></span> 20</td> 21<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td> 22<td><a accesskey="u" href="gstreamer-audio.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td> 23<td><a accesskey="p" href="GstAudioEncoder.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td> 24<td><a accesskey="n" href="GstAudioSink.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td> 25</tr></table> 26<div class="refentry"> 27<a name="GstAudioFilter"></a><div class="titlepage"></div> 28<div class="refnamediv"><table width="100%"><tr> 29<td valign="top"> 30<h2><span class="refentrytitle"><a name="GstAudioFilter.top_of_page"></a>GstAudioFilter</span></h2> 31<p>GstAudioFilter — Base class for simple audio filters</p> 32</td> 33<td class="gallery_image" valign="top" align="right"></td> 34</tr></table></div> 35<div class="refsect1"> 36<a name="GstAudioFilter.functions"></a><h2>Functions</h2> 37<div class="informaltable"><table class="informaltable" width="100%" border="0"> 38<colgroup> 39<col width="150px" class="functions_return"> 40<col class="functions_name"> 41</colgroup> 42<tbody><tr> 43<td class="function_type"> 44<span class="returnvalue">void</span> 45</td> 46<td class="function_name"> 47<a class="link" href="GstAudioFilter.html#gst-audio-filter-class-add-pad-templates" title="gst_audio_filter_class_add_pad_templates ()">gst_audio_filter_class_add_pad_templates</a> <span class="c_punctuation">()</span> 48</td> 49</tr></tbody> 50</table></div> 51</div> 52<div class="refsect1"> 53<a name="GstAudioFilter.other"></a><h2>Types and Values</h2> 54<div class="informaltable"><table class="informaltable" width="100%" border="0"> 55<colgroup> 56<col width="150px" class="name"> 57<col class="description"> 58</colgroup> 59<tbody> 60<tr> 61<td class="datatype_keyword">struct</td> 62<td class="function_name"><a class="link" href="GstAudioFilter.html#GstAudioFilter-struct" title="struct GstAudioFilter">GstAudioFilter</a></td> 63</tr> 64<tr> 65<td class="datatype_keyword">struct</td> 66<td class="function_name"><a class="link" href="GstAudioFilter.html#GstAudioFilterClass" title="struct GstAudioFilterClass">GstAudioFilterClass</a></td> 67</tr> 68</tbody> 69</table></div> 70</div> 71<div class="refsect1"> 72<a name="GstAudioFilter.object-hierarchy"></a><h2>Object Hierarchy</h2> 73<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject-struct">GObject</a> 74 <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a> 75 <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstObject.html#GstObject-struct">GstObject</a> 76 <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct">GstElement</a> 77 <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-libs-1.0/GstBaseTransform.html#GstBaseTransform-struct">GstBaseTransform</a> 78 <span class="lineart">╰──</span> GstAudioFilter 79</pre> 80</div> 81<div class="refsect1"> 82<a name="GstAudioFilter.includes"></a><h2>Includes</h2> 83<pre class="synopsis">#include <gst/audio/audio.h> 84</pre> 85</div> 86<div class="refsect1"> 87<a name="GstAudioFilter.description"></a><h2>Description</h2> 88<p><a class="link" href="GstAudioFilter.html" title="GstAudioFilter"><span class="type">GstAudioFilter</span></a> is a <a href="/usr/share/gtk-doc/html/gstreamer-libs-1.0/GstBaseTransform.html#GstBaseTransform-struct"><span class="type">GstBaseTransform</span></a>-derived base class for simple audio 89filters, ie. those that output the same format that they get as input.</p> 90<p><a class="link" href="GstAudioFilter.html" title="GstAudioFilter"><span class="type">GstAudioFilter</span></a> will parse the input format for you (with error checking) 91before calling your setup function. Also, elements deriving from 92<a class="link" href="GstAudioFilter.html" title="GstAudioFilter"><span class="type">GstAudioFilter</span></a> may use <a class="link" href="GstAudioFilter.html#gst-audio-filter-class-add-pad-templates" title="gst_audio_filter_class_add_pad_templates ()"><code class="function">gst_audio_filter_class_add_pad_templates()</code></a> from 93their class_init function to easily configure the set of caps/formats that 94the element is able to handle.</p> 95<p>Derived classes should override the <a class="link" href="GstAudioFilter.html#GstAudioFilterClass.setup"><code class="function">GstAudioFilterClass.setup()</code></a> and 96<a href="/usr/share/gtk-doc/html/gstreamer-libs-1.0/GstBaseTransform.html#GstBaseTransformClass.transform-ip"><code class="function">GstBaseTransformClass.transform_ip()</code></a> and/or 97<a href="/usr/share/gtk-doc/html/gstreamer-libs-1.0/GstBaseTransform.html#GstBaseTransformClass.transform"><code class="function">GstBaseTransformClass.transform()</code></a> 98virtual functions in their class_init function.</p> 99</div> 100<div class="refsect1"> 101<a name="GstAudioFilter.functions_details"></a><h2>Functions</h2> 102<div class="refsect2"> 103<a name="gst-audio-filter-class-add-pad-templates"></a><h3>gst_audio_filter_class_add_pad_templates ()</h3> 104<pre class="programlisting"><span class="returnvalue">void</span> 105gst_audio_filter_class_add_pad_templates 106 (<em class="parameter"><code><a class="link" href="GstAudioFilter.html#GstAudioFilterClass" title="struct GstAudioFilterClass"><span class="type">GstAudioFilterClass</span></a> *klass</code></em>, 107 <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstCaps.html#GstCaps-struct"><span class="type">GstCaps</span></a> *allowed_caps</code></em>);</pre> 108<p>Convenience function to add pad templates to this element class, with 109<em class="parameter"><code>allowed_caps</code></em> 110 as the caps that can be handled.</p> 111<p>This function is usually used from within a GObject class_init function.</p> 112<div class="refsect3"> 113<a name="gst-audio-filter-class-add-pad-templates.parameters"></a><h4>Parameters</h4> 114<div class="informaltable"><table class="informaltable" width="100%" border="0"> 115<colgroup> 116<col width="150px" class="parameters_name"> 117<col class="parameters_description"> 118<col width="200px" class="parameters_annotations"> 119</colgroup> 120<tbody> 121<tr> 122<td class="parameter_name"><p>klass</p></td> 123<td class="parameter_description"><p>an <a class="link" href="GstAudioFilter.html#GstAudioFilterClass" title="struct GstAudioFilterClass"><span class="type">GstAudioFilterClass</span></a></p></td> 124<td class="parameter_annotations"> </td> 125</tr> 126<tr> 127<td class="parameter_name"><p>allowed_caps</p></td> 128<td class="parameter_description"><p>what formats the filter can handle, as <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstCaps.html#GstCaps-struct"><span class="type">GstCaps</span></a></p></td> 129<td class="parameter_annotations"> </td> 130</tr> 131</tbody> 132</table></div> 133</div> 134</div> 135</div> 136<div class="refsect1"> 137<a name="GstAudioFilter.other_details"></a><h2>Types and Values</h2> 138<div class="refsect2"> 139<a name="GstAudioFilter-struct"></a><h3>struct GstAudioFilter</h3> 140<pre class="programlisting">struct GstAudioFilter;</pre> 141<p>Base class for audio filters with the same format for input and output.</p> 142</div> 143<hr> 144<div class="refsect2"> 145<a name="GstAudioFilterClass"></a><h3>struct GstAudioFilterClass</h3> 146<pre class="programlisting">struct GstAudioFilterClass { 147 GstBaseTransformClass basetransformclass; 148 149 /* virtual function, called whenever the format changes */ 150 gboolean (*setup) (GstAudioFilter * filter, const GstAudioInfo * info); 151}; 152</pre> 153<p>In addition to the <em class="parameter"><code>setup</code></em> 154 virtual function, you should also override the 155GstBaseTransform::transform and/or GstBaseTransform::transform_ip virtual 156function.</p> 157<div class="refsect3"> 158<a name="GstAudioFilterClass.members"></a><h4>Members</h4> 159<div class="informaltable"><table class="informaltable" width="100%" border="0"> 160<colgroup> 161<col width="300px" class="struct_members_name"> 162<col class="struct_members_description"> 163<col width="200px" class="struct_members_annotations"> 164</colgroup> 165<tbody> 166<tr> 167<td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/gstreamer-libs-1.0/GstBaseTransform.html#GstBaseTransformClass"><span class="type">GstBaseTransformClass</span></a> <em class="structfield"><code><a name="GstAudioFilterClass.basetransformclass"></a>basetransformclass</code></em>;</p></td> 168<td class="struct_member_description"><p>parent class</p></td> 169<td class="struct_member_annotations"> </td> 170</tr> 171<tr> 172<td class="struct_member_name"><p><em class="structfield"><code><a name="GstAudioFilterClass.setup"></a>setup</code></em> ()</p></td> 173<td class="struct_member_description"><p>virtual function called whenever the format changes</p></td> 174<td class="struct_member_annotations"> </td> 175</tr> 176</tbody> 177</table></div> 178</div> 179</div> 180</div> 181</div> 182<div class="footer"> 183<hr>Generated by GTK-Doc V1.28</div> 184</body> 185</html>