Tizen 2.0 Release
[framework/multimedia/gst-plugins-good0.10.git] / docs / plugins / html / gst-plugins-good-plugins-equalizer-nbands.html
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>equalizer-nbands</title>
6 <meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
7 <link rel="home" href="index.html" title="GStreamer Good Plugins 0.10 Plugins Reference Manual">
8 <link rel="up" href="ch01.html" title="gst-plugins-good Elements">
9 <link rel="prev" href="gst-plugins-good-plugins-equalizer-3bands.html" title="equalizer-3bands">
10 <link rel="next" href="gst-plugins-good-plugins-esdsink.html" title="esdsink">
11 <meta name="generator" content="GTK-Doc V1.18 (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="2">
16 <tr valign="middle">
17 <td><a accesskey="p" href="gst-plugins-good-plugins-equalizer-3bands.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
18 <td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
19 <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
20 <th width="100%" align="center">GStreamer Good Plugins 0.10 Plugins Reference Manual</th>
21 <td><a accesskey="n" href="gst-plugins-good-plugins-esdsink.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
22 </tr>
23 <tr><td colspan="5" class="shortcuts">
24 <a href="#gst-plugins-good-plugins-equalizer-nbands.synopsis" class="shortcut">Top</a>
25                    | 
26                   <a href="#gst-plugins-good-plugins-equalizer-nbands.description" class="shortcut">Description</a>
27                    | 
28                   <a href="#gst-plugins-good-plugins-equalizer-nbands.object-hierarchy" class="shortcut">Object Hierarchy</a>
29                    | 
30                   <a href="#gst-plugins-good-plugins-equalizer-nbands.implemented-interfaces" class="shortcut">Implemented Interfaces</a>
31                    | 
32                   <a href="#gst-plugins-good-plugins-equalizer-nbands.properties" class="shortcut">Properties</a>
33 </td></tr>
34 </table>
35 <div class="refentry">
36 <a name="gst-plugins-good-plugins-equalizer-nbands"></a><div class="titlepage"></div>
37 <div class="refnamediv"><table width="100%"><tr>
38 <td valign="top">
39 <h2><span class="refentrytitle"><a name="gst-plugins-good-plugins-equalizer-nbands.top_of_page"></a>equalizer-nbands</span></h2>
40 <p>equalizer-nbands — Direct Form IIR equalizer</p>
41 </td>
42 <td valign="top" align="right"></td>
43 </tr></table></div>
44 <div class="refsynopsisdiv">
45 <a name="gst-plugins-good-plugins-equalizer-nbands.synopsis"></a><h2>Synopsis</h2>
46 <a name="GstIirEqualizerNBands"></a><pre class="synopsis">struct              <a class="link" href="gst-plugins-good-plugins-equalizer-nbands.html#GstIirEqualizerNBands-struct" title="struct GstIirEqualizerNBands">GstIirEqualizerNBands</a>;
47 </pre>
48 </div>
49 <div class="refsect1">
50 <a name="gst-plugins-good-plugins-equalizer-nbands.object-hierarchy"></a><h2>Object Hierarchy</h2>
51 <pre class="synopsis">
52   <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
53    +----<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
54          +----<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
55                +----<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstBaseTransform.html">GstBaseTransform</a>
56                      +----<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-gstaudiofilter.html#GstAudioFilter">GstAudioFilter</a>
57                            +----<a class="link" href="GstIirEqualizer.html" title="GstIirEqualizer">GstIirEqualizer</a>
58                                  +----GstIirEqualizerNBands
59 </pre>
60 </div>
61 <div class="refsect1">
62 <a name="gst-plugins-good-plugins-equalizer-nbands.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
63 <p>
64 GstIirEqualizerNBands implements
65  <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstChildProxy.html">GstChildProxy</a>.</p>
66 </div>
67 <div class="refsect1">
68 <a name="gst-plugins-good-plugins-equalizer-nbands.properties"></a><h2>Properties</h2>
69 <pre class="synopsis">
70   "<a class="link" href="gst-plugins-good-plugins-equalizer-nbands.html#GstIirEqualizerNBands--num-bands" title='The "num-bands" property'>num-bands</a>"                <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>                 : Read / Write / Construct
71 </pre>
72 </div>
73 <div class="refsect1">
74 <a name="gst-plugins-good-plugins-equalizer-nbands.description"></a><h2>Description</h2>
75 <p>
76 The n-band equalizer element is a fully parametric equalizer. It allows to
77 select between 1 and 64 bands and has properties on each band to change
78 the center frequency, band width and gain.
79 </p>
80 <p>
81 </p>
82 <div class="refsect2">
83 <a name="idp8579280"></a><h3>Example launch line</h3>
84 <div class="informalexample">
85   <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
86     <tbody>
87       <tr>
88         <td class="listing_lines" align="right"><pre>1</pre></td>
89         <td class="listing_code"><pre class="programlisting">gst<span class="gtkdoc opt">-</span>launch filesrc location<span class="gtkdoc opt">=</span>song<span class="gtkdoc opt">.</span>ogg <span class="gtkdoc opt">!</span> oggdemux <span class="gtkdoc opt">!</span> vorbisdec <span class="gtkdoc opt">!</span> audioconvert <span class="gtkdoc opt">!</span> equalizer<span class="gtkdoc opt">-</span>nbands num<span class="gtkdoc opt">-</span>bands<span class="gtkdoc opt">=</span><span class="number">15</span> band5<span class="gtkdoc opt">::</span>gain<span class="gtkdoc opt">=</span><span class="number">6.0</span> <span class="gtkdoc opt">!</span> alsasink</pre></td>
90       </tr>
91     </tbody>
92   </table>
93 </div>
94  This make the equalizer use 15 bands and raises the volume of the 5th band by 6 db.
95 </div>
96 <p>
97 </p>
98 <hr>
99 <div class="refsect2">
100 <a name="idp8150848"></a><h3>Example code</h3>
101 <div class="informalexample">
102   <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
103     <tbody>
104       <tr>
105         <td class="listing_lines" align="right"><pre>1
106 2
107 3
108 4
109 5
110 6
111 7
112 8
113 9
114 10
115 11
116 12
117 13
118 14
119 15
120 16
121 17
122 18
123 19
124 20
125 21
126 22
127 23
128 24
129 25
130 26
131 27
132 28
133 29
134 30
135 31
136 32
137 33
138 34
139 35
140 36
141 37
142 38</pre></td>
143         <td class="listing_code"><pre class="programlisting"><span class="gtkdoc ppc">#include &lt;gst/gst.h&gt;</span>
144
145 <span class="gtkdoc opt">...</span>
146 <span class="gtkdoc kwc">typedef</span> <span class="gtkdoc kwb">struct</span> <span class="gtkdoc opt">{</span>
147   gfloat freq<span class="gtkdoc opt">;</span>
148   gfloat width<span class="gtkdoc opt">;</span>
149   gfloat gain<span class="gtkdoc opt">;</span>
150 <span class="gtkdoc opt">}</span> GstEqualizerBandState<span class="gtkdoc opt">;</span>
151
152 <span class="gtkdoc opt">...</span>
153
154   GstElement <span class="gtkdoc opt">*</span>equalizer<span class="gtkdoc opt">;</span>
155   GstObject <span class="gtkdoc opt">*</span>band<span class="gtkdoc opt">;</span>
156   gint i<span class="gtkdoc opt">;</span>
157   GstEqualizerBandState state<span class="gtkdoc opt">[] = {</span>
158     <span class="gtkdoc opt">{</span> <span class="number">120.0</span><span class="gtkdoc opt">,</span>   <span class="number">50.0</span><span class="gtkdoc opt">, -</span> <span class="number">3.0</span><span class="gtkdoc opt">},</span>
159     <span class="gtkdoc opt">{</span> <span class="number">500.0</span><span class="gtkdoc opt">,</span>   <span class="number">20.0</span><span class="gtkdoc opt">,</span>  <span class="number">12.0</span><span class="gtkdoc opt">},</span>
160     <span class="gtkdoc opt">{</span><span class="number">1503.0</span><span class="gtkdoc opt">,</span>    <span class="number">2.0</span><span class="gtkdoc opt">, -</span><span class="number">20.0</span><span class="gtkdoc opt">},</span>
161     <span class="gtkdoc opt">{</span><span class="number">6000.0</span><span class="gtkdoc opt">,</span> <span class="number">1000.0</span><span class="gtkdoc opt">,</span>   <span class="number">6.0</span><span class="gtkdoc opt">},</span>
162     <span class="gtkdoc opt">{</span><span class="number">3000.0</span><span class="gtkdoc opt">,</span>  <span class="number">120.0</span><span class="gtkdoc opt">,</span>   <span class="number">2.0</span><span class="gtkdoc opt">}</span>
163   <span class="gtkdoc opt">};</span>
164
165 <span class="gtkdoc opt">...</span>
166
167   equalizer <span class="gtkdoc opt">=</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElementFactory.html#gst-element-factory-make">gst_element_factory_make</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;equalizer-nbands&quot;</span><span class="gtkdoc opt">,</span> <span class="string">&quot;equalizer&quot;</span><span class="gtkdoc opt">);</span>
168   <span class="function"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#g-object-set">g_object_set</a></span> <span class="gtkdoc opt">(</span><span class="function"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#G-OBJECT:CAPS">G_OBJECT</a></span> <span class="gtkdoc opt">(</span>equalizer<span class="gtkdoc opt">),</span> <span class="string">&quot;num-bands&quot;</span><span class="gtkdoc opt">,</span> <span class="number">5</span><span class="gtkdoc opt">,</span> NULL<span class="gtkdoc opt">);</span>
169
170 <span class="gtkdoc opt">...</span>
171
172   <span class="keyword">for</span> <span class="gtkdoc opt">(</span>i <span class="gtkdoc opt">=</span> <span class="number">0</span><span class="gtkdoc opt">;</span> i <span class="gtkdoc opt">&lt;</span> <span class="number">5</span><span class="gtkdoc opt">;</span> i<span class="gtkdoc opt">++) {</span>
173     band <span class="gtkdoc opt">=</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstChildProxy.html#gst-child-proxy-get-child-by-index">gst_child_proxy_get_child_by_index</a></span> <span class="gtkdoc opt">(</span><span class="function">GST_CHILD_PROXY</span> <span class="gtkdoc opt">(</span>equalizer<span class="gtkdoc opt">),</span> i<span class="gtkdoc opt">);</span>
174     <span class="function"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#g-object-set">g_object_set</a></span> <span class="gtkdoc opt">(</span><span class="function"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#G-OBJECT:CAPS">G_OBJECT</a></span> <span class="gtkdoc opt">(</span>band<span class="gtkdoc opt">),</span> <span class="string">&quot;freq&quot;</span><span class="gtkdoc opt">,</span> state<span class="gtkdoc opt">[</span>i<span class="gtkdoc opt">].</span>freq<span class="gtkdoc opt">,</span>
175         <span class="string">&quot;bandwidth&quot;</span><span class="gtkdoc opt">,</span> state<span class="gtkdoc opt">[</span>i<span class="gtkdoc opt">].</span>width<span class="gtkdoc opt">,</span>
176         <span class="string">&quot;gain&quot;</span><span class="gtkdoc opt">,</span> state<span class="gtkdoc opt">[</span>i<span class="gtkdoc opt">].</span>gain<span class="gtkdoc opt">);</span>
177     <span class="function"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#g-object-unref">g_object_unref</a></span> <span class="gtkdoc opt">(</span><span class="function"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#G-OBJECT:CAPS">G_OBJECT</a></span> <span class="gtkdoc opt">(</span>band<span class="gtkdoc opt">));</span>
178   <span class="gtkdoc opt">}</span>
179
180 <span class="gtkdoc opt">...</span></pre></td>
181       </tr>
182     </tbody>
183   </table>
184 </div>
185
186 </div>
187 <p>
188 </p>
189 <div class="refsynopsisdiv">
190 <h2>Synopsis</h2>
191 <div class="refsect2">
192 <a name="idp8030208"></a><h3>Element Information</h3>
193 <div class="variablelist"><table border="0">
194 <col align="left" valign="top">
195 <tbody>
196 <tr>
197 <td><p><span class="term">plugin</span></p></td>
198 <td>
199             <a class="link" href="gst-plugins-good-plugins-plugin-equalizer.html#plugin-equalizer">equalizer</a>
200           </td>
201 </tr>
202 <tr>
203 <td><p><span class="term">author</span></p></td>
204 <td>Benjamin Otte &lt;otte@gnome.org&gt;, Stefan Kost &lt;ensonic@users.sf.net&gt;</td>
205 </tr>
206 <tr>
207 <td><p><span class="term">class</span></p></td>
208 <td>Filter/Effect/Audio</td>
209 </tr>
210 </tbody>
211 </table></div>
212 </div>
213 <hr>
214 <div class="refsect2">
215 <a name="idp13869440"></a><h3>Element Pads</h3>
216 <div class="variablelist"><table border="0">
217 <col align="left" valign="top">
218 <tbody>
219 <tr>
220 <td><p><span class="term">name</span></p></td>
221 <td>sink</td>
222 </tr>
223 <tr>
224 <td><p><span class="term">direction</span></p></td>
225 <td>sink</td>
226 </tr>
227 <tr>
228 <td><p><span class="term">presence</span></p></td>
229 <td>always</td>
230 </tr>
231 <tr>
232 <td><p><span class="term">details</span></p></td>
233 <td>audio/x-raw-int, depth=(int)16, width=(int)16, endianness=(int)1234, signed=(boolean)true, rate=(int)[ 1000, 2147483647 ], channels=(int)[ 1, 2147483647 ]</td>
234 </tr>
235 <tr>
236 <td><p><span class="term"></span></p></td>
237 <td> audio/x-raw-float, width=(int){ 32, 64 }, endianness=(int)1234, rate=(int)[ 1000, 2147483647 ], channels=(int)[ 1, 2147483647 ]</td>
238 </tr>
239 </tbody>
240 </table></div>
241 <div class="variablelist"><table border="0">
242 <col align="left" valign="top">
243 <tbody>
244 <tr>
245 <td><p><span class="term">name</span></p></td>
246 <td>src</td>
247 </tr>
248 <tr>
249 <td><p><span class="term">direction</span></p></td>
250 <td>source</td>
251 </tr>
252 <tr>
253 <td><p><span class="term">presence</span></p></td>
254 <td>always</td>
255 </tr>
256 <tr>
257 <td><p><span class="term">details</span></p></td>
258 <td>audio/x-raw-int, depth=(int)16, width=(int)16, endianness=(int)1234, signed=(boolean)true, rate=(int)[ 1000, 2147483647 ], channels=(int)[ 1, 2147483647 ]</td>
259 </tr>
260 <tr>
261 <td><p><span class="term"></span></p></td>
262 <td> audio/x-raw-float, width=(int){ 32, 64 }, endianness=(int)1234, rate=(int)[ 1000, 2147483647 ], channels=(int)[ 1, 2147483647 ]</td>
263 </tr>
264 </tbody>
265 </table></div>
266 </div>
267 </div>
268 <p>
269 </p>
270 </div>
271 <div class="refsect1">
272 <a name="gst-plugins-good-plugins-equalizer-nbands.details"></a><h2>Details</h2>
273 <div class="refsect2">
274 <a name="GstIirEqualizerNBands-struct"></a><h3>struct GstIirEqualizerNBands</h3>
275 <pre class="programlisting">struct GstIirEqualizerNBands;</pre>
276 <p>
277 </p>
278 </div>
279 </div>
280 <div class="refsect1">
281 <a name="gst-plugins-good-plugins-equalizer-nbands.property-details"></a><h2>Property Details</h2>
282 <div class="refsect2">
283 <a name="GstIirEqualizerNBands--num-bands"></a><h3>The <code class="literal">"num-bands"</code> property</h3>
284 <pre class="programlisting">  "num-bands"                <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>                 : Read / Write / Construct</pre>
285 <p>number of different bands to use.</p>
286 <p>Allowed values: [1,64]</p>
287 <p>Default value: 10</p>
288 </div>
289 </div>
290 </div>
291 <div class="footer">
292 <hr>
293           Generated by GTK-Doc V1.18</div>
294 </body>
295 </html>