tizen 2.0 init
[framework/multimedia/gst-plugins-base0.10.git] / docs / plugins / html / gst-plugins-base-plugins-decodebin2.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>decodebin2</title>
6 <meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
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-decodebin.html" title="decodebin">
10 <link rel="next" href="gst-plugins-base-plugins-encodebin.html" title="encodebin">
11 <meta name="generator" content="GTK-Doc V1.18 (XML mode)">
12 <link rel="stylesheet" href="style.css" type="text/css">
13 </head>
14 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
15 <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
16 <tr valign="middle">
17 <td><a accesskey="p" href="gst-plugins-base-plugins-decodebin.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-encodebin.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-decodebin2.synopsis" class="shortcut">Top</a>
25                    | 
26                   <a href="#gst-plugins-base-plugins-decodebin2.description" class="shortcut">Description</a>
27                    | 
28                   <a href="#gst-plugins-base-plugins-decodebin2.object-hierarchy" class="shortcut">Object Hierarchy</a>
29                    | 
30                   <a href="#gst-plugins-base-plugins-decodebin2.implemented-interfaces" class="shortcut">Implemented Interfaces</a>
31                    | 
32                   <a href="#gst-plugins-base-plugins-decodebin2.properties" class="shortcut">Properties</a>
33                    | 
34                   <a href="#gst-plugins-base-plugins-decodebin2.signals" class="shortcut">Signals</a>
35 </td></tr>
36 </table>
37 <div class="refentry">
38 <a name="gst-plugins-base-plugins-decodebin2"></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-decodebin2.top_of_page"></a>decodebin2</span></h2>
42 <p>decodebin2 — Autoplug and decode to raw media</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-decodebin2.synopsis"></a><h2>Synopsis</h2>
48 <a name="GstDecodeBin2"></a><pre class="synopsis">struct              <a class="link" href="gst-plugins-base-plugins-decodebin2.html#GstDecodeBin2-struct" title="struct GstDecodeBin2">GstDecodeBin2</a>;
49 </pre>
50 </div>
51 <div class="refsect1">
52 <a name="gst-plugins-base-plugins-decodebin2.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/html/GstBin.html">GstBin</a>
58                      +----GstDecodeBin2
59 </pre>
60 </div>
61 <div class="refsect1">
62 <a name="gst-plugins-base-plugins-decodebin2.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
63 <p>
64 GstDecodeBin2 implements
65  <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstChildProxy.html">GstChildProxy</a>.</p>
66 </div>
67 <div class="refsect1">
68 <a name="gst-plugins-base-plugins-decodebin2.properties"></a><h2>Properties</h2>
69 <pre class="synopsis">
70   "<a class="link" href="gst-plugins-base-plugins-decodebin2.html#GstDecodeBin2--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
71   "<a class="link" href="gst-plugins-base-plugins-decodebin2.html#GstDecodeBin2--subtitle-encoding" title='The "subtitle-encoding" property'>subtitle-encoding</a>"        <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>*                : Read / Write
72   "<a class="link" href="gst-plugins-base-plugins-decodebin2.html#GstDecodeBin2--sink-caps" title='The "sink-caps" property'>sink-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
73   "<a class="link" href="gst-plugins-base-plugins-decodebin2.html#GstDecodeBin2--high-percent" title='The "high-percent" property'>high-percent</a>"             <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a>                  : Read / Write
74   "<a class="link" href="gst-plugins-base-plugins-decodebin2.html#GstDecodeBin2--low-percent" title='The "low-percent" property'>low-percent</a>"              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a>                  : Read / Write
75   "<a class="link" href="gst-plugins-base-plugins-decodebin2.html#GstDecodeBin2--max-size-buffers" title='The "max-size-buffers" property'>max-size-buffers</a>"         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>                 : Read / Write
76   "<a class="link" href="gst-plugins-base-plugins-decodebin2.html#GstDecodeBin2--max-size-bytes" title='The "max-size-bytes" property'>max-size-bytes</a>"           <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>                 : Read / Write
77   "<a class="link" href="gst-plugins-base-plugins-decodebin2.html#GstDecodeBin2--max-size-time" title='The "max-size-time" property'>max-size-time</a>"            <span class="type">guint64</span>               : Read / Write
78   "<a class="link" href="gst-plugins-base-plugins-decodebin2.html#GstDecodeBin2--use-buffering" title='The "use-buffering" property'>use-buffering</a>"            <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write
79   "<a class="link" href="gst-plugins-base-plugins-decodebin2.html#GstDecodeBin2--post-stream-topology" title='The "post-stream-topology" property'>post-stream-topology</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-decodebin2.html#GstDecodeBin2--expose-all-streams" title='The "expose-all-streams" property'>expose-all-streams</a>"       <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write
81 </pre>
82 </div>
83 <div class="refsect1">
84 <a name="gst-plugins-base-plugins-decodebin2.signals"></a><h2>Signals</h2>
85 <pre class="synopsis">
86   "<a class="link" href="gst-plugins-base-plugins-decodebin2.html#GstDecodeBin2-autoplug-continue" title='The "autoplug-continue" signal'>autoplug-continue</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>
87   "<a class="link" href="gst-plugins-base-plugins-decodebin2.html#GstDecodeBin2-autoplug-sort" title='The "autoplug-sort" signal'>autoplug-sort</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-decodebin2.html#GstDecodeBin2-new-decoded-pad" title='The "new-decoded-pad" signal'>new-decoded-pad</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-decodebin2.html#GstDecodeBin2-removed-decoded-pad" title='The "removed-decoded-pad" signal'>removed-decoded-pad</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>
90   "<a class="link" href="gst-plugins-base-plugins-decodebin2.html#GstDecodeBin2-unknown-type" title='The "unknown-type" signal'>unknown-type</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   "<a class="link" href="gst-plugins-base-plugins-decodebin2.html#GstDecodeBin2-autoplug-factories" title='The "autoplug-factories" signal'>autoplug-factories</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>
92   "<a class="link" href="gst-plugins-base-plugins-decodebin2.html#GstDecodeBin2-autoplug-select" title='The "autoplug-select" signal'>autoplug-select</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>
93   "<a class="link" href="gst-plugins-base-plugins-decodebin2.html#GstDecodeBin2-drained" title='The "drained" signal'>drained</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>
94 </pre>
95 </div>
96 <div class="refsect1">
97 <a name="gst-plugins-base-plugins-decodebin2.description"></a><h2>Description</h2>
98 <p>
99 <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBin.html"><span class="type">GstBin</span></a> that auto-magically constructs a decoding pipeline using available
100 decoders and demuxers via auto-plugging.
101 </p>
102 <p>
103 decodebin2 is considered stable now and replaces the old <span class="type">decodebin</span> element.
104 <span class="type">uridecodebin</span> uses decodebin2 internally and is often more convenient to
105 use, as it creates a suitable source element as well.
106 </p>
107 <div class="refsynopsisdiv">
108 <h2>Synopsis</h2>
109 <div class="refsect2">
110 <a name="idp10756320"></a><h3>Element Information</h3>
111 <div class="variablelist"><table border="0">
112 <col align="left" valign="top">
113 <tbody>
114 <tr>
115 <td><p><span class="term">plugin</span></p></td>
116 <td>
117             <a class="link" href="gst-plugins-base-plugins-plugin-uridecodebin.html#plugin-uridecodebin">uridecodebin</a>
118           </td>
119 </tr>
120 <tr>
121 <td><p><span class="term">author</span></p></td>
122 <td>Edward Hervey &lt;edward.hervey@collabora.co.uk&gt;, Sebastian Dröge &lt;sebastian.droege@collabora.co.uk&gt;</td>
123 </tr>
124 <tr>
125 <td><p><span class="term">class</span></p></td>
126 <td>Generic/Bin/Decoder</td>
127 </tr>
128 </tbody>
129 </table></div>
130 </div>
131 <hr>
132 <div class="refsect2">
133 <a name="idp10763840"></a><h3>Element Pads</h3>
134 <div class="variablelist"><table border="0">
135 <col align="left" valign="top">
136 <tbody>
137 <tr>
138 <td><p><span class="term">name</span></p></td>
139 <td>sink</td>
140 </tr>
141 <tr>
142 <td><p><span class="term">direction</span></p></td>
143 <td>sink</td>
144 </tr>
145 <tr>
146 <td><p><span class="term">presence</span></p></td>
147 <td>always</td>
148 </tr>
149 <tr>
150 <td><p><span class="term">details</span></p></td>
151 <td>ANY</td>
152 </tr>
153 </tbody>
154 </table></div>
155 <div class="variablelist"><table border="0">
156 <col align="left" valign="top">
157 <tbody>
158 <tr>
159 <td><p><span class="term">name</span></p></td>
160 <td>src%d</td>
161 </tr>
162 <tr>
163 <td><p><span class="term">direction</span></p></td>
164 <td>source</td>
165 </tr>
166 <tr>
167 <td><p><span class="term">presence</span></p></td>
168 <td>sometimes</td>
169 </tr>
170 <tr>
171 <td><p><span class="term">details</span></p></td>
172 <td>ANY</td>
173 </tr>
174 </tbody>
175 </table></div>
176 </div>
177 </div>
178 <p>
179 </p>
180 </div>
181 <div class="refsect1">
182 <a name="gst-plugins-base-plugins-decodebin2.details"></a><h2>Details</h2>
183 <div class="refsect2">
184 <a name="GstDecodeBin2-struct"></a><h3>struct GstDecodeBin2</h3>
185 <pre class="programlisting">struct GstDecodeBin2;</pre>
186 <p>
187 The opaque <span class="type">DecodeBin2</span> data structure
188 </p>
189 </div>
190 </div>
191 <div class="refsect1">
192 <a name="gst-plugins-base-plugins-decodebin2.property-details"></a><h2>Property Details</h2>
193 <div class="refsect2">
194 <a name="GstDecodeBin2--caps"></a><h3>The <code class="literal">"caps"</code> property</h3>
195 <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>
196 <p>The caps on which to stop decoding.</p>
197 </div>
198 <hr>
199 <div class="refsect2">
200 <a name="GstDecodeBin2--subtitle-encoding"></a><h3>The <code class="literal">"subtitle-encoding"</code> property</h3>
201 <pre class="programlisting">  "subtitle-encoding"        <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>*                : Read / Write</pre>
202 <p>Encoding to assume if input subtitles are not in UTF-8 encoding. If not set, the GST_SUBTITLE_ENCODING environment variable will be checked for an encoding to use. If that is not set either, ISO-8859-15 will be assumed.</p>
203 <p>Default value: NULL</p>
204 </div>
205 <hr>
206 <div class="refsect2">
207 <a name="GstDecodeBin2--sink-caps"></a><h3>The <code class="literal">"sink-caps"</code> property</h3>
208 <pre class="programlisting">  "sink-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>
209 <p>The caps of the input data. (NULL = use typefind element).</p>
210 </div>
211 <hr>
212 <div class="refsect2">
213 <a name="GstDecodeBin2--high-percent"></a><h3>The <code class="literal">"high-percent"</code> property</h3>
214 <pre class="programlisting">  "high-percent"             <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a>                  : Read / Write</pre>
215 <p>High threshold for buffering to finish.</p>
216 <p>Allowed values: [0,100]</p>
217 <p>Default value: 99</p>
218 </div>
219 <hr>
220 <div class="refsect2">
221 <a name="GstDecodeBin2--low-percent"></a><h3>The <code class="literal">"low-percent"</code> property</h3>
222 <pre class="programlisting">  "low-percent"              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a>                  : Read / Write</pre>
223 <p>Low threshold for buffering to start.</p>
224 <p>Allowed values: [0,100]</p>
225 <p>Default value: 10</p>
226 </div>
227 <hr>
228 <div class="refsect2">
229 <a name="GstDecodeBin2--max-size-buffers"></a><h3>The <code class="literal">"max-size-buffers"</code> property</h3>
230 <pre class="programlisting">  "max-size-buffers"         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>                 : Read / Write</pre>
231 <p>Max. number of buffers in the queue (0=automatic).</p>
232 <p>Default value: 0</p>
233 </div>
234 <hr>
235 <div class="refsect2">
236 <a name="GstDecodeBin2--max-size-bytes"></a><h3>The <code class="literal">"max-size-bytes"</code> property</h3>
237 <pre class="programlisting">  "max-size-bytes"           <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a>                 : Read / Write</pre>
238 <p>Max. amount of bytes in the queue (0=automatic).</p>
239 <p>Default value: 0</p>
240 </div>
241 <hr>
242 <div class="refsect2">
243 <a name="GstDecodeBin2--max-size-time"></a><h3>The <code class="literal">"max-size-time"</code> property</h3>
244 <pre class="programlisting">  "max-size-time"            <span class="type">guint64</span>               : Read / Write</pre>
245 <p>Max. amount of data in the queue (in ns, 0=automatic).</p>
246 <p>Default value: 0</p>
247 </div>
248 <hr>
249 <div class="refsect2">
250 <a name="GstDecodeBin2--use-buffering"></a><h3>The <code class="literal">"use-buffering"</code> property</h3>
251 <pre class="programlisting">  "use-buffering"            <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write</pre>
252 <p>Emit GST_MESSAGE_BUFFERING based on low-/high-percent thresholds.</p>
253 <p>Default value: FALSE</p>
254 </div>
255 <hr>
256 <div class="refsect2">
257 <a name="GstDecodeBin2--post-stream-topology"></a><h3>The <code class="literal">"post-stream-topology"</code> property</h3>
258 <pre class="programlisting">  "post-stream-topology"     <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write</pre>
259 <p>Post stream-topology messages.</p>
260 <p>Default value: FALSE</p>
261 </div>
262 <hr>
263 <div class="refsect2">
264 <a name="GstDecodeBin2--expose-all-streams"></a><h3>The <code class="literal">"expose-all-streams"</code> property</h3>
265 <pre class="programlisting">  "expose-all-streams"       <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write</pre>
266 <p>Expose all streams, including those of unknown type or that don't match the 'caps' property.</p>
267 <p>Default value: TRUE</p>
268 </div>
269 </div>
270 <div class="refsect1">
271 <a name="gst-plugins-base-plugins-decodebin2.signal-details"></a><h2>Signal Details</h2>
272 <div class="refsect2">
273 <a name="GstDecodeBin2-autoplug-continue"></a><h3>The <code class="literal">"autoplug-continue"</code> signal</h3>
274 <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-decodebin2.html#GstDecodeBin2"><span class="type">GstDecodeBin2</span></a> *bin,
275                                                         <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a>        *pad,
276                                                         <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a>       *caps,
277                                                         <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>
278 <p>
279 This signal is emitted whenever decodebin2 finds a new stream. It is
280 emitted before looking for any elements that can handle that stream.
281 </p>
282 <p>
283 </p>
284 <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
285 <h3 class="title">Note</h3>
286   Invocation of signal handlers stops after the first signal handler
287 returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><span class="type">FALSE</span></a>. Signal handlers are invoked in the order they were
288   connected in.
289 </div>
290 <p>
291 </p>
292 <div class="variablelist"><table border="0">
293 <col align="left" valign="top">
294 <tbody>
295 <tr>
296 <td><p><span class="term"><em class="parameter"><code>bin</code></em> :</span></p></td>
297 <td>The decodebin.</td>
298 </tr>
299 <tr>
300 <td><p><span class="term"><em class="parameter"><code>pad</code></em> :</span></p></td>
301 <td>The <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a>.</td>
302 </tr>
303 <tr>
304 <td><p><span class="term"><em class="parameter"><code>caps</code></em> :</span></p></td>
305 <td>The <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a> found.</td>
306 </tr>
307 <tr>
308 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
309 <td>user data set when the signal handler was connected.</td>
310 </tr>
311 <tr>
312 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
313 <td>
314 <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><span class="type">TRUE</span></a> if you wish decodebin2 to look for elements that can
315 handle the given <em class="parameter"><code>caps</code></em>. If <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><span class="type">FALSE</span></a>, those caps will be considered as
316 final and the pad will be exposed as such (see 'new-decoded-pad'
317 signal).</td>
318 </tr>
319 </tbody>
320 </table></div>
321 </div>
322 <hr>
323 <div class="refsect2">
324 <a name="GstDecodeBin2-autoplug-sort"></a><h3>The <code class="literal">"autoplug-sort"</code> signal</h3>
325 <pre class="programlisting"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Value-arrays.html#GValueArray"><span class="returnvalue">GValueArray</span></a>*        user_function                      (<a class="link" href="gst-plugins-base-plugins-decodebin2.html#GstDecodeBin2"><span class="type">GstDecodeBin2</span></a> *bin,
326                                                         <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a>        *pad,
327                                                         <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a>       *caps,
328                                                         <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Value-arrays.html#GValueArray"><span class="type">GValueArray</span></a>   *factories,
329                                                         <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>
330 <p>
331 Once decodebin2 has found the possible <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElementFactory.html"><span class="type">GstElementFactory</span></a> objects to try
332 for <em class="parameter"><code>caps</code></em> on <em class="parameter"><code>pad</code></em>, this signal is emitted. The purpose of the signal is for
333 the application to perform additional sorting or filtering on the element
334 factory array.
335 </p>
336 <p>
337 The callee should copy and modify <em class="parameter"><code>factories</code></em> or return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a> if the
338 order should not change.
339 </p>
340 <p>
341 </p>
342 <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
343 <h3 class="title">Note</h3>
344   Invocation of signal handlers stops after one signal handler has
345   returned something else than <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a>. Signal handlers are invoked in
346   the order they were connected in.
347   Don't connect signal handlers with the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-CONNECT-AFTER:CAPS"><span class="type">G_CONNECT_AFTER</span></a> flag to this
348   signal, they will never be invoked!
349 </div>
350 <p>
351 </p>
352 <div class="variablelist"><table border="0">
353 <col align="left" valign="top">
354 <tbody>
355 <tr>
356 <td><p><span class="term"><em class="parameter"><code>bin</code></em> :</span></p></td>
357 <td>The decodebin.</td>
358 </tr>
359 <tr>
360 <td><p><span class="term"><em class="parameter"><code>pad</code></em> :</span></p></td>
361 <td>The <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a>.</td>
362 </tr>
363 <tr>
364 <td><p><span class="term"><em class="parameter"><code>caps</code></em> :</span></p></td>
365 <td>The <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a>.</td>
366 </tr>
367 <tr>
368 <td><p><span class="term"><em class="parameter"><code>factories</code></em> :</span></p></td>
369 <td>A <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Value-arrays.html#GValueArray"><span class="type">GValueArray</span></a> of possible <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElementFactory.html"><span class="type">GstElementFactory</span></a> to use.</td>
370 </tr>
371 <tr>
372 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
373 <td>user data set when the signal handler was connected.</td>
374 </tr>
375 <tr>
376 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
377 <td>A new sorted array of <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElementFactory.html"><span class="type">GstElementFactory</span></a> objects.</td>
378 </tr>
379 </tbody>
380 </table></div>
381 </div>
382 <hr>
383 <div class="refsect2">
384 <a name="GstDecodeBin2-new-decoded-pad"></a><h3>The <code class="literal">"new-decoded-pad"</code> signal</h3>
385 <pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="gst-plugins-base-plugins-decodebin2.html#GstDecodeBin2"><span class="type">GstDecodeBin2</span></a> *bin,
386                                                         <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a>        *pad,
387                                                         <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>       islast,
388                                                         <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>
389 <div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
390 <h3 class="title">Warning</h3>
391 <p><code class="literal">GstDecodeBin2::new-decoded-pad</code> is deprecated and should not be used in newly-written code. Use GstElement::pad-added instead of this signal.</p>
392 </div>
393 <p>
394 This signal gets emitted as soon as a new pad of the same type as one of
395 the valid 'raw' types is added.
396 </p>
397 <div class="variablelist"><table border="0">
398 <col align="left" valign="top">
399 <tbody>
400 <tr>
401 <td><p><span class="term"><em class="parameter"><code>bin</code></em> :</span></p></td>
402 <td>The decodebin.</td>
403 </tr>
404 <tr>
405 <td><p><span class="term"><em class="parameter"><code>pad</code></em> :</span></p></td>
406 <td>The newly created pad.</td>
407 </tr>
408 <tr>
409 <td><p><span class="term"><em class="parameter"><code>islast</code></em> :</span></p></td>
410 <td>
411 <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><span class="type">TRUE</span></a> if this is the last pad to be added. Deprecated.</td>
412 </tr>
413 <tr>
414 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
415 <td>user data set when the signal handler was connected.</td>
416 </tr>
417 </tbody>
418 </table></div>
419 </div>
420 <hr>
421 <div class="refsect2">
422 <a name="GstDecodeBin2-removed-decoded-pad"></a><h3>The <code class="literal">"removed-decoded-pad"</code> signal</h3>
423 <pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="gst-plugins-base-plugins-decodebin2.html#GstDecodeBin2"><span class="type">GstDecodeBin2</span></a> *bin,
424                                                         <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a>        *pad,
425                                                         <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>
426 <div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
427 <h3 class="title">Warning</h3>
428 <p><code class="literal">GstDecodeBin2::removed-decoded-pad</code> is deprecated and should not be used in newly-written code. Use GstElement::pad-removed instead of this signal.</p>
429 </div>
430 <p>
431 This signal is emitted when a 'final' caps pad has been removed.
432 </p>
433 <div class="variablelist"><table border="0">
434 <col align="left" valign="top">
435 <tbody>
436 <tr>
437 <td><p><span class="term"><em class="parameter"><code>bin</code></em> :</span></p></td>
438 <td>The decodebin.</td>
439 </tr>
440 <tr>
441 <td><p><span class="term"><em class="parameter"><code>pad</code></em> :</span></p></td>
442 <td>The pad that was removed.</td>
443 </tr>
444 <tr>
445 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
446 <td>user data set when the signal handler was connected.</td>
447 </tr>
448 </tbody>
449 </table></div>
450 </div>
451 <hr>
452 <div class="refsect2">
453 <a name="GstDecodeBin2-unknown-type"></a><h3>The <code class="literal">"unknown-type"</code> signal</h3>
454 <pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="gst-plugins-base-plugins-decodebin2.html#GstDecodeBin2"><span class="type">GstDecodeBin2</span></a> *bin,
455                                                         <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a>        *pad,
456                                                         <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a>       *caps,
457                                                         <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>
458 <p>
459 This signal is emitted when a pad for which there is no further possible
460 decoding is added to the decodebin.
461 </p>
462 <div class="variablelist"><table border="0">
463 <col align="left" valign="top">
464 <tbody>
465 <tr>
466 <td><p><span class="term"><em class="parameter"><code>bin</code></em> :</span></p></td>
467 <td>The decodebin.</td>
468 </tr>
469 <tr>
470 <td><p><span class="term"><em class="parameter"><code>pad</code></em> :</span></p></td>
471 <td>The new pad containing caps that cannot be resolved to a 'final'
472 stream type.</td>
473 </tr>
474 <tr>
475 <td><p><span class="term"><em class="parameter"><code>caps</code></em> :</span></p></td>
476 <td>The <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a> of the pad that cannot be resolved.</td>
477 </tr>
478 <tr>
479 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
480 <td>user data set when the signal handler was connected.</td>
481 </tr>
482 </tbody>
483 </table></div>
484 </div>
485 <hr>
486 <div class="refsect2">
487 <a name="GstDecodeBin2-autoplug-factories"></a><h3>The <code class="literal">"autoplug-factories"</code> signal</h3>
488 <pre class="programlisting"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Value-arrays.html#GValueArray"><span class="returnvalue">GValueArray</span></a>*        user_function                      (<a class="link" href="gst-plugins-base-plugins-decodebin2.html#GstDecodeBin2"><span class="type">GstDecodeBin2</span></a> *bin,
489                                                         <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a>        *pad,
490                                                         <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a>       *caps,
491                                                         <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>
492 <p>
493 This function is emitted when an array of possible factories for <em class="parameter"><code>caps</code></em> on
494 <em class="parameter"><code>pad</code></em> is needed. Decodebin2 will by default return an array with all
495 compatible factories, sorted by rank.
496 </p>
497 <p>
498 If this function returns NULL, <em class="parameter"><code>pad</code></em> will be exposed as a final caps.
499 </p>
500 <p>
501 If this function returns an empty array, the pad will be considered as
502 having an unhandled type media type.
503 </p>
504 <p>
505 </p>
506 <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
507 <h3 class="title">Note</h3>
508   Only the signal handler that is connected first will ever by invoked.
509   Don't connect signal handlers with the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-CONNECT-AFTER:CAPS"><span class="type">G_CONNECT_AFTER</span></a> flag to this
510   signal, they will never be invoked!
511 </div>
512 <p>
513 </p>
514 <div class="variablelist"><table border="0">
515 <col align="left" valign="top">
516 <tbody>
517 <tr>
518 <td><p><span class="term"><em class="parameter"><code>bin</code></em> :</span></p></td>
519 <td>The decodebin.</td>
520 </tr>
521 <tr>
522 <td><p><span class="term"><em class="parameter"><code>pad</code></em> :</span></p></td>
523 <td>The <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a>.</td>
524 </tr>
525 <tr>
526 <td><p><span class="term"><em class="parameter"><code>caps</code></em> :</span></p></td>
527 <td>The <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a> found.</td>
528 </tr>
529 <tr>
530 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
531 <td>user data set when the signal handler was connected.</td>
532 </tr>
533 <tr>
534 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
535 <td>a <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Value-arrays.html#GValueArray"><span class="type">GValueArray</span></a>* with a list of factories to try. The factories are
536 by default tried in the returned order or based on the index returned by
537 "autoplug-select".</td>
538 </tr>
539 </tbody>
540 </table></div>
541 </div>
542 <hr>
543 <div class="refsect2">
544 <a name="GstDecodeBin2-autoplug-select"></a><h3>The <code class="literal">"autoplug-select"</code> signal</h3>
545 <pre class="programlisting"><a class="link" href="gst-plugins-base-plugins-uridecodebin.html#GstAutoplugSelectResult" title="enum GstAutoplugSelectResult"><span class="returnvalue">GstAutoplugSelectResult</span></a>user_function                      (<a class="link" href="gst-plugins-base-plugins-decodebin2.html#GstDecodeBin2"><span class="type">GstDecodeBin2</span></a>     *bin,
546                                                         <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a>            *pad,
547                                                         <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a>           *caps,
548                                                         <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElementFactory.html"><span class="type">GstElementFactory</span></a> *factory,
549                                                         <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>
550 <p>
551 This signal is emitted once decodebin2 has found all the possible
552 <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElementFactory.html"><span class="type">GstElementFactory</span></a> that can be used to handle the given <em class="parameter"><code>caps</code></em>. For each of
553 those factories, this signal is emitted.
554 </p>
555 <p>
556 The signal handler should return a <span class="type">GST_TYPE_AUTOPLUG_SELECT_RESULT</span> enum
557 value indicating what decodebin2 should do next.
558 </p>
559 <p>
560 A value of <a class="link" href="gst-plugins-base-plugins-uridecodebin.html#GST-AUTOPLUG-SELECT-TRY:CAPS"><span class="type">GST_AUTOPLUG_SELECT_TRY</span></a> will try to autoplug an element from
561 <em class="parameter"><code>factory</code></em>.
562 </p>
563 <p>
564 A value of <a class="link" href="gst-plugins-base-plugins-uridecodebin.html#GST-AUTOPLUG-SELECT-EXPOSE:CAPS"><span class="type">GST_AUTOPLUG_SELECT_EXPOSE</span></a> will expose <em class="parameter"><code>pad</code></em> without plugging
565 any element to it.
566 </p>
567 <p>
568 A value of <a class="link" href="gst-plugins-base-plugins-uridecodebin.html#GST-AUTOPLUG-SELECT-SKIP:CAPS"><span class="type">GST_AUTOPLUG_SELECT_SKIP</span></a> will skip <em class="parameter"><code>factory</code></em> and move to the
569 next factory.
570 </p>
571 <p>
572 </p>
573 <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
574 <h3 class="title">Note</h3>
575   Only the signal handler that is connected first will ever by invoked.
576   Don't connect signal handlers with the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-CONNECT-AFTER:CAPS"><span class="type">G_CONNECT_AFTER</span></a> flag to this
577   signal, they will never be invoked!
578 </div>
579 <p>
580 </p>
581 <div class="variablelist"><table border="0">
582 <col align="left" valign="top">
583 <tbody>
584 <tr>
585 <td><p><span class="term"><em class="parameter"><code>bin</code></em> :</span></p></td>
586 <td>The decodebin.</td>
587 </tr>
588 <tr>
589 <td><p><span class="term"><em class="parameter"><code>pad</code></em> :</span></p></td>
590 <td>The <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstPad.html"><span class="type">GstPad</span></a>.</td>
591 </tr>
592 <tr>
593 <td><p><span class="term"><em class="parameter"><code>caps</code></em> :</span></p></td>
594 <td>The <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a>.</td>
595 </tr>
596 <tr>
597 <td><p><span class="term"><em class="parameter"><code>factory</code></em> :</span></p></td>
598 <td>A <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElementFactory.html"><span class="type">GstElementFactory</span></a> to use.</td>
599 </tr>
600 <tr>
601 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
602 <td>user data set when the signal handler was connected.</td>
603 </tr>
604 <tr>
605 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
606 <td>a <span class="type">GST_TYPE_AUTOPLUG_SELECT_RESULT</span> that indicates the required
607 operation. the default handler will always return
608 <a class="link" href="gst-plugins-base-plugins-uridecodebin.html#GST-AUTOPLUG-SELECT-TRY:CAPS"><span class="type">GST_AUTOPLUG_SELECT_TRY</span></a>.</td>
609 </tr>
610 </tbody>
611 </table></div>
612 </div>
613 <hr>
614 <div class="refsect2">
615 <a name="GstDecodeBin2-drained"></a><h3>The <code class="literal">"drained"</code> signal</h3>
616 <pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="gst-plugins-base-plugins-decodebin2.html#GstDecodeBin2"><span class="type">GstDecodeBin2</span></a> *bin,
617                                                         <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>
618 <p>
619 This signal is emitted once decodebin2 has finished decoding all the data.
620 </p>
621 <div class="variablelist"><table border="0">
622 <col align="left" valign="top">
623 <tbody>
624 <tr>
625 <td><p><span class="term"><em class="parameter"><code>bin</code></em> :</span></p></td>
626 <td>The decodebin</td>
627 </tr>
628 <tr>
629 <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
630 <td>user data set when the signal handler was connected.</td>
631 </tr>
632 </tbody>
633 </table></div>
634 <p class="since">Since 0.10.16</p>
635 </div>
636 </div>
637 </div>
638 <div class="footer">
639 <hr>
640           Generated by GTK-Doc V1.18</div>
641 </body>
642 </html>