6840a8c3a79b46b582854f5d294a5c8c37ddbb65
[framework/multimedia/gst-plugins-base0.10.git] / docs / plugins / html / gst-plugins-base-plugins-appsrc.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2 <html>
3 <head>
4 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5 <title>appsrc</title>
6 <meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
7 <link rel="home" href="index.html" title="GStreamer Base Plugins 0.10 Plugins Reference Manual">
8 <link rel="up" href="ch01.html" title="gst-plugins-base Elements">
9 <link rel="prev" href="gst-plugins-base-plugins-adder.html" title="adder">
10 <link rel="next" href="gst-plugins-base-plugins-appsink.html" title="appsink">
11 <meta name="generator" content="GTK-Doc V1.17 (XML mode)">
12 <link rel="stylesheet" href="style.css" type="text/css">
13 </head>
14 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
15 <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
16 <tr valign="middle">
17 <td><a accesskey="p" href="gst-plugins-base-plugins-adder.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
18 <td><a accesskey="u" href="ch01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
19 <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
20 <th width="100%" align="center">GStreamer Base Plugins 0.10 Plugins Reference Manual</th>
21 <td><a accesskey="n" href="gst-plugins-base-plugins-appsink.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-plugins-appsrc.synopsis" class="shortcut">Top</a>
25                    | 
26                   <a href="#gst-plugins-base-plugins-appsrc.description" class="shortcut">Description</a>
27                    | 
28                   <a href="#gst-plugins-base-plugins-appsrc.object-hierarchy" class="shortcut">Object Hierarchy</a>
29                    | 
30                   <a href="#gst-plugins-base-plugins-appsrc.implemented-interfaces" class="shortcut">Implemented Interfaces</a>
31                    | 
32                   <a href="#gst-plugins-base-plugins-appsrc.properties" class="shortcut">Properties</a>
33                    | 
34                   <a href="#gst-plugins-base-plugins-appsrc.signals" class="shortcut">Signals</a>
35 </td></tr>
36 </table>
37 <div class="refentry">
38 <a name="gst-plugins-base-plugins-appsrc"></a><div class="titlepage"></div>
39 <div class="refnamediv"><table width="100%"><tr>
40 <td valign="top">
41 <h2><span class="refentrytitle"><a name="gst-plugins-base-plugins-appsrc.top_of_page"></a>appsrc</span></h2>
42 <p>appsrc — Allow the application to feed buffers to a pipeline</p>
43 </td>
44 <td valign="top" align="right"></td>
45 </tr></table></div>
46 <div class="refsynopsisdiv">
47 <a name="gst-plugins-base-plugins-appsrc.synopsis"></a><h2>Synopsis</h2>
48 <a name="GstAppSrc"></a><pre class="synopsis">struct              <a class="link" href="gst-plugins-base-plugins-appsrc.html#GstAppSrc-struct" title="struct GstAppSrc">GstAppSrc</a>;
49 </pre>
50 </div>
51 <div class="refsect1">
52 <a name="gst-plugins-base-plugins-appsrc.object-hierarchy"></a><h2>Object Hierarchy</h2>
53 <pre class="synopsis">
54   <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
55    +----<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html">GstObject</a>
56          +----<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html">GstElement</a>
57                +----<a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/GstBaseSrc.html">GstBaseSrc</a>
58                      +----GstAppSrc
59 </pre>
60 </div>
61 <div class="refsect1">
62 <a name="gst-plugins-base-plugins-appsrc.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
63 <p>
64 GstAppSrc implements
65  <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstUriHandler.html#GstURIHandler">GstURIHandler</a>.</p>
66 </div>
67 <div class="refsect1">
68 <a name="gst-plugins-base-plugins-appsrc.properties"></a><h2>Properties</h2>
69 <pre class="synopsis">
70   "<a class="link" href="gst-plugins-base-plugins-appsrc.html#GstAppSrc--block" title='The "block" property'>block</a>"                    <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write
71   "<a class="link" href="gst-plugins-base-plugins-appsrc.html#GstAppSrc--caps" title='The "caps" property'>caps</a>"                     <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a>*              : Read / Write
72   "<a class="link" href="gst-plugins-base-plugins-appsrc.html#GstAppSrc--format" title='The "format" property'>format</a>"                   <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstFormat.html#GstFormat"><span class="type">GstFormat</span></a>             : Read / Write
73   "<a class="link" href="gst-plugins-base-plugins-appsrc.html#GstAppSrc--is-live" title='The "is-live" property'>is-live</a>"                  <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write
74   "<a class="link" href="gst-plugins-base-plugins-appsrc.html#GstAppSrc--max-bytes" title='The "max-bytes" property'>max-bytes</a>"                <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a>               : Read / Write
75   "<a class="link" href="gst-plugins-base-plugins-appsrc.html#GstAppSrc--max-latency" title='The "max-latency" property'>max-latency</a>"              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a>                : Read / Write
76   "<a class="link" href="gst-plugins-base-plugins-appsrc.html#GstAppSrc--min-latency" title='The "min-latency" property'>min-latency</a>"              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a>                : Read / Write
77   "<a class="link" href="gst-plugins-base-plugins-appsrc.html#GstAppSrc--size" title='The "size" property'>size</a>"                     <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a>                : Read / Write
78   "<a class="link" href="gst-plugins-base-plugins-appsrc.html#GstAppSrc--stream-type" title='The "stream-type" property'>stream-type</a>"              <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-appsrc.html#GstAppStreamType"><span class="type">GstAppStreamType</span></a>      : Read / Write
79   "<a class="link" href="gst-plugins-base-plugins-appsrc.html#GstAppSrc--emit-signals" title='The "emit-signals" property'>emit-signals</a>"             <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write
80   "<a class="link" href="gst-plugins-base-plugins-appsrc.html#GstAppSrc--min-percent" title='The "min-percent" property'>min-percent</a>"              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>                 : Read / Write
81 </pre>
82 </div>
83 <div class="refsect1">
84 <a name="gst-plugins-base-plugins-appsrc.signals"></a><h2>Signals</h2>
85 <pre class="synopsis">
86   "<a class="link" href="gst-plugins-base-plugins-appsrc.html#GstAppSrc-end-of-stream" title='The "end-of-stream" signal'>end-of-stream</a>"                                  : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-ACTION:CAPS"><code class="literal">Action</code></a>
87   "<a class="link" href="gst-plugins-base-plugins-appsrc.html#GstAppSrc-enough-data" title='The "enough-data" signal'>enough-data</a>"                                    : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS"><code class="literal">Run Last</code></a>
88   "<a class="link" href="gst-plugins-base-plugins-appsrc.html#GstAppSrc-need-data" title='The "need-data" signal'>need-data</a>"                                      : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS"><code class="literal">Run Last</code></a>
89   "<a class="link" href="gst-plugins-base-plugins-appsrc.html#GstAppSrc-push-buffer" title='The "push-buffer" signal'>push-buffer</a>"                                    : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-ACTION:CAPS"><code class="literal">Action</code></a>
90   "<a class="link" href="gst-plugins-base-plugins-appsrc.html#GstAppSrc-seek-data" title='The "seek-data" signal'>seek-data</a>"                                      : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS"><code class="literal">Run Last</code></a>
91 </pre>
92 </div>
93 <div class="refsect1">
94 <a name="gst-plugins-base-plugins-appsrc.description"></a><h2>Description</h2>
95 <p>
96 The appsrc element can be used by applications to insert data into a
97 GStreamer pipeline. Unlike most GStreamer elements, Appsrc provides
98 external API functions.
99 </p>
100 <p>
101 For the documentation of the API, please see the
102 <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-appsrc.html">libgstapp</a> section in the
103 GStreamer Plugins Base Libraries documentation.
104 </p>
105 <div class="refsynopsisdiv">
106 <h2>Synopsis</h2>
107 <div class="refsect2">
108 <a name="idp5517840"></a><h3>Element Information</h3>
109 <div class="variablelist"><table border="0">
110 <col align="left" valign="top">
111 <tbody>
112 <tr>
113 <td><p><span class="term">plugin</span></p></td>
114 <td>
115             <a class="link" href="gst-plugins-base-plugins-plugin-app.html#plugin-app">app</a>
116           </td>
117 </tr>
118 <tr>
119 <td><p><span class="term">author</span></p></td>
120 <td>David Schleef &lt;ds@schleef.org&gt;, Wim Taymans &lt;wim.taymans@gmail.com&gt;</td>
121 </tr>
122 <tr>
123 <td><p><span class="term">class</span></p></td>
124 <td>Generic/Source</td>
125 </tr>
126 </tbody>
127 </table></div>
128 </div>
129 <hr>
130 <div class="refsect2">
131 <a name="idp5525328"></a><h3>Element Pads</h3>
132 <div class="variablelist"><table border="0">
133 <col align="left" valign="top">
134 <tbody>
135 <tr>
136 <td><p><span class="term">name</span></p></td>
137 <td>src</td>
138 </tr>
139 <tr>
140 <td><p><span class="term">direction</span></p></td>
141 <td>source</td>
142 </tr>
143 <tr>
144 <td><p><span class="term">presence</span></p></td>
145 <td>always</td>
146 </tr>
147 <tr>
148 <td><p><span class="term">details</span></p></td>
149 <td>ANY</td>
150 </tr>
151 </tbody>
152 </table></div>
153 </div>
154 </div>
155 <p>
156 </p>
157 </div>
158 <div class="refsect1">
159 <a name="gst-plugins-base-plugins-appsrc.details"></a><h2>Details</h2>
160 <div class="refsect2">
161 <a name="GstAppSrc-struct"></a><h3>struct GstAppSrc</h3>
162 <pre class="programlisting">struct GstAppSrc;</pre>
163 <p>
164 </p>
165 </div>
166 </div>
167 <div class="refsect1">
168 <a name="gst-plugins-base-plugins-appsrc.property-details"></a><h2>Property Details</h2>
169 <div class="refsect2">
170 <a name="GstAppSrc--block"></a><h3>The <code class="literal">"block"</code> property</h3>
171 <pre class="programlisting">  "block"                    <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write</pre>
172 <p>Block push-buffer when max-bytes are queued.</p>
173 <p>Default value: FALSE</p>
174 </div>
175 <hr>
176 <div class="refsect2">
177 <a name="GstAppSrc--caps"></a><h3>The <code class="literal">"caps"</code> property</h3>
178 <pre class="programlisting">  "caps"                     <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a>*              : Read / Write</pre>
179 <p>The allowed caps for the src pad.</p>
180 </div>
181 <hr>
182 <div class="refsect2">
183 <a name="GstAppSrc--format"></a><h3>The <code class="literal">"format"</code> property</h3>
184 <pre class="programlisting">  "format"                   <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstFormat.html#GstFormat"><span class="type">GstFormat</span></a>             : Read / Write</pre>
185 <p>The format of the segment events and seek.</p>
186 <p>Default value: GST_FORMAT_BYTES</p>
187 </div>
188 <hr>
189 <div class="refsect2">
190 <a name="GstAppSrc--is-live"></a><h3>The <code class="literal">"is-live"</code> property</h3>
191 <pre class="programlisting">  "is-live"                  <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write</pre>
192 <p>Whether to act as a live source.</p>
193 <p>Default value: FALSE</p>
194 </div>
195 <hr>
196 <div class="refsect2">
197 <a name="GstAppSrc--max-bytes"></a><h3>The <code class="literal">"max-bytes"</code> property</h3>
198 <pre class="programlisting">  "max-bytes"                <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a>               : Read / Write</pre>
199 <p>The maximum number of bytes to queue internally (0 = unlimited).</p>
200 <p>Default value: 200000</p>
201 </div>
202 <hr>
203 <div class="refsect2">
204 <a name="GstAppSrc--max-latency"></a><h3>The <code class="literal">"max-latency"</code> property</h3>
205 <pre class="programlisting">  "max-latency"              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a>                : Read / Write</pre>
206 <p>The maximum latency (-1 = unlimited).</p>
207 <p>Allowed values: &gt;= G_MAXULONG</p>
208 <p>Default value: -1</p>
209 </div>
210 <hr>
211 <div class="refsect2">
212 <a name="GstAppSrc--min-latency"></a><h3>The <code class="literal">"min-latency"</code> property</h3>
213 <pre class="programlisting">  "min-latency"              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a>                : Read / Write</pre>
214 <p>The minimum latency (-1 = default).</p>
215 <p>Allowed values: &gt;= G_MAXULONG</p>
216 <p>Default value: -1</p>
217 </div>
218 <hr>
219 <div class="refsect2">
220 <a name="GstAppSrc--size"></a><h3>The <code class="literal">"size"</code> property</h3>
221 <pre class="programlisting">  "size"                     <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a>                : Read / Write</pre>
222 <p>The size of the data stream in bytes (-1 if unknown).</p>
223 <p>Allowed values: &gt;= G_MAXULONG</p>
224 <p>Default value: -1</p>
225 </div>
226 <hr>
227 <div class="refsect2">
228 <a name="GstAppSrc--stream-type"></a><h3>The <code class="literal">"stream-type"</code> property</h3>
229 <pre class="programlisting">  "stream-type"              <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-libs/html/gst-plugins-base-libs-appsrc.html#GstAppStreamType"><span class="type">GstAppStreamType</span></a>      : Read / Write</pre>
230 <p>the type of the stream.</p>
231 <p>Default value: GST_APP_STREAM_TYPE_STREAM</p>
232 </div>
233 <hr>
234 <div class="refsect2">
235 <a name="GstAppSrc--emit-signals"></a><h3>The <code class="literal">"emit-signals"</code> property</h3>
236 <pre class="programlisting">  "emit-signals"             <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write</pre>
237 <p>Emit need-data, enough-data and seek-data signals.</p>
238 <p>Default value: TRUE</p>
239 </div>
240 <hr>
241 <div class="refsect2">
242 <a name="GstAppSrc--min-percent"></a><h3>The <code class="literal">"min-percent"</code> property</h3>
243 <pre class="programlisting">  "min-percent"              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>                 : Read / Write</pre>
244 <p>Emit need-data when queued bytes drops below this percent of max-bytes.</p>
245 <p>Allowed values: &lt;= 100</p>
246 <p>Default value: 0</p>
247 </div>
248 </div>
249 <div class="refsect1">
250 <a name="gst-plugins-base-plugins-appsrc.signal-details"></a><h2>Signal Details</h2>
251 <div class="refsect2">
252 <a name="GstAppSrc-end-of-stream"></a><h3>The <code class="literal">"end-of-stream"</code> signal</h3>
253 <pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a>       user_function                      (<a class="link" href="gst-plugins-base-plugins-appsrc.html#GstAppSrc"><span class="type">GstAppSrc</span></a> *appsrc,
254                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>   user_data)      : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-ACTION:CAPS"><code class="literal">Action</code></a></pre>
255 <p>
256 Notify <em class="parameter"><code>appsrc</code></em> that no more buffer are available.
257 </p>
258 <div class="variablelist"><table border="0">
259 <col align="left" valign="top">
260 <tbody>
261 <tr>
262 <td><p><span class="term"><em class="parameter"><code>appsrc</code></em> :</span></p></td>
263 <td>the appsrc</td>
264 </tr>
265 <tr>
266 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
267 <td>user data set when the signal handler was connected.</td>
268 </tr>
269 </tbody>
270 </table></div>
271 </div>
272 <hr>
273 <div class="refsect2">
274 <a name="GstAppSrc-enough-data"></a><h3>The <code class="literal">"enough-data"</code> signal</h3>
275 <pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="gst-plugins-base-plugins-appsrc.html#GstAppSrc"><span class="type">GstAppSrc</span></a> *appsrc,
276                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>   user_data)      : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS"><code class="literal">Run Last</code></a></pre>
277 <p>
278 Signal that the source has enough data. It is recommended that the
279 application stops calling push-buffer until the need-data signal is
280 emited again to avoid excessive buffer queueing.
281 </p>
282 <div class="variablelist"><table border="0">
283 <col align="left" valign="top">
284 <tbody>
285 <tr>
286 <td><p><span class="term"><em class="parameter"><code>appsrc</code></em> :</span></p></td>
287 <td>the appsrc element that emited the signal</td>
288 </tr>
289 <tr>
290 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
291 <td>user data set when the signal handler was connected.</td>
292 </tr>
293 </tbody>
294 </table></div>
295 </div>
296 <hr>
297 <div class="refsect2">
298 <a name="GstAppSrc-need-data"></a><h3>The <code class="literal">"need-data"</code> signal</h3>
299 <pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="gst-plugins-base-plugins-appsrc.html#GstAppSrc"><span class="type">GstAppSrc</span></a> *appsrc,
300                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>      length,
301                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>   user_data)      : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS"><code class="literal">Run Last</code></a></pre>
302 <p>
303 Signal that the source needs more data. In the callback or from another
304 thread you should call push-buffer or end-of-stream.
305 </p>
306 <p>
307 <em class="parameter"><code>length</code></em> is just a hint and when it is set to -1, any number of bytes can be
308 pushed into <em class="parameter"><code>appsrc</code></em>.
309 </p>
310 <p>
311 You can call push-buffer multiple times until the enough-data signal is
312 fired.
313 </p>
314 <div class="variablelist"><table border="0">
315 <col align="left" valign="top">
316 <tbody>
317 <tr>
318 <td><p><span class="term"><em class="parameter"><code>appsrc</code></em> :</span></p></td>
319 <td>the appsrc element that emited the signal</td>
320 </tr>
321 <tr>
322 <td><p><span class="term"><em class="parameter"><code>length</code></em> :</span></p></td>
323 <td>the amount of bytes needed.</td>
324 </tr>
325 <tr>
326 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
327 <td>user data set when the signal handler was connected.</td>
328 </tr>
329 </tbody>
330 </table></div>
331 </div>
332 <hr>
333 <div class="refsect2">
334 <a name="GstAppSrc-push-buffer"></a><h3>The <code class="literal">"push-buffer"</code> signal</h3>
335 <pre class="programlisting"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html#GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a>       user_function                      (<a class="link" href="gst-plugins-base-plugins-appsrc.html#GstAppSrc"><span class="type">GstAppSrc</span></a> *appsrc,
336                                                         <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstBuffer.html#GstBuffer"><span class="type">GstBuffer</span></a> *buffer,
337                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>   user_data)      : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-ACTION:CAPS"><code class="literal">Action</code></a></pre>
338 <p>
339 Adds a buffer to the queue of buffers that the appsrc element will
340 push to its source pad. This function does not take ownership of the
341 buffer so the buffer needs to be unreffed after calling this function.
342 </p>
343 <p>
344 When the block property is TRUE, this function can block until free space
345 becomes available in the queue.
346 </p>
347 <div class="variablelist"><table border="0">
348 <col align="left" valign="top">
349 <tbody>
350 <tr>
351 <td><p><span class="term"><em class="parameter"><code>appsrc</code></em> :</span></p></td>
352 <td>the appsrc</td>
353 </tr>
354 <tr>
355 <td><p><span class="term"><em class="parameter"><code>buffer</code></em> :</span></p></td>
356 <td>a buffer to push</td>
357 </tr>
358 <tr>
359 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
360 <td>user data set when the signal handler was connected.</td>
361 </tr>
362 </tbody>
363 </table></div>
364 </div>
365 <hr>
366 <div class="refsect2">
367 <a name="GstAppSrc-seek-data"></a><h3>The <code class="literal">"seek-data"</code> signal</h3>
368 <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            user_function                      (<a class="link" href="gst-plugins-base-plugins-appsrc.html#GstAppSrc"><span class="type">GstAppSrc</span></a> *appsrc,
369                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a>    offset,
370                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>   user_data)      : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS"><code class="literal">Run Last</code></a></pre>
371 <p>
372 Seek to the given offset. The next push-buffer should produce buffers from
373 the new <em class="parameter"><code>offset</code></em>.
374 This callback is only called for seekable stream types.
375 </p>
376 <div class="variablelist"><table border="0">
377 <col align="left" valign="top">
378 <tbody>
379 <tr>
380 <td><p><span class="term"><em class="parameter"><code>appsrc</code></em> :</span></p></td>
381 <td>the appsrc element that emited the signal</td>
382 </tr>
383 <tr>
384 <td><p><span class="term"><em class="parameter"><code>offset</code></em> :</span></p></td>
385 <td>the offset to seek to</td>
386 </tr>
387 <tr>
388 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
389 <td>user data set when the signal handler was connected.</td>
390 </tr>
391 <tr>
392 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
393 <td>
394 <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the seek succeeded.</td>
395 </tr>
396 </tbody>
397 </table></div>
398 </div>
399 </div>
400 </div>
401 <div class="footer">
402 <hr>
403           Generated by GTK-Doc V1.17</div>
404 </body>
405 </html>