~sipe-collab/sipe-collab/gstreamer-plugins-base

« back to all changes in this revision

Viewing changes to docs/libs/html/gst-plugins-base-libs-gstffts16.html

  • Committer: Sebastian Dröge
  • Date: 2014-04-19 13:47:47 UTC
  • mfrom: (1.1.23)
  • Revision ID: git-v1:d06393f82dba0d5f13ec2e66275d75cf8178fe5c
Merge tag 'upstream/1.2.4'

Upstream version 1.2.4

Show diffs side-by-side

added added

removed removed

Lines of Context:
2
2
<html>
3
3
<head>
4
4
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5
 
<title>gstffts16</title>
 
5
<title>GStreamer Base Plugins 1.0 Library Reference Manual: gstffts16</title>
6
6
<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
7
7
<link rel="home" href="index.html" title="GStreamer Base Plugins 1.0 Library Reference Manual">
8
8
<link rel="up" href="gstreamer-ffft.html" title="FFT Library">
9
9
<link rel="prev" href="gst-plugins-base-libs-gstfft.html" title="gstfft">
10
10
<link rel="next" href="gst-plugins-base-libs-gstffts32.html" title="gstffts32">
11
 
<meta name="generator" content="GTK-Doc V1.19 (XML mode)">
 
11
<meta name="generator" content="GTK-Doc V1.20 (XML mode)">
12
12
<link rel="stylesheet" href="style.css" type="text/css">
13
13
</head>
14
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-base-libs-gstfft.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
18
 
<td><a accesskey="u" href="gstreamer-ffft.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 Base Plugins 1.0 Library Reference Manual</th>
21
 
<td><a accesskey="n" href="gst-plugins-base-libs-gstffts32.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-base-libs-gstffts16.synopsis" class="shortcut">Top</a>
25
 
                   | 
26
 
                  <a href="#gst-plugins-base-libs-gstffts16.description" class="shortcut">Description</a>
27
 
</td></tr>
28
 
</table>
 
15
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="10"><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="#gst-plugins-base-libs-gstffts16.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 
 
19
                  <a href="#gst-plugins-base-libs-gstffts16.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-ffft.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
 
23
<td><a accesskey="p" href="gst-plugins-base-libs-gstfft.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
 
24
<td><a accesskey="n" href="gst-plugins-base-libs-gstffts32.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
 
25
</tr></table>
29
26
<div class="refentry">
30
27
<a name="gst-plugins-base-libs-gstffts16"></a><div class="titlepage"></div>
31
28
<div class="refnamediv"><table width="100%"><tr>
33
30
<h2><span class="refentrytitle"><a name="gst-plugins-base-libs-gstffts16.top_of_page"></a>gstffts16</span></h2>
34
31
<p>gstffts16 — FFT functions for signed 16 bit integer samples</p>
35
32
</td>
36
 
<td valign="top" align="right"></td>
 
33
<td class="gallery_image" valign="top" align="right"></td>
37
34
</tr></table></div>
38
 
<div class="refsynopsisdiv">
39
 
<a name="gst-plugins-base-libs-gstffts16.synopsis"></a><h2>Synopsis</h2>
40
 
<pre class="synopsis">
41
 
#include &lt;gst/fft/gstffts16.h&gt;
42
 
 
43
 
                    <a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16">GstFFTS16</a>;
44
 
struct              <a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16Complex" title="struct GstFFTS16Complex">GstFFTS16Complex</a>;
45
 
<a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="returnvalue">GstFFTS16</span></a> *         <a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-new" title="gst_fft_s16_new ()">gst_fft_s16_new</a>                     (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> len</code></em>,
46
 
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> inverse</code></em>);
47
 
<span class="returnvalue">void</span>                <a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-fft" title="gst_fft_s16_fft ()">gst_fft_s16_fft</a>                     (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> *self</code></em>,
48
 
                                                         <em class="parameter"><code>const <span class="type">gint16</span> *timedata</code></em>,
49
 
                                                         <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16Complex" title="struct GstFFTS16Complex"><span class="type">GstFFTS16Complex</span></a> *freqdata</code></em>);
50
 
<span class="returnvalue">void</span>                <a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-inverse-fft" title="gst_fft_s16_inverse_fft ()">gst_fft_s16_inverse_fft</a>             (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> *self</code></em>,
51
 
                                                         <em class="parameter"><code>const <a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16Complex" title="struct GstFFTS16Complex"><span class="type">GstFFTS16Complex</span></a> *freqdata</code></em>,
52
 
                                                         <em class="parameter"><code><span class="type">gint16</span> *timedata</code></em>);
53
 
<span class="returnvalue">void</span>                <a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-window" title="gst_fft_s16_window ()">gst_fft_s16_window</a>                  (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> *self</code></em>,
54
 
                                                         <em class="parameter"><code><span class="type">gint16</span> *timedata</code></em>,
55
 
                                                         <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstfft.html#GstFFTWindow" title="enum GstFFTWindow"><span class="type">GstFFTWindow</span></a> window</code></em>);
56
 
<span class="returnvalue">void</span>                <a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-free" title="gst_fft_s16_free ()">gst_fft_s16_free</a>                    (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> *self</code></em>);
 
35
<div class="refsect1">
 
36
<a name="gst-plugins-base-libs-gstffts16.functions"></a><h2>Functions</h2>
 
37
<div class="informaltable"><table width="100%" border="0">
 
38
<colgroup>
 
39
<col width="150px" class="functions_return">
 
40
<col class="functions_name">
 
41
</colgroup>
 
42
<tbody>
 
43
<tr>
 
44
<td class="function_type">
 
45
<a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="returnvalue">GstFFTS16</span></a> *
 
46
</td>
 
47
<td class="function_name">
 
48
<a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-new" title="gst_fft_s16_new ()">gst_fft_s16_new</a> <span class="c_punctuation">()</span>
 
49
</td>
 
50
</tr>
 
51
<tr>
 
52
<td class="function_type">
 
53
<span class="returnvalue">void</span>
 
54
</td>
 
55
<td class="function_name">
 
56
<a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-fft" title="gst_fft_s16_fft ()">gst_fft_s16_fft</a> <span class="c_punctuation">()</span>
 
57
</td>
 
58
</tr>
 
59
<tr>
 
60
<td class="function_type">
 
61
<span class="returnvalue">void</span>
 
62
</td>
 
63
<td class="function_name">
 
64
<a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-inverse-fft" title="gst_fft_s16_inverse_fft ()">gst_fft_s16_inverse_fft</a> <span class="c_punctuation">()</span>
 
65
</td>
 
66
</tr>
 
67
<tr>
 
68
<td class="function_type">
 
69
<span class="returnvalue">void</span>
 
70
</td>
 
71
<td class="function_name">
 
72
<a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-window" title="gst_fft_s16_window ()">gst_fft_s16_window</a> <span class="c_punctuation">()</span>
 
73
</td>
 
74
</tr>
 
75
<tr>
 
76
<td class="function_type">
 
77
<span class="returnvalue">void</span>
 
78
</td>
 
79
<td class="function_name">
 
80
<a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-free" title="gst_fft_s16_free ()">gst_fft_s16_free</a> <span class="c_punctuation">()</span>
 
81
</td>
 
82
</tr>
 
83
</tbody>
 
84
</table></div>
 
85
</div>
 
86
<div class="refsect1">
 
87
<a name="gst-plugins-base-libs-gstffts16.other"></a><h2>Types and Values</h2>
 
88
<div class="informaltable"><table width="100%" border="0">
 
89
<colgroup>
 
90
<col width="150px" class="name">
 
91
<col class="description">
 
92
</colgroup>
 
93
<tbody>
 
94
<tr>
 
95
<td class="datatype_keyword"> </td>
 
96
<td class="function_name"><a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16">GstFFTS16</a></td>
 
97
</tr>
 
98
<tr>
 
99
<td class="datatype_keyword">struct</td>
 
100
<td class="function_name"><a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16Complex" title="struct GstFFTS16Complex">GstFFTS16Complex</a></td>
 
101
</tr>
 
102
</tbody>
 
103
</table></div>
 
104
</div>
 
105
<div class="refsect1">
 
106
<a name="gst-plugins-base-libs-gstffts16.object-hierarchy"></a><h2>Object Hierarchy</h2>
 
107
<pre class="screen">
 
108
</pre>
 
109
</div>
 
110
<div class="refsect1">
 
111
<a name="gst-plugins-base-libs-gstffts16.includes"></a><h2>Includes</h2>
 
112
<pre class="synopsis">#include &lt;gst/fft/gstffts16.h&gt;
57
113
</pre>
58
114
</div>
59
115
<div class="refsect1">
60
116
<a name="gst-plugins-base-libs-gstffts16.description"></a><h2>Description</h2>
61
 
<p>
62
 
<a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> provides a FFT implementation and related functions for
63
 
signed 16 bit integer samples. To use this call <a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-new" title="gst_fft_s16_new ()"><code class="function">gst_fft_s16_new()</code></a> for
 
117
<p><a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> provides a FFT implementation and related functions for
 
118
signed 16 bit integer samples. To use this call <a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-new" title="gst_fft_s16_new ()"><code class="function">gst_fft_s16_new()</code></a> for
64
119
allocating a <a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> instance with the appropriate parameters and
65
 
then call <a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-fft" title="gst_fft_s16_fft ()"><code class="function">gst_fft_s16_fft()</code></a> or <a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-inverse-fft" title="gst_fft_s16_inverse_fft ()"><code class="function">gst_fft_s16_inverse_fft()</code></a> to perform the
66
 
FFT or inverse FFT on a buffer of samples.
67
 
</p>
68
 
<p>
69
 
After use free the <a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> instance with <a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-free" title="gst_fft_s16_free ()"><code class="function">gst_fft_s16_free()</code></a>.
70
 
</p>
71
 
<p>
72
 
For the best performance use <a class="link" href="gst-plugins-base-libs-gstfft.html#gst-fft-next-fast-length" title="gst_fft_next_fast_length ()"><code class="function">gst_fft_next_fast_length()</code></a> to get a
 
120
then call <a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-fft" title="gst_fft_s16_fft ()"><code class="function">gst_fft_s16_fft()</code></a> or <a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-inverse-fft" title="gst_fft_s16_inverse_fft ()"><code class="function">gst_fft_s16_inverse_fft()</code></a> to perform the
 
121
FFT or inverse FFT on a buffer of samples.</p>
 
122
<p>After use free the <a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> instance with <a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-free" title="gst_fft_s16_free ()"><code class="function">gst_fft_s16_free()</code></a>.</p>
 
123
<p>For the best performance use <a class="link" href="gst-plugins-base-libs-gstfft.html#gst-fft-next-fast-length" title="gst_fft_next_fast_length ()"><code class="function">gst_fft_next_fast_length()</code></a> to get a
73
124
number that is entirely a product of 2, 3 and 5 and use this as the
74
 
<em class="parameter"><code>len</code></em> parameter for <a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-new" title="gst_fft_s16_new ()"><code class="function">gst_fft_s16_new()</code></a>.
75
 
</p>
76
 
<p>
77
 
The <em class="parameter"><code>len</code></em> parameter specifies the number of samples in the time domain that
 
125
<em class="parameter"><code>len</code></em>
 
126
 parameter for <a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-new" title="gst_fft_s16_new ()"><code class="function">gst_fft_s16_new()</code></a>.</p>
 
127
<p>The <em class="parameter"><code>len</code></em>
 
128
 parameter specifies the number of samples in the time domain that
78
129
will be processed or generated. The number of samples in the frequency domain
79
 
is <em class="parameter"><code>len</code></em>/2 + 1. To get n samples in the frequency domain use 2*n - 2 as <em class="parameter"><code>len</code></em>.
80
 
</p>
81
 
<p>
82
 
Before performing the FFT on time domain data it usually makes sense
83
 
to apply a window function to it. For this <a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-window" title="gst_fft_s16_window ()"><code class="function">gst_fft_s16_window()</code></a> can comfortably
84
 
be used.
85
 
</p>
86
 
<p>
87
 
Be aware, that you can't simply run <a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-inverse-fft" title="gst_fft_s16_inverse_fft ()"><code class="function">gst_fft_s16_inverse_fft()</code></a> on the
88
 
resulting frequency data of <a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-fft" title="gst_fft_s16_fft ()"><code class="function">gst_fft_s16_fft()</code></a> to get the original data back.
 
130
is <em class="parameter"><code>len</code></em>
 
131
/2 + 1. To get n samples in the frequency domain use 2*n - 2 as <em class="parameter"><code>len</code></em>
 
132
.</p>
 
133
<p>Before performing the FFT on time domain data it usually makes sense
 
134
to apply a window function to it. For this <a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-window" title="gst_fft_s16_window ()"><code class="function">gst_fft_s16_window()</code></a> can comfortably
 
135
be used.</p>
 
136
<p>Be aware, that you can't simply run <a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-inverse-fft" title="gst_fft_s16_inverse_fft ()"><code class="function">gst_fft_s16_inverse_fft()</code></a> on the
 
137
resulting frequency data of <a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-fft" title="gst_fft_s16_fft ()"><code class="function">gst_fft_s16_fft()</code></a> to get the original data back.
89
138
The relation between them is iFFT (FFT (x)) = x / nfft where nfft is the
90
139
length of the FFT. This also has to be taken into account when calculation
91
 
the magnitude of the frequency data.
92
 
</p>
93
 
</div>
94
 
<div class="refsect1">
95
 
<a name="gst-plugins-base-libs-gstffts16.details"></a><h2>Details</h2>
 
140
the magnitude of the frequency data.</p>
 
141
</div>
 
142
<div class="refsect1">
 
143
<a name="gst-plugins-base-libs-gstffts16.functions_details"></a><h2>Functions</h2>
 
144
<div class="refsect2">
 
145
<a name="gst-fft-s16-new"></a><h3>gst_fft_s16_new ()</h3>
 
146
<pre class="programlisting"><a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="returnvalue">GstFFTS16</span></a> *
 
147
gst_fft_s16_new (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> len</code></em>,
 
148
                 <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> inverse</code></em>);</pre>
 
149
<p>This returns a new <a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> instance with the given parameters. It makes
 
150
sense to keep one instance for several calls for speed reasons.</p>
 
151
<p><em class="parameter"><code>len</code></em>
 
152
 must be even and to get the best performance a product of
 
153
2, 3 and 5. To get the next number with this characteristics use
 
154
<a class="link" href="gst-plugins-base-libs-gstfft.html#gst-fft-next-fast-length" title="gst_fft_next_fast_length ()"><code class="function">gst_fft_next_fast_length()</code></a>.</p>
 
155
<div class="refsect3">
 
156
<a name="id-1.2.7.5.8.2.6"></a><h4>Parameters</h4>
 
157
<div class="informaltable"><table width="100%" border="0">
 
158
<colgroup>
 
159
<col width="150px" class="parameters_name">
 
160
<col class="parameters_description">
 
161
<col width="200px" class="parameters_annotations">
 
162
</colgroup>
 
163
<tbody>
 
164
<tr>
 
165
<td class="parameter_name"><p>len</p></td>
 
166
<td class="parameter_description"><p>Length of the FFT in the time domain</p></td>
 
167
<td class="parameter_annotations"> </td>
 
168
</tr>
 
169
<tr>
 
170
<td class="parameter_name"><p>inverse</p></td>
 
171
<td class="parameter_description"><p><a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the <a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> instance should be used for the inverse FFT</p></td>
 
172
<td class="parameter_annotations"> </td>
 
173
</tr>
 
174
</tbody>
 
175
</table></div>
 
176
</div>
 
177
<div class="refsect3">
 
178
<a name="id-1.2.7.5.8.2.7"></a><h4>Returns</h4>
 
179
<p> a new <a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> instance.</p>
 
180
<p></p>
 
181
</div>
 
182
</div>
 
183
<hr>
 
184
<div class="refsect2">
 
185
<a name="gst-fft-s16-fft"></a><h3>gst_fft_s16_fft ()</h3>
 
186
<pre class="programlisting"><span class="returnvalue">void</span>
 
187
gst_fft_s16_fft (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> *self</code></em>,
 
188
                 <em class="parameter"><code>const <span class="type">gint16</span> *timedata</code></em>,
 
189
                 <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16Complex" title="struct GstFFTS16Complex"><span class="type">GstFFTS16Complex</span></a> *freqdata</code></em>);</pre>
 
190
<p>This performs the FFT on <em class="parameter"><code>timedata</code></em>
 
191
 and puts the result in <em class="parameter"><code>freqdata</code></em>
 
192
.</p>
 
193
<p><em class="parameter"><code>timedata</code></em>
 
194
 must have as many samples as specified with the <em class="parameter"><code>len</code></em>
 
195
 parameter while
 
196
allocating the <a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> instance with <a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-new" title="gst_fft_s16_new ()"><code class="function">gst_fft_s16_new()</code></a>.</p>
 
197
<p><em class="parameter"><code>freqdata</code></em>
 
198
 must be large enough to hold <em class="parameter"><code>len</code></em>
 
199
/2 + 1 <a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16Complex" title="struct GstFFTS16Complex"><span class="type">GstFFTS16Complex</span></a> frequency
 
200
domain samples.</p>
 
201
<div class="refsect3">
 
202
<a name="id-1.2.7.5.8.3.7"></a><h4>Parameters</h4>
 
203
<div class="informaltable"><table width="100%" border="0">
 
204
<colgroup>
 
205
<col width="150px" class="parameters_name">
 
206
<col class="parameters_description">
 
207
<col width="200px" class="parameters_annotations">
 
208
</colgroup>
 
209
<tbody>
 
210
<tr>
 
211
<td class="parameter_name"><p>self</p></td>
 
212
<td class="parameter_description"><p><a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> instance for this call</p></td>
 
213
<td class="parameter_annotations"> </td>
 
214
</tr>
 
215
<tr>
 
216
<td class="parameter_name"><p>timedata</p></td>
 
217
<td class="parameter_description"><p>Buffer of the samples in the time domain</p></td>
 
218
<td class="parameter_annotations"> </td>
 
219
</tr>
 
220
<tr>
 
221
<td class="parameter_name"><p>freqdata</p></td>
 
222
<td class="parameter_description"><p>Target buffer for the samples in the frequency domain</p></td>
 
223
<td class="parameter_annotations"> </td>
 
224
</tr>
 
225
</tbody>
 
226
</table></div>
 
227
</div>
 
228
</div>
 
229
<hr>
 
230
<div class="refsect2">
 
231
<a name="gst-fft-s16-inverse-fft"></a><h3>gst_fft_s16_inverse_fft ()</h3>
 
232
<pre class="programlisting"><span class="returnvalue">void</span>
 
233
gst_fft_s16_inverse_fft (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> *self</code></em>,
 
234
                         <em class="parameter"><code>const <a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16Complex" title="struct GstFFTS16Complex"><span class="type">GstFFTS16Complex</span></a> *freqdata</code></em>,
 
235
                         <em class="parameter"><code><span class="type">gint16</span> *timedata</code></em>);</pre>
 
236
<p>This performs the inverse FFT on <em class="parameter"><code>freqdata</code></em>
 
237
 and puts the result in <em class="parameter"><code>timedata</code></em>
 
238
.</p>
 
239
<p><em class="parameter"><code>freqdata</code></em>
 
240
 must have <em class="parameter"><code>len</code></em>
 
241
/2 + 1 samples, where <em class="parameter"><code>len</code></em>
 
242
 is the parameter specified
 
243
while allocating the <a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> instance with <a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-new" title="gst_fft_s16_new ()"><code class="function">gst_fft_s16_new()</code></a>.</p>
 
244
<p><em class="parameter"><code>timedata</code></em>
 
245
 must be large enough to hold <em class="parameter"><code>len</code></em>
 
246
 time domain samples.</p>
 
247
<div class="refsect3">
 
248
<a name="id-1.2.7.5.8.4.7"></a><h4>Parameters</h4>
 
249
<div class="informaltable"><table width="100%" border="0">
 
250
<colgroup>
 
251
<col width="150px" class="parameters_name">
 
252
<col class="parameters_description">
 
253
<col width="200px" class="parameters_annotations">
 
254
</colgroup>
 
255
<tbody>
 
256
<tr>
 
257
<td class="parameter_name"><p>self</p></td>
 
258
<td class="parameter_description"><p><a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> instance for this call</p></td>
 
259
<td class="parameter_annotations"> </td>
 
260
</tr>
 
261
<tr>
 
262
<td class="parameter_name"><p>freqdata</p></td>
 
263
<td class="parameter_description"><p>Buffer of the samples in the frequency domain</p></td>
 
264
<td class="parameter_annotations"> </td>
 
265
</tr>
 
266
<tr>
 
267
<td class="parameter_name"><p>timedata</p></td>
 
268
<td class="parameter_description"><p>Target buffer for the samples in the time domain</p></td>
 
269
<td class="parameter_annotations"> </td>
 
270
</tr>
 
271
</tbody>
 
272
</table></div>
 
273
</div>
 
274
</div>
 
275
<hr>
 
276
<div class="refsect2">
 
277
<a name="gst-fft-s16-window"></a><h3>gst_fft_s16_window ()</h3>
 
278
<pre class="programlisting"><span class="returnvalue">void</span>
 
279
gst_fft_s16_window (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> *self</code></em>,
 
280
                    <em class="parameter"><code><span class="type">gint16</span> *timedata</code></em>,
 
281
                    <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstfft.html#GstFFTWindow" title="enum GstFFTWindow"><span class="type">GstFFTWindow</span></a> window</code></em>);</pre>
 
282
<p>This calls the window function <em class="parameter"><code>window</code></em>
 
283
 on the <em class="parameter"><code>timedata</code></em>
 
284
 sample buffer.</p>
 
285
<div class="refsect3">
 
286
<a name="id-1.2.7.5.8.5.5"></a><h4>Parameters</h4>
 
287
<div class="informaltable"><table width="100%" border="0">
 
288
<colgroup>
 
289
<col width="150px" class="parameters_name">
 
290
<col class="parameters_description">
 
291
<col width="200px" class="parameters_annotations">
 
292
</colgroup>
 
293
<tbody>
 
294
<tr>
 
295
<td class="parameter_name"><p>self</p></td>
 
296
<td class="parameter_description"><p><a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> instance for this call</p></td>
 
297
<td class="parameter_annotations"> </td>
 
298
</tr>
 
299
<tr>
 
300
<td class="parameter_name"><p>timedata</p></td>
 
301
<td class="parameter_description"><p>Time domain samples</p></td>
 
302
<td class="parameter_annotations"> </td>
 
303
</tr>
 
304
<tr>
 
305
<td class="parameter_name"><p>window</p></td>
 
306
<td class="parameter_description"><p>Window function to apply</p></td>
 
307
<td class="parameter_annotations"> </td>
 
308
</tr>
 
309
</tbody>
 
310
</table></div>
 
311
</div>
 
312
</div>
 
313
<hr>
 
314
<div class="refsect2">
 
315
<a name="gst-fft-s16-free"></a><h3>gst_fft_s16_free ()</h3>
 
316
<pre class="programlisting"><span class="returnvalue">void</span>
 
317
gst_fft_s16_free (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> *self</code></em>);</pre>
 
318
<p>This frees the memory allocated for <em class="parameter"><code>self</code></em>
 
319
.</p>
 
320
<div class="refsect3">
 
321
<a name="id-1.2.7.5.8.6.5"></a><h4>Parameters</h4>
 
322
<div class="informaltable"><table width="100%" border="0">
 
323
<colgroup>
 
324
<col width="150px" class="parameters_name">
 
325
<col class="parameters_description">
 
326
<col width="200px" class="parameters_annotations">
 
327
</colgroup>
 
328
<tbody><tr>
 
329
<td class="parameter_name"><p>self</p></td>
 
330
<td class="parameter_description"><p><a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> instance for this call</p></td>
 
331
<td class="parameter_annotations"> </td>
 
332
</tr></tbody>
 
333
</table></div>
 
334
</div>
 
335
</div>
 
336
</div>
 
337
<div class="refsect1">
 
338
<a name="gst-plugins-base-libs-gstffts16.other_details"></a><h2>Types and Values</h2>
96
339
<div class="refsect2">
97
340
<a name="GstFFTS16"></a><h3>GstFFTS16</h3>
98
341
<pre class="programlisting">typedef struct _GstFFTS16 GstFFTS16;</pre>
105
348
  gint16 i;
106
349
};
107
350
</pre>
108
 
<p>
109
 
Data type for complex numbers composed of
110
 
signed 16 bit integers.
111
 
</p>
112
 
<div class="variablelist"><table border="0" class="variablelist">
113
 
<colgroup>
114
 
<col align="left" valign="top">
115
 
<col>
116
 
</colgroup>
117
 
<tbody>
118
 
<tr>
119
 
<td><p><span class="term"><span class="type">gint16</span> <em class="structfield"><code><a name="GstFFTS16Complex.r"></a>r</code></em>;</span></p></td>
120
 
<td>Real part</td>
121
 
</tr>
122
 
<tr>
123
 
<td><p><span class="term"><span class="type">gint16</span> <em class="structfield"><code><a name="GstFFTS16Complex.i"></a>i</code></em>;</span></p></td>
124
 
<td>Imaginary part</td>
125
 
</tr>
126
 
</tbody>
127
 
</table></div>
128
 
</div>
129
 
<hr>
130
 
<div class="refsect2">
131
 
<a name="gst-fft-s16-new"></a><h3>gst_fft_s16_new ()</h3>
132
 
<pre class="programlisting"><a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="returnvalue">GstFFTS16</span></a> *         gst_fft_s16_new                     (<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> len</code></em>,
133
 
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> inverse</code></em>);</pre>
134
 
<p>
135
 
This returns a new <a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> instance with the given parameters. It makes
136
 
sense to keep one instance for several calls for speed reasons.
137
 
</p>
138
 
<p>
139
 
<em class="parameter"><code>len</code></em> must be even and to get the best performance a product of
140
 
2, 3 and 5. To get the next number with this characteristics use
141
 
<a class="link" href="gst-plugins-base-libs-gstfft.html#gst-fft-next-fast-length" title="gst_fft_next_fast_length ()"><code class="function">gst_fft_next_fast_length()</code></a>.
142
 
</p>
143
 
<div class="variablelist"><table border="0" class="variablelist">
144
 
<colgroup>
145
 
<col align="left" valign="top">
146
 
<col>
147
 
</colgroup>
148
 
<tbody>
149
 
<tr>
150
 
<td><p><span class="term"><em class="parameter"><code>len</code></em> :</span></p></td>
151
 
<td>Length of the FFT in the time domain</td>
152
 
</tr>
153
 
<tr>
154
 
<td><p><span class="term"><em class="parameter"><code>inverse</code></em> :</span></p></td>
155
 
<td>
156
 
<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the <a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> instance should be used for the inverse FFT</td>
157
 
</tr>
158
 
<tr>
159
 
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
160
 
<td>a new <a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> instance.</td>
161
 
</tr>
162
 
</tbody>
163
 
</table></div>
164
 
</div>
165
 
<hr>
166
 
<div class="refsect2">
167
 
<a name="gst-fft-s16-fft"></a><h3>gst_fft_s16_fft ()</h3>
168
 
<pre class="programlisting"><span class="returnvalue">void</span>                gst_fft_s16_fft                     (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> *self</code></em>,
169
 
                                                         <em class="parameter"><code>const <span class="type">gint16</span> *timedata</code></em>,
170
 
                                                         <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16Complex" title="struct GstFFTS16Complex"><span class="type">GstFFTS16Complex</span></a> *freqdata</code></em>);</pre>
171
 
<p>
172
 
This performs the FFT on <em class="parameter"><code>timedata</code></em> and puts the result in <em class="parameter"><code>freqdata</code></em>.
173
 
</p>
174
 
<p>
175
 
<em class="parameter"><code>timedata</code></em> must have as many samples as specified with the <em class="parameter"><code>len</code></em> parameter while
176
 
allocating the <a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> instance with <a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-new" title="gst_fft_s16_new ()"><code class="function">gst_fft_s16_new()</code></a>.
177
 
</p>
178
 
<p>
179
 
<em class="parameter"><code>freqdata</code></em> must be large enough to hold <em class="parameter"><code>len</code></em>/2 + 1 <a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16Complex" title="struct GstFFTS16Complex"><span class="type">GstFFTS16Complex</span></a> frequency
180
 
domain samples.
181
 
</p>
182
 
<div class="variablelist"><table border="0" class="variablelist">
183
 
<colgroup>
184
 
<col align="left" valign="top">
185
 
<col>
186
 
</colgroup>
187
 
<tbody>
188
 
<tr>
189
 
<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
190
 
<td>
191
 
<a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> instance for this call</td>
192
 
</tr>
193
 
<tr>
194
 
<td><p><span class="term"><em class="parameter"><code>timedata</code></em> :</span></p></td>
195
 
<td>Buffer of the samples in the time domain</td>
196
 
</tr>
197
 
<tr>
198
 
<td><p><span class="term"><em class="parameter"><code>freqdata</code></em> :</span></p></td>
199
 
<td>Target buffer for the samples in the frequency domain</td>
200
 
</tr>
201
 
</tbody>
202
 
</table></div>
203
 
</div>
204
 
<hr>
205
 
<div class="refsect2">
206
 
<a name="gst-fft-s16-inverse-fft"></a><h3>gst_fft_s16_inverse_fft ()</h3>
207
 
<pre class="programlisting"><span class="returnvalue">void</span>                gst_fft_s16_inverse_fft             (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> *self</code></em>,
208
 
                                                         <em class="parameter"><code>const <a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16Complex" title="struct GstFFTS16Complex"><span class="type">GstFFTS16Complex</span></a> *freqdata</code></em>,
209
 
                                                         <em class="parameter"><code><span class="type">gint16</span> *timedata</code></em>);</pre>
210
 
<p>
211
 
This performs the inverse FFT on <em class="parameter"><code>freqdata</code></em> and puts the result in <em class="parameter"><code>timedata</code></em>.
212
 
</p>
213
 
<p>
214
 
<em class="parameter"><code>freqdata</code></em> must have <em class="parameter"><code>len</code></em>/2 + 1 samples, where <em class="parameter"><code>len</code></em> is the parameter specified
215
 
while allocating the <a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> instance with <a class="link" href="gst-plugins-base-libs-gstffts16.html#gst-fft-s16-new" title="gst_fft_s16_new ()"><code class="function">gst_fft_s16_new()</code></a>.
216
 
</p>
217
 
<p>
218
 
<em class="parameter"><code>timedata</code></em> must be large enough to hold <em class="parameter"><code>len</code></em> time domain samples.
219
 
</p>
220
 
<div class="variablelist"><table border="0" class="variablelist">
221
 
<colgroup>
222
 
<col align="left" valign="top">
223
 
<col>
224
 
</colgroup>
225
 
<tbody>
226
 
<tr>
227
 
<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
228
 
<td>
229
 
<a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> instance for this call</td>
230
 
</tr>
231
 
<tr>
232
 
<td><p><span class="term"><em class="parameter"><code>freqdata</code></em> :</span></p></td>
233
 
<td>Buffer of the samples in the frequency domain</td>
234
 
</tr>
235
 
<tr>
236
 
<td><p><span class="term"><em class="parameter"><code>timedata</code></em> :</span></p></td>
237
 
<td>Target buffer for the samples in the time domain</td>
238
 
</tr>
239
 
</tbody>
240
 
</table></div>
241
 
</div>
242
 
<hr>
243
 
<div class="refsect2">
244
 
<a name="gst-fft-s16-window"></a><h3>gst_fft_s16_window ()</h3>
245
 
<pre class="programlisting"><span class="returnvalue">void</span>                gst_fft_s16_window                  (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> *self</code></em>,
246
 
                                                         <em class="parameter"><code><span class="type">gint16</span> *timedata</code></em>,
247
 
                                                         <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstfft.html#GstFFTWindow" title="enum GstFFTWindow"><span class="type">GstFFTWindow</span></a> window</code></em>);</pre>
248
 
<p>
249
 
This calls the window function <em class="parameter"><code>window</code></em> on the <em class="parameter"><code>timedata</code></em> sample buffer.
250
 
</p>
251
 
<div class="variablelist"><table border="0" class="variablelist">
252
 
<colgroup>
253
 
<col align="left" valign="top">
254
 
<col>
255
 
</colgroup>
256
 
<tbody>
257
 
<tr>
258
 
<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
259
 
<td>
260
 
<a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> instance for this call</td>
261
 
</tr>
262
 
<tr>
263
 
<td><p><span class="term"><em class="parameter"><code>timedata</code></em> :</span></p></td>
264
 
<td>Time domain samples</td>
265
 
</tr>
266
 
<tr>
267
 
<td><p><span class="term"><em class="parameter"><code>window</code></em> :</span></p></td>
268
 
<td>Window function to apply</td>
269
 
</tr>
270
 
</tbody>
271
 
</table></div>
272
 
</div>
273
 
<hr>
274
 
<div class="refsect2">
275
 
<a name="gst-fft-s16-free"></a><h3>gst_fft_s16_free ()</h3>
276
 
<pre class="programlisting"><span class="returnvalue">void</span>                gst_fft_s16_free                    (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> *self</code></em>);</pre>
277
 
<p>
278
 
This frees the memory allocated for <em class="parameter"><code>self</code></em>.
279
 
</p>
280
 
<div class="variablelist"><table border="0" class="variablelist">
281
 
<colgroup>
282
 
<col align="left" valign="top">
283
 
<col>
284
 
</colgroup>
285
 
<tbody><tr>
286
 
<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
287
 
<td>
288
 
<a class="link" href="gst-plugins-base-libs-gstffts16.html#GstFFTS16" title="GstFFTS16"><span class="type">GstFFTS16</span></a> instance for this call</td>
289
 
</tr></tbody>
290
 
</table></div>
 
351
<p>Data type for complex numbers composed of
 
352
signed 16 bit integers.</p>
 
353
<div class="refsect3">
 
354
<a name="id-1.2.7.5.9.3.5"></a><h4>Members</h4>
 
355
<div class="informaltable"><table width="100%" border="0">
 
356
<colgroup>
 
357
<col width="300px" class="struct_members_name">
 
358
<col class="struct_members_description">
 
359
<col width="200px" class="struct_members_annotations">
 
360
</colgroup>
 
361
<tbody>
 
362
<tr>
 
363
<td class="struct_member_name"><p><span class="type">gint16</span> <em class="structfield"><code><a name="GstFFTS16Complex.r"></a>r</code></em>;</p></td>
 
364
<td class="struct_member_description"><p>Real part</p></td>
 
365
<td class="struct_member_annotations"> </td>
 
366
</tr>
 
367
<tr>
 
368
<td class="struct_member_name"><p><span class="type">gint16</span> <em class="structfield"><code><a name="GstFFTS16Complex.i"></a>i</code></em>;</p></td>
 
369
<td class="struct_member_description"><p>Imaginary part</p></td>
 
370
<td class="struct_member_annotations"> </td>
 
371
</tr>
 
372
</tbody>
 
373
</table></div>
 
374
</div>
291
375
</div>
292
376
</div>
293
377
</div>
294
378
<div class="footer">
295
379
<hr>
296
 
          Generated by GTK-Doc V1.19</div>
 
380
          Generated by GTK-Doc V1.20</div>
297
381
</body>
298
382
</html>
 
 
b'\\ No newline at end of file'