• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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>GstAudioConverter: 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="gst-plugins-base-libs-Audio-channels.html" title="Audio-channels">
10<link rel="next" href="gst-plugins-base-libs-GstAudioQuantize.html" title="GstAudioQuantize">
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">|</span18                  <a href="#gst-plugins-base-libs-GstAudioConverter.description" class="shortcut">Description</a></span>
19</td>
20<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
21<td><a accesskey="u" href="gstreamer-audio.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
22<td><a accesskey="p" href="gst-plugins-base-libs-Audio-channels.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
23<td><a accesskey="n" href="gst-plugins-base-libs-GstAudioQuantize.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
24</tr></table>
25<div class="refentry">
26<a name="gst-plugins-base-libs-GstAudioConverter"></a><div class="titlepage"></div>
27<div class="refnamediv"><table width="100%"><tr>
28<td valign="top">
29<h2><span class="refentrytitle"><a name="gst-plugins-base-libs-GstAudioConverter.top_of_page"></a>GstAudioConverter</span></h2>
30<p>GstAudioConverter — Generic audio conversion</p>
31</td>
32<td class="gallery_image" valign="top" align="right"></td>
33</tr></table></div>
34<div class="refsect1">
35<a name="gst-plugins-base-libs-GstAudioConverter.functions"></a><h2>Functions</h2>
36<div class="informaltable"><table class="informaltable" width="100%" border="0">
37<colgroup>
38<col width="150px" class="functions_return">
39<col class="functions_name">
40</colgroup>
41<tbody>
42<tr>
43<td class="function_type">
44<a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverter" title="GstAudioConverter"><span class="returnvalue">GstAudioConverter</span></a> *
45</td>
46<td class="function_name">
47<a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#gst-audio-converter-new" title="gst_audio_converter_new ()">gst_audio_converter_new</a> <span class="c_punctuation">()</span>
48</td>
49</tr>
50<tr>
51<td class="function_type">
52<span class="returnvalue">void</span>
53</td>
54<td class="function_name">
55<a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#gst-audio-converter-free" title="gst_audio_converter_free ()">gst_audio_converter_free</a> <span class="c_punctuation">()</span>
56</td>
57</tr>
58<tr>
59<td class="function_type">
60<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
61</td>
62<td class="function_name">
63<a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#gst-audio-converter-samples" title="gst_audio_converter_samples ()">gst_audio_converter_samples</a> <span class="c_punctuation">()</span>
64</td>
65</tr>
66<tr>
67<td class="function_type">
68<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
69</td>
70<td class="function_name">
71<a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#gst-audio-converter-convert" title="gst_audio_converter_convert ()">gst_audio_converter_convert</a> <span class="c_punctuation">()</span>
72</td>
73</tr>
74<tr>
75<td class="function_type">
76<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="returnvalue">gsize</span></a>
77</td>
78<td class="function_name">
79<a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#gst-audio-converter-get-in-frames" title="gst_audio_converter_get_in_frames ()">gst_audio_converter_get_in_frames</a> <span class="c_punctuation">()</span>
80</td>
81</tr>
82<tr>
83<td class="function_type">
84<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="returnvalue">gsize</span></a>
85</td>
86<td class="function_name">
87<a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#gst-audio-converter-get-max-latency" title="gst_audio_converter_get_max_latency ()">gst_audio_converter_get_max_latency</a> <span class="c_punctuation">()</span>
88</td>
89</tr>
90<tr>
91<td class="function_type">
92<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="returnvalue">gsize</span></a>
93</td>
94<td class="function_name">
95<a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#gst-audio-converter-get-out-frames" title="gst_audio_converter_get_out_frames ()">gst_audio_converter_get_out_frames</a> <span class="c_punctuation">()</span>
96</td>
97</tr>
98<tr>
99<td class="function_type">
100<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
101</td>
102<td class="function_name">
103<a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#gst-audio-converter-update-config" title="gst_audio_converter_update_config ()">gst_audio_converter_update_config</a> <span class="c_punctuation">()</span>
104</td>
105</tr>
106<tr>
107<td class="function_type">const <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstStructure.html#GstStructure-struct"><span class="returnvalue">GstStructure</span></a> *
108</td>
109<td class="function_name">
110<a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#gst-audio-converter-get-config" title="gst_audio_converter_get_config ()">gst_audio_converter_get_config</a> <span class="c_punctuation">()</span>
111</td>
112</tr>
113<tr>
114<td class="function_type">
115<span class="returnvalue">void</span>
116</td>
117<td class="function_name">
118<a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#gst-audio-converter-reset" title="gst_audio_converter_reset ()">gst_audio_converter_reset</a> <span class="c_punctuation">()</span>
119</td>
120</tr>
121<tr>
122<td class="function_type">
123<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
124</td>
125<td class="function_name">
126<a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#gst-audio-converter-supports-inplace" title="gst_audio_converter_supports_inplace ()">gst_audio_converter_supports_inplace</a> <span class="c_punctuation">()</span>
127</td>
128</tr>
129<tr>
130<td class="function_type">
131<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
132</td>
133<td class="function_name">
134<a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#gst-audio-converter-is-passthrough" title="gst_audio_converter_is_passthrough ()">gst_audio_converter_is_passthrough</a> <span class="c_punctuation">()</span>
135</td>
136</tr>
137</tbody>
138</table></div>
139</div>
140<div class="refsect1">
141<a name="gst-plugins-base-libs-GstAudioConverter.other"></a><h2>Types and Values</h2>
142<div class="informaltable"><table class="informaltable" width="100%" border="0">
143<colgroup>
144<col width="150px" class="name">
145<col class="description">
146</colgroup>
147<tbody>
148<tr>
149<td class="datatype_keyword"> </td>
150<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverter" title="GstAudioConverter">GstAudioConverter</a></td>
151</tr>
152<tr>
153<td class="datatype_keyword">enum</td>
154<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverterFlags" title="enum GstAudioConverterFlags">GstAudioConverterFlags</a></td>
155</tr>
156<tr>
157<td class="define_keyword">#define</td>
158<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GST-AUDIO-CONVERTER-OPT-DITHER-METHOD:CAPS" title="GST_AUDIO_CONVERTER_OPT_DITHER_METHOD">GST_AUDIO_CONVERTER_OPT_DITHER_METHOD</a></td>
159</tr>
160<tr>
161<td class="define_keyword">#define</td>
162<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GST-AUDIO-CONVERTER-OPT-NOISE-SHAPING-METHOD:CAPS" title="GST_AUDIO_CONVERTER_OPT_NOISE_SHAPING_METHOD">GST_AUDIO_CONVERTER_OPT_NOISE_SHAPING_METHOD</a></td>
163</tr>
164<tr>
165<td class="define_keyword">#define</td>
166<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GST-AUDIO-CONVERTER-OPT-QUANTIZATION:CAPS" title="GST_AUDIO_CONVERTER_OPT_QUANTIZATION">GST_AUDIO_CONVERTER_OPT_QUANTIZATION</a></td>
167</tr>
168<tr>
169<td class="define_keyword">#define</td>
170<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GST-AUDIO-CONVERTER-OPT-MIX-MATRIX:CAPS" title="GST_AUDIO_CONVERTER_OPT_MIX_MATRIX">GST_AUDIO_CONVERTER_OPT_MIX_MATRIX</a></td>
171</tr>
172<tr>
173<td class="define_keyword">#define</td>
174<td class="function_name"><a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GST-AUDIO-CONVERTER-OPT-RESAMPLER-METHOD:CAPS" title="GST_AUDIO_CONVERTER_OPT_RESAMPLER_METHOD">GST_AUDIO_CONVERTER_OPT_RESAMPLER_METHOD</a></td>
175</tr>
176</tbody>
177</table></div>
178</div>
179<div class="refsect1">
180<a name="gst-plugins-base-libs-GstAudioConverter.includes"></a><h2>Includes</h2>
181<pre class="synopsis">#include &lt;gst/audio/audio.h&gt;
182</pre>
183</div>
184<div class="refsect1">
185<a name="gst-plugins-base-libs-GstAudioConverter.description"></a><h2>Description</h2>
186<p>This object is used to convert audio samples from one format to another.
187The object can perform conversion of:</p>
188<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
189<li class="listitem"><p>audio format with optional dithering and noise shaping</p></li>
190<li class="listitem"><p>audio samplerate</p></li>
191<li class="listitem"><p>audio channels and channel layout</p></li>
192</ul></div>
193</div>
194<div class="refsect1">
195<a name="gst-plugins-base-libs-GstAudioConverter.functions_details"></a><h2>Functions</h2>
196<div class="refsect2">
197<a name="gst-audio-converter-new"></a><h3>gst_audio_converter_new ()</h3>
198<pre class="programlisting"><a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverter" title="GstAudioConverter"><span class="returnvalue">GstAudioConverter</span></a> *
199gst_audio_converter_new (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverterFlags" title="enum GstAudioConverterFlags"><span class="type">GstAudioConverterFlags</span></a> flags</code></em>,
200                         <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstAudio.html#GstAudioInfo"><span class="type">GstAudioInfo</span></a> *in_info</code></em>,
201                         <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstAudio.html#GstAudioInfo"><span class="type">GstAudioInfo</span></a> *out_info</code></em>,
202                         <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstStructure.html#GstStructure-struct"><span class="type">GstStructure</span></a> *config</code></em>);</pre>
203<p>Create a new <a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverter" title="GstAudioConverter"><span class="type">GstAudioConverter</span></a> that is able to convert between <em class="parameter"><code>in</code></em>
204 and <em class="parameter"><code>out</code></em>
205
206audio formats.</p>
207<p><em class="parameter"><code>config</code></em>
208 contains extra configuration options, see <span class="type">GST_AUDIO_CONVERTER_OPT_</span>*
209parameters for details about the options and values.</p>
210<div class="refsect3">
211<a name="gst-audio-converter-new.parameters"></a><h4>Parameters</h4>
212<div class="informaltable"><table class="informaltable" width="100%" border="0">
213<colgroup>
214<col width="150px" class="parameters_name">
215<col class="parameters_description">
216<col width="200px" class="parameters_annotations">
217</colgroup>
218<tbody>
219<tr>
220<td class="parameter_name"><p>flags</p></td>
221<td class="parameter_description"><p>extra <a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverterFlags" title="enum GstAudioConverterFlags"><span class="type">GstAudioConverterFlags</span></a></p></td>
222<td class="parameter_annotations"> </td>
223</tr>
224<tr>
225<td class="parameter_name"><p>in_info</p></td>
226<td class="parameter_description"><p>a source <a class="link" href="gst-plugins-base-libs-GstAudio.html#GstAudioInfo"><span class="type">GstAudioInfo</span></a></p></td>
227<td class="parameter_annotations"> </td>
228</tr>
229<tr>
230<td class="parameter_name"><p>out_info</p></td>
231<td class="parameter_description"><p>a destination <a class="link" href="gst-plugins-base-libs-GstAudio.html#GstAudioInfo"><span class="type">GstAudioInfo</span></a></p></td>
232<td class="parameter_annotations"> </td>
233</tr>
234<tr>
235<td class="parameter_name"><p>config</p></td>
236<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstStructure.html#GstStructure-struct"><span class="type">GstStructure</span></a> with configuration options. </p></td>
237<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
238</tr>
239</tbody>
240</table></div>
241</div>
242<div class="refsect3">
243<a name="gst-audio-converter-new.returns"></a><h4>Returns</h4>
244<p> a <a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverter" title="GstAudioConverter"><span class="type">GstAudioConverter</span></a> or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if conversion is not possible.</p>
245</div>
246</div>
247<hr>
248<div class="refsect2">
249<a name="gst-audio-converter-free"></a><h3>gst_audio_converter_free ()</h3>
250<pre class="programlisting"><span class="returnvalue">void</span>
251gst_audio_converter_free (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverter" title="GstAudioConverter"><span class="type">GstAudioConverter</span></a> *convert</code></em>);</pre>
252<p>Free a previously allocated <em class="parameter"><code>convert</code></em>
253 instance.</p>
254<div class="refsect3">
255<a name="gst-audio-converter-free.parameters"></a><h4>Parameters</h4>
256<div class="informaltable"><table class="informaltable" width="100%" border="0">
257<colgroup>
258<col width="150px" class="parameters_name">
259<col class="parameters_description">
260<col width="200px" class="parameters_annotations">
261</colgroup>
262<tbody><tr>
263<td class="parameter_name"><p>convert</p></td>
264<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverter" title="GstAudioConverter"><span class="type">GstAudioConverter</span></a></p></td>
265<td class="parameter_annotations"> </td>
266</tr></tbody>
267</table></div>
268</div>
269</div>
270<hr>
271<div class="refsect2">
272<a name="gst-audio-converter-samples"></a><h3>gst_audio_converter_samples ()</h3>
273<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
274gst_audio_converter_samples (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverter" title="GstAudioConverter"><span class="type">GstAudioConverter</span></a> *convert</code></em>,
275                             <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverterFlags" title="enum GstAudioConverterFlags"><span class="type">GstAudioConverterFlags</span></a> flags</code></em>,
276                             <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> in[]</code></em>,
277                             <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> in_frames</code></em>,
278                             <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> out[]</code></em>,
279                             <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> out_frames</code></em>);</pre>
280<p>Perform the conversion with <em class="parameter"><code>in_frames</code></em>
281 in <em class="parameter"><code>in</code></em>
282 to <em class="parameter"><code>out_frames</code></em>
283 in <em class="parameter"><code>out</code></em>
284
285using <em class="parameter"><code>convert</code></em>
286.</p>
287<p>In case the samples are interleaved, <em class="parameter"><code>in</code></em>
288 and <em class="parameter"><code>out</code></em>
289 must point to an
290array with a single element pointing to a block of interleaved samples.</p>
291<p>If non-interleaved samples are used, <em class="parameter"><code>in</code></em>
292 and <em class="parameter"><code>out</code></em>
293 must point to an
294array with pointers to memory blocks, one for each channel.</p>
295<p><em class="parameter"><code>in</code></em>
296 may be <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, in which case <em class="parameter"><code>in_frames</code></em>
297 of silence samples are processed
298by the converter.</p>
299<p>This function always produces <em class="parameter"><code>out_frames</code></em>
300 of output and consumes <em class="parameter"><code>in_frames</code></em>
301 of
302input. Use <a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#gst-audio-converter-get-out-frames" title="gst_audio_converter_get_out_frames ()"><code class="function">gst_audio_converter_get_out_frames()</code></a> and
303<a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#gst-audio-converter-get-in-frames" title="gst_audio_converter_get_in_frames ()"><code class="function">gst_audio_converter_get_in_frames()</code></a> to make sure <em class="parameter"><code>in_frames</code></em>
304 and <em class="parameter"><code>out_frames</code></em>
305
306are matching and <em class="parameter"><code>in</code></em>
307 and <em class="parameter"><code>out</code></em>
308 point to enough memory.</p>
309<div class="refsect3">
310<a name="gst-audio-converter-samples.parameters"></a><h4>Parameters</h4>
311<div class="informaltable"><table class="informaltable" width="100%" border="0">
312<colgroup>
313<col width="150px" class="parameters_name">
314<col class="parameters_description">
315<col width="200px" class="parameters_annotations">
316</colgroup>
317<tbody>
318<tr>
319<td class="parameter_name"><p>convert</p></td>
320<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverter" title="GstAudioConverter"><span class="type">GstAudioConverter</span></a></p></td>
321<td class="parameter_annotations"> </td>
322</tr>
323<tr>
324<td class="parameter_name"><p>flags</p></td>
325<td class="parameter_description"><p>extra <a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverterFlags" title="enum GstAudioConverterFlags"><span class="type">GstAudioConverterFlags</span></a></p></td>
326<td class="parameter_annotations"> </td>
327</tr>
328<tr>
329<td class="parameter_name"><p>in</p></td>
330<td class="parameter_description"><p>input frames</p></td>
331<td class="parameter_annotations"> </td>
332</tr>
333<tr>
334<td class="parameter_name"><p>in_frames</p></td>
335<td class="parameter_description"><p>number of input frames</p></td>
336<td class="parameter_annotations"> </td>
337</tr>
338<tr>
339<td class="parameter_name"><p>out</p></td>
340<td class="parameter_description"><p>output frames</p></td>
341<td class="parameter_annotations"> </td>
342</tr>
343<tr>
344<td class="parameter_name"><p>out_frames</p></td>
345<td class="parameter_description"><p>number of output frames</p></td>
346<td class="parameter_annotations"> </td>
347</tr>
348</tbody>
349</table></div>
350</div>
351<div class="refsect3">
352<a name="gst-audio-converter-samples.returns"></a><h4>Returns</h4>
353<p> <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> is the conversion could be performed.</p>
354</div>
355</div>
356<hr>
357<div class="refsect2">
358<a name="gst-audio-converter-convert"></a><h3>gst_audio_converter_convert ()</h3>
359<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
360gst_audio_converter_convert (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverter" title="GstAudioConverter"><span class="type">GstAudioConverter</span></a> *convert</code></em>,
361                             <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverterFlags" title="enum GstAudioConverterFlags"><span class="type">GstAudioConverterFlags</span></a> flags</code></em>,
362                             <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> in</code></em>,
363                             <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> in_size</code></em>,
364                             <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> *out</code></em>,
365                             <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> *out_size</code></em>);</pre>
366<p>Convenience wrapper around <a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#gst-audio-converter-samples" title="gst_audio_converter_samples ()"><code class="function">gst_audio_converter_samples()</code></a>, which will
367perform allocation of the output buffer based on the result from
368<a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#gst-audio-converter-get-out-frames" title="gst_audio_converter_get_out_frames ()"><code class="function">gst_audio_converter_get_out_frames()</code></a>.</p>
369<div class="refsect3">
370<a name="gst-audio-converter-convert.parameters"></a><h4>Parameters</h4>
371<div class="informaltable"><table class="informaltable" width="100%" border="0">
372<colgroup>
373<col width="150px" class="parameters_name">
374<col class="parameters_description">
375<col width="200px" class="parameters_annotations">
376</colgroup>
377<tbody>
378<tr>
379<td class="parameter_name"><p>convert</p></td>
380<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverter" title="GstAudioConverter"><span class="type">GstAudioConverter</span></a></p></td>
381<td class="parameter_annotations"> </td>
382</tr>
383<tr>
384<td class="parameter_name"><p>flags</p></td>
385<td class="parameter_description"><p>extra <a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverterFlags" title="enum GstAudioConverterFlags"><span class="type">GstAudioConverterFlags</span></a></p></td>
386<td class="parameter_annotations"> </td>
387</tr>
388<tr>
389<td class="parameter_name"><p>in</p></td>
390<td class="parameter_description"><p>input data. </p></td>
391<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=in_size][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> guint8]</span></td>
392</tr>
393<tr>
394<td class="parameter_name"><p>in_size</p></td>
395<td class="parameter_description"><p>size of <em class="parameter"><code>in</code></em>
396</p></td>
397<td class="parameter_annotations"> </td>
398</tr>
399<tr>
400<td class="parameter_name"><p>out</p></td>
401<td class="parameter_description"><p>a pointer where
402the output data will be written. </p></td>
403<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=out_size][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> guint8]</span></td>
404</tr>
405<tr>
406<td class="parameter_name"><p>out_size</p></td>
407<td class="parameter_description"><p>a pointer where the size of <em class="parameter"><code>out</code></em>
408will be written. </p></td>
409<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
410</tr>
411</tbody>
412</table></div>
413</div>
414<div class="refsect3">
415<a name="gst-audio-converter-convert.returns"></a><h4>Returns</h4>
416<p> <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> is the conversion could be performed.</p>
417</div>
418<p class="since">Since: <a class="link" href="ix04.html#api-index-1.14">1.14</a></p>
419</div>
420<hr>
421<div class="refsect2">
422<a name="gst-audio-converter-get-in-frames"></a><h3>gst_audio_converter_get_in_frames ()</h3>
423<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="returnvalue">gsize</span></a>
424gst_audio_converter_get_in_frames (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverter" title="GstAudioConverter"><span class="type">GstAudioConverter</span></a> *convert</code></em>,
425                                   <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> out_frames</code></em>);</pre>
426<p>Calculate how many input frames are currently needed by <em class="parameter"><code>convert</code></em>
427 to produce
428<em class="parameter"><code>out_frames</code></em>
429 of output frames.</p>
430<div class="refsect3">
431<a name="gst-audio-converter-get-in-frames.parameters"></a><h4>Parameters</h4>
432<div class="informaltable"><table class="informaltable" width="100%" border="0">
433<colgroup>
434<col width="150px" class="parameters_name">
435<col class="parameters_description">
436<col width="200px" class="parameters_annotations">
437</colgroup>
438<tbody>
439<tr>
440<td class="parameter_name"><p>convert</p></td>
441<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverter" title="GstAudioConverter"><span class="type">GstAudioConverter</span></a></p></td>
442<td class="parameter_annotations"> </td>
443</tr>
444<tr>
445<td class="parameter_name"><p>out_frames</p></td>
446<td class="parameter_description"><p>number of output frames</p></td>
447<td class="parameter_annotations"> </td>
448</tr>
449</tbody>
450</table></div>
451</div>
452<div class="refsect3">
453<a name="gst-audio-converter-get-in-frames.returns"></a><h4>Returns</h4>
454<p> the number of input frames</p>
455</div>
456</div>
457<hr>
458<div class="refsect2">
459<a name="gst-audio-converter-get-max-latency"></a><h3>gst_audio_converter_get_max_latency ()</h3>
460<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="returnvalue">gsize</span></a>
461gst_audio_converter_get_max_latency (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverter" title="GstAudioConverter"><span class="type">GstAudioConverter</span></a> *convert</code></em>);</pre>
462<p>Get the maximum number of input frames that the converter would
463need before producing output.</p>
464<div class="refsect3">
465<a name="gst-audio-converter-get-max-latency.parameters"></a><h4>Parameters</h4>
466<div class="informaltable"><table class="informaltable" width="100%" border="0">
467<colgroup>
468<col width="150px" class="parameters_name">
469<col class="parameters_description">
470<col width="200px" class="parameters_annotations">
471</colgroup>
472<tbody><tr>
473<td class="parameter_name"><p>convert</p></td>
474<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverter" title="GstAudioConverter"><span class="type">GstAudioConverter</span></a></p></td>
475<td class="parameter_annotations"> </td>
476</tr></tbody>
477</table></div>
478</div>
479<div class="refsect3">
480<a name="gst-audio-converter-get-max-latency.returns"></a><h4>Returns</h4>
481<p> the latency of <em class="parameter"><code>convert</code></em>
482as expressed in the number of
483frames.</p>
484</div>
485</div>
486<hr>
487<div class="refsect2">
488<a name="gst-audio-converter-get-out-frames"></a><h3>gst_audio_converter_get_out_frames ()</h3>
489<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="returnvalue">gsize</span></a>
490gst_audio_converter_get_out_frames (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverter" title="GstAudioConverter"><span class="type">GstAudioConverter</span></a> *convert</code></em>,
491                                    <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> in_frames</code></em>);</pre>
492<p>Calculate how many output frames can be produced when <em class="parameter"><code>in_frames</code></em>
493 input
494frames are given to <em class="parameter"><code>convert</code></em>
495.</p>
496<div class="refsect3">
497<a name="gst-audio-converter-get-out-frames.parameters"></a><h4>Parameters</h4>
498<div class="informaltable"><table class="informaltable" width="100%" border="0">
499<colgroup>
500<col width="150px" class="parameters_name">
501<col class="parameters_description">
502<col width="200px" class="parameters_annotations">
503</colgroup>
504<tbody>
505<tr>
506<td class="parameter_name"><p>convert</p></td>
507<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverter" title="GstAudioConverter"><span class="type">GstAudioConverter</span></a></p></td>
508<td class="parameter_annotations"> </td>
509</tr>
510<tr>
511<td class="parameter_name"><p>in_frames</p></td>
512<td class="parameter_description"><p>number of input frames</p></td>
513<td class="parameter_annotations"> </td>
514</tr>
515</tbody>
516</table></div>
517</div>
518<div class="refsect3">
519<a name="gst-audio-converter-get-out-frames.returns"></a><h4>Returns</h4>
520<p> the number of output frames</p>
521</div>
522</div>
523<hr>
524<div class="refsect2">
525<a name="gst-audio-converter-update-config"></a><h3>gst_audio_converter_update_config ()</h3>
526<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
527gst_audio_converter_update_config (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverter" title="GstAudioConverter"><span class="type">GstAudioConverter</span></a> *convert</code></em>,
528                                   <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> in_rate</code></em>,
529                                   <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> out_rate</code></em>,
530                                   <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstStructure.html#GstStructure-struct"><span class="type">GstStructure</span></a> *config</code></em>);</pre>
531<p>Set <em class="parameter"><code>in_rate</code></em>
532, <em class="parameter"><code>out_rate</code></em>
533 and <em class="parameter"><code>config</code></em>
534 as extra configuration for <em class="parameter"><code>convert</code></em>
535.</p>
536<p><em class="parameter"><code>in_rate</code></em>
537 and <em class="parameter"><code>out_rate</code></em>
538 specify the new sample rates of input and output
539formats. A value of 0 leaves the sample rate unchanged.</p>
540<p><em class="parameter"><code>config</code></em>
541 can be <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, in which case, the current configuration is not
542changed.</p>
543<p>If the parameters in <em class="parameter"><code>config</code></em>
544 can not be set exactly, this function returns
545<a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> and will try to update as much state as possible. The new state can
546then be retrieved and refined with <a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#gst-audio-converter-get-config" title="gst_audio_converter_get_config ()"><code class="function">gst_audio_converter_get_config()</code></a>.</p>
547<p>Look at the <span class="type">GST_AUDIO_CONVERTER_OPT_</span>* fields to check valid configuration
548option and values.</p>
549<div class="refsect3">
550<a name="gst-audio-converter-update-config.parameters"></a><h4>Parameters</h4>
551<div class="informaltable"><table class="informaltable" width="100%" border="0">
552<colgroup>
553<col width="150px" class="parameters_name">
554<col class="parameters_description">
555<col width="200px" class="parameters_annotations">
556</colgroup>
557<tbody>
558<tr>
559<td class="parameter_name"><p>convert</p></td>
560<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverter" title="GstAudioConverter"><span class="type">GstAudioConverter</span></a></p></td>
561<td class="parameter_annotations"> </td>
562</tr>
563<tr>
564<td class="parameter_name"><p>in_rate</p></td>
565<td class="parameter_description"><p>input rate</p></td>
566<td class="parameter_annotations"> </td>
567</tr>
568<tr>
569<td class="parameter_name"><p>out_rate</p></td>
570<td class="parameter_description"><p>output rate</p></td>
571<td class="parameter_annotations"> </td>
572</tr>
573<tr>
574<td class="parameter_name"><p>config</p></td>
575<td class="parameter_description"><p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstStructure.html#GstStructure-struct"><span class="type">GstStructure</span></a> or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. </p></td>
576<td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
577</tr>
578</tbody>
579</table></div>
580</div>
581<div class="refsect3">
582<a name="gst-audio-converter-update-config.returns"></a><h4>Returns</h4>
583<p> <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when the new parameters could be set</p>
584</div>
585</div>
586<hr>
587<div class="refsect2">
588<a name="gst-audio-converter-get-config"></a><h3>gst_audio_converter_get_config ()</h3>
589<pre class="programlisting">const <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstStructure.html#GstStructure-struct"><span class="returnvalue">GstStructure</span></a> *
590gst_audio_converter_get_config (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverter" title="GstAudioConverter"><span class="type">GstAudioConverter</span></a> *convert</code></em>,
591                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *in_rate</code></em>,
592                                <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> *out_rate</code></em>);</pre>
593<p>Get the current configuration of <em class="parameter"><code>convert</code></em>
594.</p>
595<div class="refsect3">
596<a name="gst-audio-converter-get-config.parameters"></a><h4>Parameters</h4>
597<div class="informaltable"><table class="informaltable" width="100%" border="0">
598<colgroup>
599<col width="150px" class="parameters_name">
600<col class="parameters_description">
601<col width="200px" class="parameters_annotations">
602</colgroup>
603<tbody>
604<tr>
605<td class="parameter_name"><p>convert</p></td>
606<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverter" title="GstAudioConverter"><span class="type">GstAudioConverter</span></a></p></td>
607<td class="parameter_annotations"> </td>
608</tr>
609<tr>
610<td class="parameter_name"><p>in_rate</p></td>
611<td class="parameter_description"><p>result input rate. </p></td>
612<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL may be passed instead of a pointer to a location."><span class="acronym">optional</span></acronym>]</span></td>
613</tr>
614<tr>
615<td class="parameter_name"><p>out_rate</p></td>
616<td class="parameter_description"><p>result output rate. </p></td>
617<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL may be passed instead of a pointer to a location."><span class="acronym">optional</span></acronym>]</span></td>
618</tr>
619</tbody>
620</table></div>
621</div>
622<div class="refsect3">
623<a name="gst-audio-converter-get-config.returns"></a><h4>Returns</h4>
624<p>a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstStructure.html#GstStructure-struct"><span class="type">GstStructure</span></a> that remains valid for as long as <em class="parameter"><code>convert</code></em>
625is valid
626or until <a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#gst-audio-converter-update-config" title="gst_audio_converter_update_config ()"><code class="function">gst_audio_converter_update_config()</code></a> is called. </p>
627<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
628</div>
629</div>
630<hr>
631<div class="refsect2">
632<a name="gst-audio-converter-reset"></a><h3>gst_audio_converter_reset ()</h3>
633<pre class="programlisting"><span class="returnvalue">void</span>
634gst_audio_converter_reset (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverter" title="GstAudioConverter"><span class="type">GstAudioConverter</span></a> *convert</code></em>);</pre>
635<p>Reset <em class="parameter"><code>convert</code></em>
636 to the state it was when it was first created, clearing
637any history it might currently have.</p>
638<div class="refsect3">
639<a name="gst-audio-converter-reset.parameters"></a><h4>Parameters</h4>
640<div class="informaltable"><table class="informaltable" width="100%" border="0">
641<colgroup>
642<col width="150px" class="parameters_name">
643<col class="parameters_description">
644<col width="200px" class="parameters_annotations">
645</colgroup>
646<tbody><tr>
647<td class="parameter_name"><p>convert</p></td>
648<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverter" title="GstAudioConverter"><span class="type">GstAudioConverter</span></a></p></td>
649<td class="parameter_annotations"> </td>
650</tr></tbody>
651</table></div>
652</div>
653</div>
654<hr>
655<div class="refsect2">
656<a name="gst-audio-converter-supports-inplace"></a><h3>gst_audio_converter_supports_inplace ()</h3>
657<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
658gst_audio_converter_supports_inplace (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverter" title="GstAudioConverter"><span class="type">GstAudioConverter</span></a> *convert</code></em>);</pre>
659<p>Returns whether the audio converter can perform the conversion in-place.
660The return value would be typically input to <a href="/usr/share/gtk-doc/html/gstreamer-libs-1.0/GstBaseTransform.html#gst-base-transform-set-in-place"><code class="function">gst_base_transform_set_in_place()</code></a></p>
661<div class="refsect3">
662<a name="gst-audio-converter-supports-inplace.parameters"></a><h4>Parameters</h4>
663<div class="informaltable"><table class="informaltable" width="100%" border="0">
664<colgroup>
665<col width="150px" class="parameters_name">
666<col class="parameters_description">
667<col width="200px" class="parameters_annotations">
668</colgroup>
669<tbody><tr>
670<td class="parameter_name"><p>convert</p></td>
671<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverter" title="GstAudioConverter"><span class="type">GstAudioConverter</span></a></p></td>
672<td class="parameter_annotations"> </td>
673</tr></tbody>
674</table></div>
675</div>
676<div class="refsect3">
677<a name="gst-audio-converter-supports-inplace.returns"></a><h4>Returns</h4>
678<p> <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when the conversion can be done in place.</p>
679</div>
680</div>
681<hr>
682<div class="refsect2">
683<a name="gst-audio-converter-is-passthrough"></a><h3>gst_audio_converter_is_passthrough ()</h3>
684<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
685gst_audio_converter_is_passthrough (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#GstAudioConverter" title="GstAudioConverter"><span class="type">GstAudioConverter</span></a> *convert</code></em>);</pre>
686<p>Returns whether the audio converter will operate in passthrough mode.
687The return value would be typically input to <a href="/usr/share/gtk-doc/html/gstreamer-libs-1.0/GstBaseTransform.html#gst-base-transform-set-passthrough"><code class="function">gst_base_transform_set_passthrough()</code></a></p>
688<div class="refsect3">
689<a name="gst-audio-converter-is-passthrough.returns"></a><h4>Returns</h4>
690<p> <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when no conversion will actually occur.</p>
691</div>
692<p class="since">Since: <a class="link" href="ix03.html#api-index-1.16">1.16</a></p>
693</div>
694</div>
695<div class="refsect1">
696<a name="gst-plugins-base-libs-GstAudioConverter.other_details"></a><h2>Types and Values</h2>
697<div class="refsect2">
698<a name="GstAudioConverter"></a><h3>GstAudioConverter</h3>
699<pre class="programlisting">typedef struct _GstAudioConverter GstAudioConverter;</pre>
700</div>
701<hr>
702<div class="refsect2">
703<a name="GstAudioConverterFlags"></a><h3>enum GstAudioConverterFlags</h3>
704<p>Extra flags passed to <a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#gst-audio-converter-new" title="gst_audio_converter_new ()"><code class="function">gst_audio_converter_new()</code></a> and <a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#gst-audio-converter-samples" title="gst_audio_converter_samples ()"><code class="function">gst_audio_converter_samples()</code></a>.</p>
705<div class="refsect3">
706<a name="GstAudioConverterFlags.members"></a><h4>Members</h4>
707<div class="informaltable"><table class="informaltable" width="100%" border="0">
708<colgroup>
709<col width="300px" class="enum_members_name">
710<col class="enum_members_description">
711<col width="200px" class="enum_members_annotations">
712</colgroup>
713<tbody>
714<tr>
715<td class="enum_member_name"><p><a name="GST-AUDIO-CONVERTER-FLAG-NONE:CAPS"></a>GST_AUDIO_CONVERTER_FLAG_NONE</p></td>
716<td class="enum_member_description">
717<p>no flag</p>
718</td>
719<td class="enum_member_annotations"> </td>
720</tr>
721<tr>
722<td class="enum_member_name"><p><a name="GST-AUDIO-CONVERTER-FLAG-IN-WRITABLE:CAPS"></a>GST_AUDIO_CONVERTER_FLAG_IN_WRITABLE</p></td>
723<td class="enum_member_description">
724<p>the input sample arrays are writable and can be
725   used as temporary storage during conversion.</p>
726</td>
727<td class="enum_member_annotations"> </td>
728</tr>
729<tr>
730<td class="enum_member_name"><p><a name="GST-AUDIO-CONVERTER-FLAG-VARIABLE-RATE:CAPS"></a>GST_AUDIO_CONVERTER_FLAG_VARIABLE_RATE</p></td>
731<td class="enum_member_description">
732<p>allow arbitrary rate updates with
733   <a class="link" href="gst-plugins-base-libs-GstAudioConverter.html#gst-audio-converter-update-config" title="gst_audio_converter_update_config ()"><code class="function">gst_audio_converter_update_config()</code></a>.</p>
734</td>
735<td class="enum_member_annotations"> </td>
736</tr>
737</tbody>
738</table></div>
739</div>
740</div>
741<hr>
742<div class="refsect2">
743<a name="GST-AUDIO-CONVERTER-OPT-DITHER-METHOD:CAPS"></a><h3>GST_AUDIO_CONVERTER_OPT_DITHER_METHOD</h3>
744<pre class="programlisting">#define GST_AUDIO_CONVERTER_OPT_DITHER_METHOD   "GstAudioConverter.dither-method"
745</pre>
746<p><span class="type">GST_TYPE_AUDIO_DITHER_METHOD</span>, The dither method to use when
747changing bit depth.
748Default is <a class="link" href="gst-plugins-base-libs-GstAudioQuantize.html#GST-AUDIO-DITHER-NONE:CAPS"><span class="type">GST_AUDIO_DITHER_NONE</span></a>.</p>
749</div>
750<hr>
751<div class="refsect2">
752<a name="GST-AUDIO-CONVERTER-OPT-NOISE-SHAPING-METHOD:CAPS"></a><h3>GST_AUDIO_CONVERTER_OPT_NOISE_SHAPING_METHOD</h3>
753<pre class="programlisting">#define GST_AUDIO_CONVERTER_OPT_NOISE_SHAPING_METHOD   "GstAudioConverter.noise-shaping-method"
754</pre>
755<p><span class="type">GST_TYPE_AUDIO_NOISE_SHAPING_METHOD</span>, The noise shaping method to use
756to mask noise from quantization errors.
757Default is <a class="link" href="gst-plugins-base-libs-GstAudioQuantize.html#GST-AUDIO-NOISE-SHAPING-NONE:CAPS"><span class="type">GST_AUDIO_NOISE_SHAPING_NONE</span></a>.</p>
758</div>
759<hr>
760<div class="refsect2">
761<a name="GST-AUDIO-CONVERTER-OPT-QUANTIZATION:CAPS"></a><h3>GST_AUDIO_CONVERTER_OPT_QUANTIZATION</h3>
762<pre class="programlisting">#define GST_AUDIO_CONVERTER_OPT_QUANTIZATION   "GstAudioConverter.quantization"
763</pre>
764<p><a href="/usr/share/gtk-doc/html/gobject/gobject-Type-Information.html#G-TYPE-UINT:CAPS"><span class="type">G_TYPE_UINT</span></a>, The quantization amount. Components will be
765quantized to multiples of this value.
766Default is 1</p>
767</div>
768<hr>
769<div class="refsect2">
770<a name="GST-AUDIO-CONVERTER-OPT-MIX-MATRIX:CAPS"></a><h3>GST_AUDIO_CONVERTER_OPT_MIX_MATRIX</h3>
771<pre class="programlisting">#define GST_AUDIO_CONVERTER_OPT_MIX_MATRIX   "GstAudioConverter.mix-matrix"
772</pre>
773<p><span class="type">GST_TYPE_VALUE_LIST</span>, The channel mapping matrix.</p>
774<p>The matrix coefficients must be between -1 and 1: the number of rows is equal
775to the number of output channels and the number of columns is equal to the
776number of input channels.</p>
777<div class="refsect3">
778<a name="id-1.2.6.16.8.7.6"></a><h4>Example matrix generation code</h4>
779<p>To generate the matrix using code:</p>
780<div class="informalexample">
781  <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
782    <tbody>
783      <tr>
784        <td class="listing_lines" align="right"><pre>1
7852
7863
7874
7885
7896
7907
7918
7929
79310
79411
79512
79613
79714
79815
79916</pre></td>
800        <td class="listing_code"><pre class="programlisting">GValue v <span class="gtkdoc opt">=</span> G_VALUE_INIT<span class="gtkdoc opt">;</span>
801GValue v2 <span class="gtkdoc opt">=</span> G_VALUE_INIT<span class="gtkdoc opt">;</span>
802GValue v3 <span class="gtkdoc opt">=</span> G_VALUE_INIT<span class="gtkdoc opt">;</span>
803
804<span class="function"><a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#g-value-init">g_value_init</a></span> <span class="gtkdoc opt">(&amp;</span>v2<span class="gtkdoc opt">,</span> GST_TYPE_ARRAY<span class="gtkdoc opt">);</span>
805<span class="function"><a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#g-value-init">g_value_init</a></span> <span class="gtkdoc opt">(&amp;</span>v3<span class="gtkdoc opt">,</span> G_TYPE_DOUBLE<span class="gtkdoc opt">);</span>
806<span class="function"><a href="/usr/share/gtk-doc/html/gobject/gobject-Standard-Parameter-and-Value-Types.html#g-value-set-double">g_value_set_double</a></span> <span class="gtkdoc opt">(&amp;</span>v3<span class="gtkdoc opt">,</span> <span class="number">1</span><span class="gtkdoc opt">);</span>
807<span class="function"><a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstValue.html#gst-value-array-append-value">gst_value_array_append_value</a></span> <span class="gtkdoc opt">(&amp;</span>v2<span class="gtkdoc opt">, &amp;</span>v3<span class="gtkdoc opt">);</span>
808<span class="function"><a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#g-value-unset">g_value_unset</a></span> <span class="gtkdoc opt">(&amp;</span>v3<span class="gtkdoc opt">);</span>
809<span class="gtkdoc opt">[</span> Repeat <span class="keyword">for</span> as many <span class="gtkdoc kwb">double</span> as your input channels <span class="gtkdoc opt">-</span> unset <span class="keyword">and</span> reinit v3 <span class="gtkdoc opt">]</span>
810<span class="function"><a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#g-value-init">g_value_init</a></span> <span class="gtkdoc opt">(&amp;</span>v<span class="gtkdoc opt">,</span> GST_TYPE_ARRAY<span class="gtkdoc opt">);</span>
811<span class="function"><a href="/usr/share/gtk-doc/html/gstreamer-1.0/gstreamer-GstValue.html#gst-value-array-append-value">gst_value_array_append_value</a></span> <span class="gtkdoc opt">(&amp;</span>v<span class="gtkdoc opt">, &amp;</span>v2<span class="gtkdoc opt">);</span>
812<span class="function"><a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#g-value-unset">g_value_unset</a></span> <span class="gtkdoc opt">(&amp;</span>v2<span class="gtkdoc opt">);</span>
813<span class="gtkdoc opt">[</span> Repeat <span class="keyword">for</span> as many v2<span class="string">&apos;s as your output channels - unset and reinit v2]</span>
814<span class="string">g_object_set_property (G_OBJECT (audiomixmatrix), &quot;matrix&quot;, &amp;v);</span>
815<span class="string">g_value_unset (&amp;v);</span></pre></td>
816      </tr>
817    </tbody>
818  </table>
819</div>
820
821<p></p>
822</div>
823</div>
824<hr>
825<div class="refsect2">
826<a name="GST-AUDIO-CONVERTER-OPT-RESAMPLER-METHOD:CAPS"></a><h3>GST_AUDIO_CONVERTER_OPT_RESAMPLER_METHOD</h3>
827<pre class="programlisting">#define GST_AUDIO_CONVERTER_OPT_RESAMPLER_METHOD   "GstAudioConverter.resampler-method"
828</pre>
829<p><span class="type">GST_TYPE_AUDIO_RESAMPLER_METHOD</span>, The resampler method to use when
830changing sample rates.
831Default is <a class="link" href="gst-plugins-base-libs-GstAudio.html#GST-AUDIO-RESAMPLER-METHOD-BLACKMAN-NUTTALL:CAPS"><span class="type">GST_AUDIO_RESAMPLER_METHOD_BLACKMAN_NUTTALL</span></a>.</p>
832</div>
833</div>
834</div>
835<div class="footer">
836<hr>Generated by GTK-Doc V1.28</div>
837</body>
838</html>