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>playbin: GStreamer Base Plugins 1.0 Plugins Reference Manual</title> 6<meta name="generator" content="DocBook XSL Stylesheets V1.79.1"> 7<link rel="home" href="index.html" title="GStreamer Base Plugins 1.0 Plugins Reference Manual"> 8<link rel="up" href="ch01.html" title="gst-plugins-base Elements"> 9<link rel="prev" href="gst-plugins-base-plugins-parsebin.html" title="parsebin"> 10<link rel="next" href="gst-plugins-base-plugins-playbin3.html" title="playbin3"> 11<meta name="generator" content="GTK-Doc V1.28 (XML mode)"> 12<link rel="stylesheet" href="style.css" type="text/css"> 13</head> 14<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> 15<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle"> 16<td width="100%" align="left" class="shortcuts"> 17<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> 18 <a href="#gst-plugins-base-plugins-playbin.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> 19 <a href="#gst-plugins-base-plugins-playbin.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_interfaces"> <span class="dim">|</span> 20 <a href="#gst-plugins-base-plugins-playbin.implemented-interfaces" class="shortcut">Implemented Interfaces</a></span><span id="nav_properties"> <span class="dim">|</span> 21 <a href="#gst-plugins-base-plugins-playbin.properties" class="shortcut">Properties</a></span><span id="nav_signals"> <span class="dim">|</span> 22 <a href="#gst-plugins-base-plugins-playbin.signals" class="shortcut">Signals</a></span> 23</td> 24<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td> 25<td><a accesskey="u" href="ch01.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td> 26<td><a accesskey="p" href="gst-plugins-base-plugins-parsebin.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td> 27<td><a accesskey="n" href="gst-plugins-base-plugins-playbin3.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td> 28</tr></table> 29<div class="refentry"> 30<a name="gst-plugins-base-plugins-playbin"></a><div class="titlepage"></div> 31<div class="refnamediv"><table width="100%"><tr> 32<td valign="top"> 33<h2><span class="refentrytitle"><a name="gst-plugins-base-plugins-playbin.top_of_page"></a>playbin</span></h2> 34<p>playbin</p> 35</td> 36<td class="gallery_image" valign="top" align="right"></td> 37</tr></table></div> 38<div class="refsect1"> 39<a name="gst-plugins-base-plugins-playbin.properties"></a><h2>Properties</h2> 40<div class="informaltable"><table class="informaltable" border="0"> 41<colgroup> 42<col width="150px" class="properties_type"> 43<col width="300px" class="properties_name"> 44<col width="200px" class="properties_flags"> 45</colgroup> 46<tbody> 47<tr> 48<td class="property_type"> 49<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct"><span class="type">GstElement</span></a> *</td> 50<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--audio-sink" title="The “audio-sink” property">audio-sink</a></td> 51<td class="property_flags">Read / Write</td> 52</tr> 53<tr> 54<td class="property_type"> 55<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct"><span class="type">GstElement</span></a> *</td> 56<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--audio-stream-combiner" title="The “audio-stream-combiner” property">audio-stream-combiner</a></td> 57<td class="property_flags">Read / Write</td> 58</tr> 59<tr> 60<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a></td> 61<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--av-offset" title="The “av-offset” property">av-offset</a></td> 62<td class="property_flags">Read / Write</td> 63</tr> 64<tr> 65<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a></td> 66<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--buffer-duration" title="The “buffer-duration” property">buffer-duration</a></td> 67<td class="property_flags">Read / Write</td> 68</tr> 69<tr> 70<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td> 71<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--buffer-size" title="The “buffer-size” property">buffer-size</a></td> 72<td class="property_flags">Read / Write</td> 73</tr> 74<tr> 75<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a></td> 76<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--connection-speed" title="The “connection-speed” property">connection-speed</a></td> 77<td class="property_flags">Read / Write</td> 78</tr> 79<tr> 80<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td> 81<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--current-audio" title="The “current-audio” property">current-audio</a></td> 82<td class="property_flags">Read / Write</td> 83</tr> 84<tr> 85<td class="property_type"> 86<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td> 87<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--current-suburi" title="The “current-suburi” property">current-suburi</a></td> 88<td class="property_flags">Read</td> 89</tr> 90<tr> 91<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td> 92<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--current-text" title="The “current-text” property">current-text</a></td> 93<td class="property_flags">Read / Write</td> 94</tr> 95<tr> 96<td class="property_type"> 97<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td> 98<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--current-uri" title="The “current-uri” property">current-uri</a></td> 99<td class="property_flags">Read</td> 100</tr> 101<tr> 102<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td> 103<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--current-video" title="The “current-video” property">current-video</a></td> 104<td class="property_flags">Read / Write</td> 105</tr> 106<tr> 107<td class="property_type"><span class="type">GstPlayFlags</span></td> 108<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--flags" title="The “flags” property">flags</a></td> 109<td class="property_flags">Read / Write</td> 110</tr> 111<tr> 112<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td> 113<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--force-aspect-ratio" title="The “force-aspect-ratio” property">force-aspect-ratio</a></td> 114<td class="property_flags">Read / Write</td> 115</tr> 116<tr> 117<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td> 118<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--mute" title="The “mute” property">mute</a></td> 119<td class="property_flags">Read / Write</td> 120</tr> 121<tr> 122<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td> 123<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--n-audio" title="The “n-audio” property">n-audio</a></td> 124<td class="property_flags">Read</td> 125</tr> 126<tr> 127<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td> 128<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--n-text" title="The “n-text” property">n-text</a></td> 129<td class="property_flags">Read</td> 130</tr> 131<tr> 132<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></td> 133<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--n-video" title="The “n-video” property">n-video</a></td> 134<td class="property_flags">Read</td> 135</tr> 136<tr> 137<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a></td> 138<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--ring-buffer-max-size" title="The “ring-buffer-max-size” property">ring-buffer-max-size</a></td> 139<td class="property_flags">Read / Write</td> 140</tr> 141<tr> 142<td class="property_type"> 143<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstSample.html#GstSample-struct"><span class="type">GstSample</span></a> *</td> 144<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--sample" title="The “sample” property">sample</a></td> 145<td class="property_flags">Read</td> 146</tr> 147<tr> 148<td class="property_type"> 149<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct"><span class="type">GstElement</span></a> *</td> 150<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--source" title="The “source” property">source</a></td> 151<td class="property_flags">Read</td> 152</tr> 153<tr> 154<td class="property_type"> 155<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td> 156<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--subtitle-encoding" title="The “subtitle-encoding” property">subtitle-encoding</a></td> 157<td class="property_flags">Read / Write</td> 158</tr> 159<tr> 160<td class="property_type"> 161<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td> 162<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--subtitle-font-desc" title="The “subtitle-font-desc” property">subtitle-font-desc</a></td> 163<td class="property_flags">Write</td> 164</tr> 165<tr> 166<td class="property_type"> 167<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td> 168<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--suburi" title="The “suburi” property">suburi</a></td> 169<td class="property_flags">Read / Write</td> 170</tr> 171<tr> 172<td class="property_type"> 173<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct"><span class="type">GstElement</span></a> *</td> 174<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--text-sink" title="The “text-sink” property">text-sink</a></td> 175<td class="property_flags">Read / Write</td> 176</tr> 177<tr> 178<td class="property_type"> 179<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct"><span class="type">GstElement</span></a> *</td> 180<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--text-stream-combiner" title="The “text-stream-combiner” property">text-stream-combiner</a></td> 181<td class="property_flags">Read / Write</td> 182</tr> 183<tr> 184<td class="property_type"> 185<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</td> 186<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--uri" title="The “uri” property">uri</a></td> 187<td class="property_flags">Read / Write</td> 188</tr> 189<tr> 190<td class="property_type"> 191<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct"><span class="type">GstElement</span></a> *</td> 192<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--video-sink" title="The “video-sink” property">video-sink</a></td> 193<td class="property_flags">Read / Write</td> 194</tr> 195<tr> 196<td class="property_type"> 197<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct"><span class="type">GstElement</span></a> *</td> 198<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--video-stream-combiner" title="The “video-stream-combiner” property">video-stream-combiner</a></td> 199<td class="property_flags">Read / Write</td> 200</tr> 201<tr> 202<td class="property_type"> 203<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct"><span class="type">GstElement</span></a> *</td> 204<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--vis-plugin" title="The “vis-plugin” property">vis-plugin</a></td> 205<td class="property_flags">Read / Write</td> 206</tr> 207<tr> 208<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a></td> 209<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--volume" title="The “volume” property">volume</a></td> 210<td class="property_flags">Read / Write</td> 211</tr> 212<tr> 213<td class="property_type"> 214<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct"><span class="type">GstElement</span></a> *</td> 215<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--audio-filter" title="The “audio-filter” property">audio-filter</a></td> 216<td class="property_flags">Read / Write</td> 217</tr> 218<tr> 219<td class="property_type"> 220<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct"><span class="type">GstElement</span></a> *</td> 221<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--video-filter" title="The “video-filter” property">video-filter</a></td> 222<td class="property_flags">Read / Write</td> 223</tr> 224<tr> 225<td class="property_type"><a href="../html/gst-plugins-base-libs-GstVideo.html#GstVideoMultiviewFlags"><span class="type">GstVideoMultiviewFlags</span></a></td> 226<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--video-multiview-flags" title="The “video-multiview-flags” property">video-multiview-flags</a></td> 227<td class="property_flags">Read / Write</td> 228</tr> 229<tr> 230<td class="property_type"><a href="../html/gst-plugins-base-libs-GstVideo.html#GstVideoMultiviewFramePacking"><span class="type">GstVideoMultiviewFramePacking</span></a></td> 231<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--video-multiview-mode" title="The “video-multiview-mode” property">video-multiview-mode</a></td> 232<td class="property_flags">Read / Write</td> 233</tr> 234<tr> 235<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a></td> 236<td class="property_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--text-offset" title="The “text-offset” property">text-offset</a></td> 237<td class="property_flags">Read / Write</td> 238</tr> 239</tbody> 240</table></div> 241</div> 242<div class="refsect1"> 243<a name="gst-plugins-base-plugins-playbin.signals"></a><h2>Signals</h2> 244<div class="informaltable"><table class="informaltable" border="0"> 245<colgroup> 246<col width="150px" class="signals_return"> 247<col width="300px" class="signals_name"> 248<col width="200px" class="signals_flags"> 249</colgroup> 250<tbody> 251<tr> 252<td class="signal_type"><span class="returnvalue">void</span></td> 253<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-about-to-finish" title="The “about-to-finish” signal">about-to-finish</a></td> 254<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></td> 255</tr> 256<tr> 257<td class="signal_type"><span class="returnvalue">void</span></td> 258<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-audio-changed" title="The “audio-changed” signal">audio-changed</a></td> 259<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></td> 260</tr> 261<tr> 262<td class="signal_type"><span class="returnvalue">void</span></td> 263<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-audio-tags-changed" title="The “audio-tags-changed” signal">audio-tags-changed</a></td> 264<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></td> 265</tr> 266<tr> 267<td class="signal_type"> 268<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstSample.html#GstSample-struct"><span class="returnvalue">GstSample</span></a>*</td> 269<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-convert-sample" title="The “convert-sample” signal">convert-sample</a></td> 270<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></td> 271</tr> 272<tr> 273<td class="signal_type"> 274<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstPad.html#GstPad-struct"><span class="returnvalue">GstPad</span></a>*</td> 275<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-get-audio-pad" title="The “get-audio-pad” signal">get-audio-pad</a></td> 276<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></td> 277</tr> 278<tr> 279<td class="signal_type"> 280<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstTagList.html#GstTagList-struct"><span class="returnvalue">GstTagList</span></a>*</td> 281<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-get-audio-tags" title="The “get-audio-tags” signal">get-audio-tags</a></td> 282<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></td> 283</tr> 284<tr> 285<td class="signal_type"> 286<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstPad.html#GstPad-struct"><span class="returnvalue">GstPad</span></a>*</td> 287<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-get-text-pad" title="The “get-text-pad” signal">get-text-pad</a></td> 288<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></td> 289</tr> 290<tr> 291<td class="signal_type"> 292<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstTagList.html#GstTagList-struct"><span class="returnvalue">GstTagList</span></a>*</td> 293<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-get-text-tags" title="The “get-text-tags” signal">get-text-tags</a></td> 294<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></td> 295</tr> 296<tr> 297<td class="signal_type"> 298<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstPad.html#GstPad-struct"><span class="returnvalue">GstPad</span></a>*</td> 299<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-get-video-pad" title="The “get-video-pad” signal">get-video-pad</a></td> 300<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></td> 301</tr> 302<tr> 303<td class="signal_type"> 304<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstTagList.html#GstTagList-struct"><span class="returnvalue">GstTagList</span></a>*</td> 305<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-get-video-tags" title="The “get-video-tags” signal">get-video-tags</a></td> 306<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></td> 307</tr> 308<tr> 309<td class="signal_type"><span class="returnvalue">void</span></td> 310<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-source-setup" title="The “source-setup” signal">source-setup</a></td> 311<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></td> 312</tr> 313<tr> 314<td class="signal_type"><span class="returnvalue">void</span></td> 315<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-text-changed" title="The “text-changed” signal">text-changed</a></td> 316<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></td> 317</tr> 318<tr> 319<td class="signal_type"><span class="returnvalue">void</span></td> 320<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-text-tags-changed" title="The “text-tags-changed” signal">text-tags-changed</a></td> 321<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></td> 322</tr> 323<tr> 324<td class="signal_type"><span class="returnvalue">void</span></td> 325<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-video-changed" title="The “video-changed” signal">video-changed</a></td> 326<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></td> 327</tr> 328<tr> 329<td class="signal_type"><span class="returnvalue">void</span></td> 330<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-video-tags-changed" title="The “video-tags-changed” signal">video-tags-changed</a></td> 331<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></td> 332</tr> 333<tr> 334<td class="signal_type"><span class="returnvalue">void</span></td> 335<td class="signal_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-element-setup" title="The “element-setup” signal">element-setup</a></td> 336<td class="signal_flags"><a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></td> 337</tr> 338</tbody> 339</table></div> 340</div> 341<a name="GstPlayBin"></a><div class="refsect1"> 342<a name="gst-plugins-base-plugins-playbin.other"></a><h2>Types and Values</h2> 343<div class="informaltable"><table class="informaltable" width="100%" border="0"> 344<colgroup> 345<col width="150px" class="name"> 346<col class="description"> 347</colgroup> 348<tbody><tr> 349<td class="datatype_keyword">struct</td> 350<td class="function_name"><a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin-struct" title="struct GstPlayBin">GstPlayBin</a></td> 351</tr></tbody> 352</table></div> 353</div> 354<div class="refsect1"> 355<a name="gst-plugins-base-plugins-playbin.object-hierarchy"></a><h2>Object Hierarchy</h2> 356<pre class="screen"> <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject-struct">GObject</a> 357 <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a> 358 <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstObject.html#GstObject-struct">GstObject</a> 359 <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct">GstElement</a> 360 <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBin.html#GstBin-struct">GstBin</a> 361 <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstPipeline.html#GstPipeline-struct">GstPipeline</a> 362 <span class="lineart">╰──</span> GstPlayBin 363</pre> 364</div> 365<div class="refsect1"> 366<a name="gst-plugins-base-plugins-playbin.implemented-interfaces"></a><h2>Implemented Interfaces</h2> 367<p> 368GstPlayBin implements 369 <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstChildProxy.html#GstChildProxy-struct">GstChildProxy</a>, <a href="../html/GstStreamVolume.html#GstStreamVolume-struct">GstStreamVolume</a>, <a href="../html/GstVideoOverlay.html#GstVideoOverlay-struct">GstVideoOverlay</a>, <a href="../html/GstNavigation.html#GstNavigation-struct">GstNavigation</a> and <a href="../html/GstColorBalance.html#GstColorBalance-struct">GstColorBalance</a>.</p> 370</div> 371<div class="refsect1"> 372<a name="gst-plugins-base-plugins-playbin.description"></a><h2>Description</h2> 373<p>Playbin provides a stand-alone everything-in-one abstraction for an 374audio and/or video player.</p> 375<p>Playbin can handle both audio and video files and features</p> 376<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> 377<li class="listitem"><p>automatic file type recognition and based on that automatic 378selection and usage of the right audio/video/subtitle demuxers/decoders</p></li> 379<li class="listitem"><p>visualisations for audio files</p></li> 380<li class="listitem"><p>subtitle support for video files. Subtitles can be store in external 381files.</p></li> 382<li class="listitem"><p>stream selection between different video/audio/subtitles streams</p></li> 383<li class="listitem"><p>meta info (tag) extraction</p></li> 384<li class="listitem"><p>easy access to the last video sample</p></li> 385<li class="listitem"><p>buffering when playing streams over a network</p></li> 386<li class="listitem"><p>volume control with mute option</p></li> 387</ul></div> 388<div class="refsect3"> 389<a name="id-1.2.83.9.5"></a><h4>Usage</h4> 390<p>A playbin element can be created just like any other element using 391<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElementFactory.html#gst-element-factory-make"><code class="function">gst_element_factory_make()</code></a>. The file/URI to play should be set via the <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--uri" title="The “uri” property"><span class="type">“uri”</span></a> 392property. This must be an absolute URI, relative file paths are not allowed. 393Example URIs are file:///home/joe/movie.avi or http://www.joedoe.com/foo.ogg</p> 394<p>Playbin is a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstPipeline.html#GstPipeline-struct"><span class="type">GstPipeline</span></a>. It will notify the application of everything 395that's happening (errors, end of stream, tags found, state changes, etc.) 396by posting messages on its <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBus.html#GstBus-struct"><span class="type">GstBus</span></a>. The application needs to watch the 397bus.</p> 398<p>Playback can be initiated by setting the element to PLAYING state using 399<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#gst-element-set-state"><code class="function">gst_element_set_state()</code></a>. Note that the state change will take place in 400the background in a separate thread, when the function returns playback 401is probably not happening yet and any errors might not have occured yet. 402Applications using playbin should ideally be written to deal with things 403completely asynchroneous.</p> 404<p>When playback has finished (an EOS message has been received on the bus) 405or an error has occured (an ERROR message has been received on the bus) or 406the user wants to play a different track, playbin should be set back to 407READY or NULL state, then the <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--uri" title="The “uri” property"><span class="type">“uri”</span></a> property should be set to the 408new location and then playbin be set to PLAYING state again.</p> 409<p>Seeking can be done using <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#gst-element-seek-simple"><code class="function">gst_element_seek_simple()</code></a> or <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#gst-element-seek"><code class="function">gst_element_seek()</code></a> 410on the playbin element. Again, the seek will not be executed 411instantaneously, but will be done in a background thread. When the seek 412call returns the seek will most likely still be in process. An application 413may wait for the seek to finish (or fail) using <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#gst-element-get-state"><code class="function">gst_element_get_state()</code></a> with 414-1 as the timeout, but this will block the user interface and is not 415recommended at all.</p> 416<p>Applications may query the current position and duration of the stream 417via <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#gst-element-query-position"><code class="function">gst_element_query_position()</code></a> and <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#gst-element-query-duration"><code class="function">gst_element_query_duration()</code></a> and 418setting the format passed to GST_FORMAT_TIME. If the query was successful, 419the duration or position will have been returned in units of nanoseconds.</p> 420</div> 421<div class="refsect3"> 422<a name="id-1.2.83.9.6"></a><h4>Advanced Usage: specifying the audio and video sink</h4> 423<p>By default, if no audio sink or video sink has been specified via the 424<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--audio-sink" title="The “audio-sink” property"><span class="type">“audio-sink”</span></a> or <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--video-sink" title="The “video-sink” property"><span class="type">“video-sink”</span></a> property, playbin will use the autoaudiosink 425and autovideosink elements to find the first-best available output method. 426This should work in most cases, but is not always desirable. Often either 427the user or application might want to specify more explicitly what to use 428for audio and video output.</p> 429<p>If the application wants more control over how audio or video should be 430output, it may create the audio/video sink elements itself (for example 431using <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElementFactory.html#gst-element-factory-make"><code class="function">gst_element_factory_make()</code></a>) and provide them to playbin using the 432<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--audio-sink" title="The “audio-sink” property"><span class="type">“audio-sink”</span></a> or <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin--video-sink" title="The “video-sink” property"><span class="type">“video-sink”</span></a> property.</p> 433<p>GNOME-based applications, for example, will usually want to create 434gconfaudiosink and gconfvideosink elements and make playbin use those, 435so that output happens to whatever the user has configured in the GNOME 436Multimedia System Selector configuration dialog.</p> 437<p>The sink elements do not necessarily need to be ready-made sinks. It is 438possible to create container elements that look like a sink to playbin, 439but in reality contain a number of custom elements linked together. This 440can be achieved by creating a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstBin.html#GstBin-struct"><span class="type">GstBin</span></a> and putting elements in there and 441linking them, and then creating a sink <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstGhostPad.html#GstGhostPad-struct"><span class="type">GstGhostPad</span></a> for the bin and pointing 442it to the sink pad of the first element within the bin. This can be used 443for a number of purposes, for example to force output to a particular 444format or to modify or observe the data before it is output.</p> 445<p>It is also possible to 'suppress' audio and/or video output by using 446'fakesink' elements (or capture it from there using the fakesink element's 447"handoff" signal, which, nota bene, is fired from the streaming thread!).</p> 448</div> 449<div class="refsect3"> 450<a name="id-1.2.83.9.7"></a><h4>Retrieving Tags and Other Meta Data</h4> 451<p>Most of the common meta data (artist, title, etc.) can be retrieved by 452watching for TAG messages on the pipeline's bus (see above).</p> 453<p>Other more specific meta information like width/height/framerate of video 454streams or samplerate/number of channels of audio streams can be obtained 455from the negotiated caps on the sink pads of the sinks.</p> 456</div> 457<div class="refsect3"> 458<a name="id-1.2.83.9.8"></a><h4>Buffering</h4> 459<p>Playbin handles buffering automatically for the most part, but applications 460need to handle parts of the buffering process as well. Whenever playbin is 461buffering, it will post BUFFERING messages on the bus with a percentage 462value that shows the progress of the buffering process. Applications need 463to set playbin to PLAYING or PAUSED state in response to these messages. 464They may also want to convey the buffering progress to the user in some 465way. Here is how to extract the percentage information from the message:</p> 466<div class="informalexample"> 467 <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> 468 <tbody> 469 <tr> 470 <td class="listing_lines" align="right"><pre>1 4712 4723 4734 4745 4756 4767 4778 4789</pre></td> 479 <td class="listing_code"><pre class="programlisting"><span class="keyword">switch</span> <span class="gtkdoc opt">(</span><span class="function"><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstMessage.html#GST-MESSAGE-TYPE:CAPS">GST_MESSAGE_TYPE</a></span> <span class="gtkdoc opt">(</span>msg<span class="gtkdoc opt">)) {</span> 480 <span class="keyword">case</span> GST_MESSAGE_BUFFERING<span class="gtkdoc opt">: {</span> 481 gint percent <span class="gtkdoc opt">=</span> <span class="number">0</span><span class="gtkdoc opt">;</span> 482 <span class="function"><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstMessage.html#gst-message-parse-buffering">gst_message_parse_buffering</a></span> <span class="gtkdoc opt">(</span>msg<span class="gtkdoc opt">, &</span>percent<span class="gtkdoc opt">);</span> 483 <span class="function"><a href="/usr/share/gtk-doc/html/glib/glib-Warnings-and-Assertions.html#g-print">g_print</a></span> <span class="gtkdoc opt">(</span><span class="string">"Buffering (%u percent done)"</span><span class="gtkdoc opt">,</span> percent<span class="gtkdoc opt">);</span> 484 <span class="keyword">break</span><span class="gtkdoc opt">;</span> 485 <span class="gtkdoc opt">}</span> 486 <span class="gtkdoc opt">...</span> 487<span class="gtkdoc opt">}</span></pre></td> 488 </tr> 489 </tbody> 490 </table> 491</div> 492 493<p></p> 494<p>Note that applications should keep/set the pipeline in the PAUSED state when 495a BUFFERING message is received with a buffer percent value < 100 and set 496the pipeline back to PLAYING state when a BUFFERING message with a value 497of 100 percent is received (if PLAYING is the desired state, that is).</p> 498</div> 499<div class="refsect3"> 500<a name="id-1.2.83.9.9"></a><h4>Embedding the video window in your application</h4> 501<p>By default, playbin (or rather the video sinks used) will create their own 502window. Applications will usually want to force output to a window of their 503own, however. This can be done using the <a href="../html/GstVideoOverlay.html#GstVideoOverlay-struct"><span class="type">GstVideoOverlay</span></a> interface, which most 504video sinks implement. See the documentation there for more details.</p> 505</div> 506<div class="refsect3"> 507<a name="id-1.2.83.9.10"></a><h4>Specifying which CD/DVD device to use</h4> 508<p>The device to use for CDs/DVDs needs to be set on the source element 509playbin creates before it is opened. The most generic way of doing this 510is to connect to playbin's "source-setup" (or "notify::source") signal, 511which will be emitted by playbin when it has created the source element 512for a particular URI. In the signal callback you can check if the source 513element has a "device" property and set it appropriately. In some cases 514the device can also be set as part of the URI, but it depends on the 515elements involved if this will work or not. For example, for DVD menu 516playback, the following syntax might work (if the resindvd plugin is used): 517dvd://[/path/to/device]</p> 518</div> 519<div class="refsect3"> 520<a name="id-1.2.83.9.11"></a><h4>Handling redirects</h4> 521<p>Some elements may post 'redirect' messages on the bus to tell the 522application to open another location. These are element messages containing 523a structure named 'redirect' along with a 'new-location' field of string 524type. The new location may be a relative or an absolute URI. Examples 525for such redirects can be found in many quicktime movie trailers.</p> 526</div> 527<div class="refsect3"> 528<a name="id-1.2.83.9.12"></a><h4>Examples</h4> 529<div class="informalexample"> 530 <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> 531 <tbody> 532 <tr> 533 <td class="listing_lines" align="right"><pre>1</pre></td> 534 <td class="listing_code"><pre class="programlisting">gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span class="number">1.0</span> <span class="gtkdoc opt">-</span>v playbin uri<span class="gtkdoc opt">=</span>file<span class="gtkdoc opt">:</span><span class="gtkdoc slc">///path/to/somefile.mp4</span></pre></td> 535 </tr> 536 </tbody> 537 </table> 538</div> 539 540<p> 541 This will play back the given AVI video file, given that the video and 542audio decoders required to decode the content are installed. Since no 543special audio sink or video sink is supplied (via playbin's audio-sink or 544video-sink properties) playbin will try to find a suitable audio and 545video sink automatically using the autoaudiosink and autovideosink elements.</p> 546<div class="informalexample"> 547 <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> 548 <tbody> 549 <tr> 550 <td class="listing_lines" align="right"><pre>1</pre></td> 551 <td class="listing_code"><pre class="programlisting">gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span class="number">1.0</span> <span class="gtkdoc opt">-</span>v playbin uri<span class="gtkdoc opt">=</span>cdda<span class="gtkdoc opt">:</span><span class="gtkdoc slc">//4</span></pre></td> 552 </tr> 553 </tbody> 554 </table> 555</div> 556 557<p> 558 This will play back track 4 on an audio CD in your disc drive (assuming 559the drive is detected automatically by the plugin).</p> 560<div class="informalexample"> 561 <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> 562 <tbody> 563 <tr> 564 <td class="listing_lines" align="right"><pre>1</pre></td> 565 <td class="listing_code"><pre class="programlisting">gst<span class="gtkdoc opt">-</span>launch<span class="gtkdoc opt">-</span><span class="number">1.0</span> <span class="gtkdoc opt">-</span>v playbin uri<span class="gtkdoc opt">=</span>dvd<span class="gtkdoc opt">:</span><span class="gtkdoc slc">//</span></pre></td> 566 </tr> 567 </tbody> 568 </table> 569</div> 570 571<p> 572 This will play back the DVD in your disc drive (assuming 573the drive is detected automatically by the plugin).</p> 574</div> 575<div class="refsynopsisdiv"> 576<h2>Synopsis</h2> 577<div class="refsect2"> 578<a name="id-1.2.83.9.13.1"></a><h3>Element Information</h3> 579<div class="variablelist"><table border="0" class="variablelist"> 580<colgroup> 581<col align="left" valign="top"> 582<col> 583</colgroup> 584<tbody> 585<tr> 586<td><p><span class="term">plugin</span></p></td> 587<td> 588 <a class="link" href="gst-plugins-base-plugins-plugin-playback.html#plugin-playback">playback</a> 589 </td> 590</tr> 591<tr> 592<td><p><span class="term">author</span></p></td> 593<td>Wim Taymans <wim.taymans@gmail.com></td> 594</tr> 595<tr> 596<td><p><span class="term">class</span></p></td> 597<td>Generic/Bin/Player</td> 598</tr> 599</tbody> 600</table></div> 601</div> 602<hr> 603<div class="refsect2"> 604<a name="id-1.2.83.9.13.2"></a><h3>Element Pads</h3> 605</div> 606</div> 607</div> 608<div class="refsect1"> 609<a name="gst-plugins-base-plugins-playbin.functions_details"></a><h2>Functions</h2> 610<p></p> 611</div> 612<div class="refsect1"> 613<a name="gst-plugins-base-plugins-playbin.other_details"></a><h2>Types and Values</h2> 614<div class="refsect2"> 615<a name="GstPlayBin-struct"></a><h3>struct GstPlayBin</h3> 616<pre class="programlisting">struct GstPlayBin;</pre> 617<p>playbin element structure</p> 618</div> 619</div> 620<div class="refsect1"> 621<a name="gst-plugins-base-plugins-playbin.property-details"></a><h2>Property Details</h2> 622<div class="refsect2"> 623<a name="GstPlayBin--audio-sink"></a><h3>The <code class="literal">“audio-sink”</code> property</h3> 624<pre class="programlisting"> “audio-sink” <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct"><span class="type">GstElement</span></a> *</pre> 625<p>the audio output element to use (NULL = default sink).</p> 626<p>Flags: Read / Write</p> 627</div> 628<hr> 629<div class="refsect2"> 630<a name="GstPlayBin--audio-stream-combiner"></a><h3>The <code class="literal">“audio-stream-combiner”</code> property</h3> 631<pre class="programlisting"> “audio-stream-combiner” <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct"><span class="type">GstElement</span></a> *</pre> 632<p>Get or set the current audio stream combiner. By default, an input-selector 633is created and deleted as-needed.</p> 634<p>Flags: Read / Write</p> 635</div> 636<hr> 637<div class="refsect2"> 638<a name="GstPlayBin--av-offset"></a><h3>The <code class="literal">“av-offset”</code> property</h3> 639<pre class="programlisting"> “av-offset” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a></pre> 640<p>Control the synchronisation offset between the audio and video streams. 641Positive values make the audio ahead of the video and negative values make 642the audio go behind the video.</p> 643<p>Flags: Read / Write</p> 644<p>Default value: 0</p> 645</div> 646<hr> 647<div class="refsect2"> 648<a name="GstPlayBin--buffer-duration"></a><h3>The <code class="literal">“buffer-duration”</code> property</h3> 649<pre class="programlisting"> “buffer-duration” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a></pre> 650<p>Buffer duration when buffering network streams.</p> 651<p>Flags: Read / Write</p> 652<p>Allowed values: >= G_MAXULONG</p> 653<p>Default value: -1</p> 654</div> 655<hr> 656<div class="refsect2"> 657<a name="GstPlayBin--buffer-size"></a><h3>The <code class="literal">“buffer-size”</code> property</h3> 658<pre class="programlisting"> “buffer-size” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre> 659<p>Buffer size when buffering network streams.</p> 660<p>Flags: Read / Write</p> 661<p>Allowed values: >= G_MAXULONG</p> 662<p>Default value: -1</p> 663</div> 664<hr> 665<div class="refsect2"> 666<a name="GstPlayBin--connection-speed"></a><h3>The <code class="literal">“connection-speed”</code> property</h3> 667<pre class="programlisting"> “connection-speed” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a></pre> 668<p>Network connection speed in kbps (0 = unknown).</p> 669<p>Flags: Read / Write</p> 670<p>Allowed values: <= 18446744073709551</p> 671<p>Default value: 0</p> 672</div> 673<hr> 674<div class="refsect2"> 675<a name="GstPlayBin--current-audio"></a><h3>The <code class="literal">“current-audio”</code> property</h3> 676<pre class="programlisting"> “current-audio” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre> 677<p>Get or set the currently playing audio stream. By default the first audio 678stream with data is played.</p> 679<p>Flags: Read / Write</p> 680<p>Allowed values: >= G_MAXULONG</p> 681<p>Default value: -1</p> 682</div> 683<hr> 684<div class="refsect2"> 685<a name="GstPlayBin--current-suburi"></a><h3>The <code class="literal">“current-suburi”</code> property</h3> 686<pre class="programlisting"> “current-suburi” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre> 687<p>The currently playing subtitle uri.</p> 688<p>Flags: Read</p> 689<p>Default value: NULL</p> 690</div> 691<hr> 692<div class="refsect2"> 693<a name="GstPlayBin--current-text"></a><h3>The <code class="literal">“current-text”</code> property</h3> 694<pre class="programlisting"> “current-text” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre> 695<p>Get or set the currently playing subtitle stream. By default the first 696subtitle stream with data is played.</p> 697<p>Flags: Read / Write</p> 698<p>Allowed values: >= G_MAXULONG</p> 699<p>Default value: -1</p> 700</div> 701<hr> 702<div class="refsect2"> 703<a name="GstPlayBin--current-uri"></a><h3>The <code class="literal">“current-uri”</code> property</h3> 704<pre class="programlisting"> “current-uri” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre> 705<p>The currently playing uri.</p> 706<p>Flags: Read</p> 707<p>Default value: NULL</p> 708</div> 709<hr> 710<div class="refsect2"> 711<a name="GstPlayBin--current-video"></a><h3>The <code class="literal">“current-video”</code> property</h3> 712<pre class="programlisting"> “current-video” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre> 713<p>Get or set the currently playing video stream. By default the first video 714stream with data is played.</p> 715<p>Flags: Read / Write</p> 716<p>Allowed values: >= G_MAXULONG</p> 717<p>Default value: -1</p> 718</div> 719<hr> 720<div class="refsect2"> 721<a name="GstPlayBin--flags"></a><h3>The <code class="literal">“flags”</code> property</h3> 722<pre class="programlisting"> “flags” <span class="type">GstPlayFlags</span></pre> 723<p>Control the behaviour of playbin.</p> 724<p>Flags: Read / Write</p> 725<p>Default value: Render the video stream|Render the audio stream|Render subtitles|Use software volume|Deinterlace video if necessary|Use software color balance</p> 726</div> 727<hr> 728<div class="refsect2"> 729<a name="GstPlayBin--force-aspect-ratio"></a><h3>The <code class="literal">“force-aspect-ratio”</code> property</h3> 730<pre class="programlisting"> “force-aspect-ratio” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre> 731<p>When enabled, scaling will respect original aspect ratio.</p> 732<p>Flags: Read / Write</p> 733<p>Default value: TRUE</p> 734</div> 735<hr> 736<div class="refsect2"> 737<a name="GstPlayBin--mute"></a><h3>The <code class="literal">“mute”</code> property</h3> 738<pre class="programlisting"> “mute” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre> 739<p>Mute the audio channel without changing the volume.</p> 740<p>Flags: Read / Write</p> 741<p>Default value: FALSE</p> 742</div> 743<hr> 744<div class="refsect2"> 745<a name="GstPlayBin--n-audio"></a><h3>The <code class="literal">“n-audio”</code> property</h3> 746<pre class="programlisting"> “n-audio” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre> 747<p>Get the total number of available audio streams.</p> 748<p>Flags: Read</p> 749<p>Allowed values: >= 0</p> 750<p>Default value: 0</p> 751</div> 752<hr> 753<div class="refsect2"> 754<a name="GstPlayBin--n-text"></a><h3>The <code class="literal">“n-text”</code> property</h3> 755<pre class="programlisting"> “n-text” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre> 756<p>Get the total number of available subtitle streams.</p> 757<p>Flags: Read</p> 758<p>Allowed values: >= 0</p> 759<p>Default value: 0</p> 760</div> 761<hr> 762<div class="refsect2"> 763<a name="GstPlayBin--n-video"></a><h3>The <code class="literal">“n-video”</code> property</h3> 764<pre class="programlisting"> “n-video” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a></pre> 765<p>Get the total number of available video streams.</p> 766<p>Flags: Read</p> 767<p>Allowed values: >= 0</p> 768<p>Default value: 0</p> 769</div> 770<hr> 771<div class="refsect2"> 772<a name="GstPlayBin--ring-buffer-max-size"></a><h3>The <code class="literal">“ring-buffer-max-size”</code> property</h3> 773<pre class="programlisting"> “ring-buffer-max-size” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a></pre> 774<p>The maximum size of the ring buffer in bytes. If set to 0, the ring 775buffer is disabled. Default 0.</p> 776<p>Flags: Read / Write</p> 777<p>Allowed values: <= G_MAXUINT</p> 778<p>Default value: 0</p> 779</div> 780<hr> 781<div class="refsect2"> 782<a name="GstPlayBin--sample"></a><h3>The <code class="literal">“sample”</code> property</h3> 783<pre class="programlisting"> “sample” <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstSample.html#GstSample-struct"><span class="type">GstSample</span></a> *</pre> 784<p>Get the currently rendered or prerolled sample in the video sink. 785The <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstCaps.html#GstCaps-struct"><span class="type">GstCaps</span></a> in the sample will describe the format of the buffer.</p> 786<p>Flags: Read</p> 787</div> 788<hr> 789<div class="refsect2"> 790<a name="GstPlayBin--source"></a><h3>The <code class="literal">“source”</code> property</h3> 791<pre class="programlisting"> “source” <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct"><span class="type">GstElement</span></a> *</pre> 792<p>Source element.</p> 793<p>Flags: Read</p> 794</div> 795<hr> 796<div class="refsect2"> 797<a name="GstPlayBin--subtitle-encoding"></a><h3>The <code class="literal">“subtitle-encoding”</code> property</h3> 798<pre class="programlisting"> “subtitle-encoding” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre> 799<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> 800<p>Flags: Read / Write</p> 801<p>Default value: NULL</p> 802</div> 803<hr> 804<div class="refsect2"> 805<a name="GstPlayBin--subtitle-font-desc"></a><h3>The <code class="literal">“subtitle-font-desc”</code> property</h3> 806<pre class="programlisting"> “subtitle-font-desc” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre> 807<p>Pango font description of font to be used for subtitle rendering.</p> 808<p>Flags: Write</p> 809<p>Default value: NULL</p> 810</div> 811<hr> 812<div class="refsect2"> 813<a name="GstPlayBin--suburi"></a><h3>The <code class="literal">“suburi”</code> property</h3> 814<pre class="programlisting"> “suburi” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre> 815<p>Set the next subtitle URI that playbin will play. This property can be 816set from the about-to-finish signal to queue the next subtitle media file.</p> 817<p>Flags: Read / Write</p> 818<p>Default value: NULL</p> 819</div> 820<hr> 821<div class="refsect2"> 822<a name="GstPlayBin--text-sink"></a><h3>The <code class="literal">“text-sink”</code> property</h3> 823<pre class="programlisting"> “text-sink” <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct"><span class="type">GstElement</span></a> *</pre> 824<p>the text output element to use (NULL = default subtitleoverlay).</p> 825<p>Flags: Read / Write</p> 826</div> 827<hr> 828<div class="refsect2"> 829<a name="GstPlayBin--text-stream-combiner"></a><h3>The <code class="literal">“text-stream-combiner”</code> property</h3> 830<pre class="programlisting"> “text-stream-combiner” <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct"><span class="type">GstElement</span></a> *</pre> 831<p>Get or set the current text stream combiner. By default, an input-selector 832is created and deleted as-needed.</p> 833<p>Flags: Read / Write</p> 834</div> 835<hr> 836<div class="refsect2"> 837<a name="GstPlayBin--uri"></a><h3>The <code class="literal">“uri”</code> property</h3> 838<pre class="programlisting"> “uri” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *</pre> 839<p>Set the next URI that playbin will play. This property can be set from the 840about-to-finish signal to queue the next media file.</p> 841<p>Flags: Read / Write</p> 842<p>Default value: NULL</p> 843</div> 844<hr> 845<div class="refsect2"> 846<a name="GstPlayBin--video-sink"></a><h3>The <code class="literal">“video-sink”</code> property</h3> 847<pre class="programlisting"> “video-sink” <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct"><span class="type">GstElement</span></a> *</pre> 848<p>the video output element to use (NULL = default sink).</p> 849<p>Flags: Read / Write</p> 850</div> 851<hr> 852<div class="refsect2"> 853<a name="GstPlayBin--video-stream-combiner"></a><h3>The <code class="literal">“video-stream-combiner”</code> property</h3> 854<pre class="programlisting"> “video-stream-combiner” <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct"><span class="type">GstElement</span></a> *</pre> 855<p>Get or set the current video stream combiner. By default, an input-selector 856is created and deleted as-needed.</p> 857<p>Flags: Read / Write</p> 858</div> 859<hr> 860<div class="refsect2"> 861<a name="GstPlayBin--vis-plugin"></a><h3>The <code class="literal">“vis-plugin”</code> property</h3> 862<pre class="programlisting"> “vis-plugin” <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct"><span class="type">GstElement</span></a> *</pre> 863<p>the visualization element to use (NULL = default).</p> 864<p>Flags: Read / Write</p> 865</div> 866<hr> 867<div class="refsect2"> 868<a name="GstPlayBin--volume"></a><h3>The <code class="literal">“volume”</code> property</h3> 869<pre class="programlisting"> “volume” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a></pre> 870<p>Get or set the current audio stream volume. 1.0 means 100%, 8710.0 means mute. This uses a linear volume scale.</p> 872<p>Flags: Read / Write</p> 873<p>Allowed values: [0,10]</p> 874<p>Default value: 1</p> 875</div> 876<hr> 877<div class="refsect2"> 878<a name="GstPlayBin--audio-filter"></a><h3>The <code class="literal">“audio-filter”</code> property</h3> 879<pre class="programlisting"> “audio-filter” <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct"><span class="type">GstElement</span></a> *</pre> 880<p>the audio filter(s) to apply, if possible.</p> 881<p>Flags: Read / Write</p> 882</div> 883<hr> 884<div class="refsect2"> 885<a name="GstPlayBin--video-filter"></a><h3>The <code class="literal">“video-filter”</code> property</h3> 886<pre class="programlisting"> “video-filter” <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct"><span class="type">GstElement</span></a> *</pre> 887<p>the video filter(s) to apply, if possible.</p> 888<p>Flags: Read / Write</p> 889</div> 890<hr> 891<div class="refsect2"> 892<a name="GstPlayBin--video-multiview-flags"></a><h3>The <code class="literal">“video-multiview-flags”</code> property</h3> 893<pre class="programlisting"> “video-multiview-flags” <a href="../html/gst-plugins-base-libs-GstVideo.html#GstVideoMultiviewFlags"><span class="type">GstVideoMultiviewFlags</span></a></pre> 894<p>Override details of the multiview frame layout.</p> 895<p>Flags: Read / Write</p> 896</div> 897<hr> 898<div class="refsect2"> 899<a name="GstPlayBin--video-multiview-mode"></a><h3>The <code class="literal">“video-multiview-mode”</code> property</h3> 900<pre class="programlisting"> “video-multiview-mode” <a href="../html/gst-plugins-base-libs-GstVideo.html#GstVideoMultiviewFramePacking"><span class="type">GstVideoMultiviewFramePacking</span></a></pre> 901<p>Re-interpret a video stream as one of several frame-packed stereoscopic modes.</p> 902<p>Flags: Read / Write</p> 903<p>Default value: GST_VIDEO_MULTIVIEW_FRAME_PACKING_NONE</p> 904</div> 905<hr> 906<div class="refsect2"> 907<a name="GstPlayBin--text-offset"></a><h3>The <code class="literal">“text-offset”</code> property</h3> 908<pre class="programlisting"> “text-offset” <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a></pre> 909<p>Control the synchronisation offset between the text and video streams. 910Positive values make the text ahead of the video and negative values make 911the text go behind the video.</p> 912<p>Flags: Read / Write</p> 913<p>Default value: 0</p> 914</div> 915</div> 916<div class="refsect1"> 917<a name="gst-plugins-base-plugins-playbin.signal-details"></a><h2>Signal Details</h2> 918<div class="refsect2"> 919<a name="GstPlayBin-about-to-finish"></a><h3>The <code class="literal">“about-to-finish”</code> signal</h3> 920<pre class="programlisting"><span class="returnvalue">void</span> 921user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin, 922 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre> 923<p>This signal is emitted when the current uri is about to finish. You can 924set the uri and suburi to make sure that playback continues.</p> 925<p>This signal is emitted from the context of a GStreamer streaming thread.</p> 926<div class="refsect3"> 927<a name="GstPlayBin-about-to-finish.parameters"></a><h4>Parameters</h4> 928<div class="informaltable"><table class="informaltable" width="100%" border="0"> 929<colgroup> 930<col width="150px" class="parameters_name"> 931<col class="parameters_description"> 932<col width="200px" class="parameters_annotations"> 933</colgroup> 934<tbody> 935<tr> 936<td class="parameter_name"><p>playbin</p></td> 937<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td> 938<td class="parameter_annotations"> </td> 939</tr> 940<tr> 941<td class="parameter_name"><p>user_data</p></td> 942<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td> 943<td class="parameter_annotations"> </td> 944</tr> 945</tbody> 946</table></div> 947</div> 948<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></p> 949</div> 950<hr> 951<div class="refsect2"> 952<a name="GstPlayBin-audio-changed"></a><h3>The <code class="literal">“audio-changed”</code> signal</h3> 953<pre class="programlisting"><span class="returnvalue">void</span> 954user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin, 955 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre> 956<p>This signal is emitted whenever the number or order of the audio 957streams has changed. The application will most likely want to select 958a new audio stream.</p> 959<p>This signal may be emitted from the context of a GStreamer streaming thread. 960You can use <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstMessage.html#gst-message-new-application"><code class="function">gst_message_new_application()</code></a> and <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#gst-element-post-message"><code class="function">gst_element_post_message()</code></a> 961to notify your application's main thread.</p> 962<div class="refsect3"> 963<a name="GstPlayBin-audio-changed.parameters"></a><h4>Parameters</h4> 964<div class="informaltable"><table class="informaltable" width="100%" border="0"> 965<colgroup> 966<col width="150px" class="parameters_name"> 967<col class="parameters_description"> 968<col width="200px" class="parameters_annotations"> 969</colgroup> 970<tbody> 971<tr> 972<td class="parameter_name"><p>playbin</p></td> 973<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td> 974<td class="parameter_annotations"> </td> 975</tr> 976<tr> 977<td class="parameter_name"><p>user_data</p></td> 978<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td> 979<td class="parameter_annotations"> </td> 980</tr> 981</tbody> 982</table></div> 983</div> 984<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></p> 985</div> 986<hr> 987<div class="refsect2"> 988<a name="GstPlayBin-audio-tags-changed"></a><h3>The <code class="literal">“audio-tags-changed”</code> signal</h3> 989<pre class="programlisting"><span class="returnvalue">void</span> 990user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin, 991 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> stream, 992 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre> 993<p>This signal is emitted whenever the tags of an audio stream have changed. 994The application will most likely want to get the new tags.</p> 995<p>This signal may be emitted from the context of a GStreamer streaming thread. 996You can use <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstMessage.html#gst-message-new-application"><code class="function">gst_message_new_application()</code></a> and <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#gst-element-post-message"><code class="function">gst_element_post_message()</code></a> 997to notify your application's main thread.</p> 998<div class="refsect3"> 999<a name="GstPlayBin-audio-tags-changed.parameters"></a><h4>Parameters</h4> 1000<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1001<colgroup> 1002<col width="150px" class="parameters_name"> 1003<col class="parameters_description"> 1004<col width="200px" class="parameters_annotations"> 1005</colgroup> 1006<tbody> 1007<tr> 1008<td class="parameter_name"><p>playbin</p></td> 1009<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td> 1010<td class="parameter_annotations"> </td> 1011</tr> 1012<tr> 1013<td class="parameter_name"><p>stream</p></td> 1014<td class="parameter_description"><p>stream index with changed tags</p></td> 1015<td class="parameter_annotations"> </td> 1016</tr> 1017<tr> 1018<td class="parameter_name"><p>user_data</p></td> 1019<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td> 1020<td class="parameter_annotations"> </td> 1021</tr> 1022</tbody> 1023</table></div> 1024</div> 1025<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></p> 1026</div> 1027<hr> 1028<div class="refsect2"> 1029<a name="GstPlayBin-convert-sample"></a><h3>The <code class="literal">“convert-sample”</code> signal</h3> 1030<pre class="programlisting"><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstSample.html#GstSample-struct"><span class="returnvalue">GstSample</span></a>* 1031user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin, 1032 <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstCaps.html#GstCaps-struct"><span class="type">GstCaps</span></a> *caps, 1033 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre> 1034<p>Action signal to retrieve the currently playing video frame in the format 1035specified by <em class="parameter"><code>caps</code></em> 1036. 1037If <em class="parameter"><code>caps</code></em> 1038 is <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, no conversion will be performed and this function is 1039equivalent to the <span class="type">“sample”</span> property.</p> 1040<div class="refsect3"> 1041<a name="GstPlayBin-convert-sample.parameters"></a><h4>Parameters</h4> 1042<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1043<colgroup> 1044<col width="150px" class="parameters_name"> 1045<col class="parameters_description"> 1046<col width="200px" class="parameters_annotations"> 1047</colgroup> 1048<tbody> 1049<tr> 1050<td class="parameter_name"><p>playbin</p></td> 1051<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td> 1052<td class="parameter_annotations"> </td> 1053</tr> 1054<tr> 1055<td class="parameter_name"><p>caps</p></td> 1056<td class="parameter_description"><p>the target format of the frame</p></td> 1057<td class="parameter_annotations"> </td> 1058</tr> 1059<tr> 1060<td class="parameter_name"><p>user_data</p></td> 1061<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td> 1062<td class="parameter_annotations"> </td> 1063</tr> 1064</tbody> 1065</table></div> 1066</div> 1067<div class="refsect3"> 1068<a name="GstPlayBin-convert-sample.returns"></a><h4>Returns</h4> 1069<p> a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstSample.html#GstSample-struct"><span class="type">GstSample</span></a> of the current video frame converted to <span class="type">caps</span>. 1070The caps on the sample will describe the final layout of the buffer data. 1071<a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> is returned when no current buffer can be retrieved or when the 1072conversion failed.</p> 1073</div> 1074<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></p> 1075</div> 1076<hr> 1077<div class="refsect2"> 1078<a name="GstPlayBin-get-audio-pad"></a><h3>The <code class="literal">“get-audio-pad”</code> signal</h3> 1079<pre class="programlisting"><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstPad.html#GstPad-struct"><span class="returnvalue">GstPad</span></a>* 1080user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin, 1081 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> stream, 1082 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre> 1083<p>Action signal to retrieve the stream-combiner sinkpad for a specific 1084audio stream. 1085This pad can be used for notifications of caps changes, stream-specific 1086queries, etc.</p> 1087<div class="refsect3"> 1088<a name="GstPlayBin-get-audio-pad.parameters"></a><h4>Parameters</h4> 1089<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1090<colgroup> 1091<col width="150px" class="parameters_name"> 1092<col class="parameters_description"> 1093<col width="200px" class="parameters_annotations"> 1094</colgroup> 1095<tbody> 1096<tr> 1097<td class="parameter_name"><p>playbin</p></td> 1098<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td> 1099<td class="parameter_annotations"> </td> 1100</tr> 1101<tr> 1102<td class="parameter_name"><p>stream</p></td> 1103<td class="parameter_description"><p>an audio stream number</p></td> 1104<td class="parameter_annotations"> </td> 1105</tr> 1106<tr> 1107<td class="parameter_name"><p>user_data</p></td> 1108<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td> 1109<td class="parameter_annotations"> </td> 1110</tr> 1111</tbody> 1112</table></div> 1113</div> 1114<div class="refsect3"> 1115<a name="GstPlayBin-get-audio-pad.returns"></a><h4>Returns</h4> 1116<p> a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstPad.html#GstPad-struct"><span class="type">GstPad</span></a>, or NULL when the stream number does not exist.</p> 1117</div> 1118<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></p> 1119</div> 1120<hr> 1121<div class="refsect2"> 1122<a name="GstPlayBin-get-audio-tags"></a><h3>The <code class="literal">“get-audio-tags”</code> signal</h3> 1123<pre class="programlisting"><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstTagList.html#GstTagList-struct"><span class="returnvalue">GstTagList</span></a>* 1124user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin, 1125 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> stream, 1126 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre> 1127<p>Action signal to retrieve the tags of a specific audio stream number. 1128This information can be used to select a stream.</p> 1129<div class="refsect3"> 1130<a name="GstPlayBin-get-audio-tags.parameters"></a><h4>Parameters</h4> 1131<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1132<colgroup> 1133<col width="150px" class="parameters_name"> 1134<col class="parameters_description"> 1135<col width="200px" class="parameters_annotations"> 1136</colgroup> 1137<tbody> 1138<tr> 1139<td class="parameter_name"><p>playbin</p></td> 1140<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td> 1141<td class="parameter_annotations"> </td> 1142</tr> 1143<tr> 1144<td class="parameter_name"><p>stream</p></td> 1145<td class="parameter_description"><p>an audio stream number</p></td> 1146<td class="parameter_annotations"> </td> 1147</tr> 1148<tr> 1149<td class="parameter_name"><p>user_data</p></td> 1150<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td> 1151<td class="parameter_annotations"> </td> 1152</tr> 1153</tbody> 1154</table></div> 1155</div> 1156<div class="refsect3"> 1157<a name="GstPlayBin-get-audio-tags.returns"></a><h4>Returns</h4> 1158<p> a GstTagList with tags or NULL when the stream number does not 1159exist.</p> 1160</div> 1161<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></p> 1162</div> 1163<hr> 1164<div class="refsect2"> 1165<a name="GstPlayBin-get-text-pad"></a><h3>The <code class="literal">“get-text-pad”</code> signal</h3> 1166<pre class="programlisting"><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstPad.html#GstPad-struct"><span class="returnvalue">GstPad</span></a>* 1167user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin, 1168 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> stream, 1169 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre> 1170<p>Action signal to retrieve the stream-combiner sinkpad for a specific 1171text stream. 1172This pad can be used for notifications of caps changes, stream-specific 1173queries, etc.</p> 1174<div class="refsect3"> 1175<a name="GstPlayBin-get-text-pad.parameters"></a><h4>Parameters</h4> 1176<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1177<colgroup> 1178<col width="150px" class="parameters_name"> 1179<col class="parameters_description"> 1180<col width="200px" class="parameters_annotations"> 1181</colgroup> 1182<tbody> 1183<tr> 1184<td class="parameter_name"><p>playbin</p></td> 1185<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td> 1186<td class="parameter_annotations"> </td> 1187</tr> 1188<tr> 1189<td class="parameter_name"><p>stream</p></td> 1190<td class="parameter_description"><p>a text stream number</p></td> 1191<td class="parameter_annotations"> </td> 1192</tr> 1193<tr> 1194<td class="parameter_name"><p>user_data</p></td> 1195<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td> 1196<td class="parameter_annotations"> </td> 1197</tr> 1198</tbody> 1199</table></div> 1200</div> 1201<div class="refsect3"> 1202<a name="GstPlayBin-get-text-pad.returns"></a><h4>Returns</h4> 1203<p> a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstPad.html#GstPad-struct"><span class="type">GstPad</span></a>, or NULL when the stream number does not exist.</p> 1204</div> 1205<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></p> 1206</div> 1207<hr> 1208<div class="refsect2"> 1209<a name="GstPlayBin-get-text-tags"></a><h3>The <code class="literal">“get-text-tags”</code> signal</h3> 1210<pre class="programlisting"><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstTagList.html#GstTagList-struct"><span class="returnvalue">GstTagList</span></a>* 1211user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin, 1212 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> stream, 1213 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre> 1214<p>Action signal to retrieve the tags of a specific text stream number. 1215This information can be used to select a stream.</p> 1216<div class="refsect3"> 1217<a name="GstPlayBin-get-text-tags.parameters"></a><h4>Parameters</h4> 1218<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1219<colgroup> 1220<col width="150px" class="parameters_name"> 1221<col class="parameters_description"> 1222<col width="200px" class="parameters_annotations"> 1223</colgroup> 1224<tbody> 1225<tr> 1226<td class="parameter_name"><p>playbin</p></td> 1227<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td> 1228<td class="parameter_annotations"> </td> 1229</tr> 1230<tr> 1231<td class="parameter_name"><p>stream</p></td> 1232<td class="parameter_description"><p>a text stream number</p></td> 1233<td class="parameter_annotations"> </td> 1234</tr> 1235<tr> 1236<td class="parameter_name"><p>user_data</p></td> 1237<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td> 1238<td class="parameter_annotations"> </td> 1239</tr> 1240</tbody> 1241</table></div> 1242</div> 1243<div class="refsect3"> 1244<a name="GstPlayBin-get-text-tags.returns"></a><h4>Returns</h4> 1245<p> a GstTagList with tags or NULL when the stream number does not 1246exist.</p> 1247</div> 1248<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></p> 1249</div> 1250<hr> 1251<div class="refsect2"> 1252<a name="GstPlayBin-get-video-pad"></a><h3>The <code class="literal">“get-video-pad”</code> signal</h3> 1253<pre class="programlisting"><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstPad.html#GstPad-struct"><span class="returnvalue">GstPad</span></a>* 1254user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin, 1255 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> stream, 1256 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre> 1257<p>Action signal to retrieve the stream-combiner sinkpad for a specific 1258video stream. 1259This pad can be used for notifications of caps changes, stream-specific 1260queries, etc.</p> 1261<div class="refsect3"> 1262<a name="GstPlayBin-get-video-pad.parameters"></a><h4>Parameters</h4> 1263<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1264<colgroup> 1265<col width="150px" class="parameters_name"> 1266<col class="parameters_description"> 1267<col width="200px" class="parameters_annotations"> 1268</colgroup> 1269<tbody> 1270<tr> 1271<td class="parameter_name"><p>playbin</p></td> 1272<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td> 1273<td class="parameter_annotations"> </td> 1274</tr> 1275<tr> 1276<td class="parameter_name"><p>stream</p></td> 1277<td class="parameter_description"><p>a video stream number</p></td> 1278<td class="parameter_annotations"> </td> 1279</tr> 1280<tr> 1281<td class="parameter_name"><p>user_data</p></td> 1282<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td> 1283<td class="parameter_annotations"> </td> 1284</tr> 1285</tbody> 1286</table></div> 1287</div> 1288<div class="refsect3"> 1289<a name="GstPlayBin-get-video-pad.returns"></a><h4>Returns</h4> 1290<p> a <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstPad.html#GstPad-struct"><span class="type">GstPad</span></a>, or NULL when the stream number does not exist.</p> 1291</div> 1292<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></p> 1293</div> 1294<hr> 1295<div class="refsect2"> 1296<a name="GstPlayBin-get-video-tags"></a><h3>The <code class="literal">“get-video-tags”</code> signal</h3> 1297<pre class="programlisting"><a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstTagList.html#GstTagList-struct"><span class="returnvalue">GstTagList</span></a>* 1298user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin, 1299 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> stream, 1300 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre> 1301<p>Action signal to retrieve the tags of a specific video stream number. 1302This information can be used to select a stream.</p> 1303<div class="refsect3"> 1304<a name="GstPlayBin-get-video-tags.parameters"></a><h4>Parameters</h4> 1305<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1306<colgroup> 1307<col width="150px" class="parameters_name"> 1308<col class="parameters_description"> 1309<col width="200px" class="parameters_annotations"> 1310</colgroup> 1311<tbody> 1312<tr> 1313<td class="parameter_name"><p>playbin</p></td> 1314<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td> 1315<td class="parameter_annotations"> </td> 1316</tr> 1317<tr> 1318<td class="parameter_name"><p>stream</p></td> 1319<td class="parameter_description"><p>a video stream number</p></td> 1320<td class="parameter_annotations"> </td> 1321</tr> 1322<tr> 1323<td class="parameter_name"><p>user_data</p></td> 1324<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td> 1325<td class="parameter_annotations"> </td> 1326</tr> 1327</tbody> 1328</table></div> 1329</div> 1330<div class="refsect3"> 1331<a name="GstPlayBin-get-video-tags.returns"></a><h4>Returns</h4> 1332<p> a GstTagList with tags or NULL when the stream number does not 1333exist.</p> 1334</div> 1335<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-ACTION:CAPS">Action</a></p> 1336</div> 1337<hr> 1338<div class="refsect2"> 1339<a name="GstPlayBin-source-setup"></a><h3>The <code class="literal">“source-setup”</code> signal</h3> 1340<pre class="programlisting"><span class="returnvalue">void</span> 1341user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin, 1342 <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct"><span class="type">GstElement</span></a> *source, 1343 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre> 1344<p>This signal is emitted after the source element has been created, so 1345it can be configured by setting additional properties (e.g. set a 1346proxy server for an http source, or set the device and read speed for 1347an audio cd source). This is functionally equivalent to connecting to 1348the notify::source signal, but more convenient.</p> 1349<p>This signal is usually emitted from the context of a GStreamer streaming 1350thread.</p> 1351<div class="refsect3"> 1352<a name="GstPlayBin-source-setup.parameters"></a><h4>Parameters</h4> 1353<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1354<colgroup> 1355<col width="150px" class="parameters_name"> 1356<col class="parameters_description"> 1357<col width="200px" class="parameters_annotations"> 1358</colgroup> 1359<tbody> 1360<tr> 1361<td class="parameter_name"><p>playbin</p></td> 1362<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td> 1363<td class="parameter_annotations"> </td> 1364</tr> 1365<tr> 1366<td class="parameter_name"><p>source</p></td> 1367<td class="parameter_description"><p>source element</p></td> 1368<td class="parameter_annotations"> </td> 1369</tr> 1370<tr> 1371<td class="parameter_name"><p>user_data</p></td> 1372<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td> 1373<td class="parameter_annotations"> </td> 1374</tr> 1375</tbody> 1376</table></div> 1377</div> 1378<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></p> 1379</div> 1380<hr> 1381<div class="refsect2"> 1382<a name="GstPlayBin-text-changed"></a><h3>The <code class="literal">“text-changed”</code> signal</h3> 1383<pre class="programlisting"><span class="returnvalue">void</span> 1384user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin, 1385 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre> 1386<p>This signal is emitted whenever the number or order of the text 1387streams has changed. The application will most likely want to select 1388a new text stream.</p> 1389<p>This signal may be emitted from the context of a GStreamer streaming thread. 1390You can use <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstMessage.html#gst-message-new-application"><code class="function">gst_message_new_application()</code></a> and <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#gst-element-post-message"><code class="function">gst_element_post_message()</code></a> 1391to notify your application's main thread.</p> 1392<div class="refsect3"> 1393<a name="GstPlayBin-text-changed.parameters"></a><h4>Parameters</h4> 1394<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1395<colgroup> 1396<col width="150px" class="parameters_name"> 1397<col class="parameters_description"> 1398<col width="200px" class="parameters_annotations"> 1399</colgroup> 1400<tbody> 1401<tr> 1402<td class="parameter_name"><p>playbin</p></td> 1403<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td> 1404<td class="parameter_annotations"> </td> 1405</tr> 1406<tr> 1407<td class="parameter_name"><p>user_data</p></td> 1408<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td> 1409<td class="parameter_annotations"> </td> 1410</tr> 1411</tbody> 1412</table></div> 1413</div> 1414<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></p> 1415</div> 1416<hr> 1417<div class="refsect2"> 1418<a name="GstPlayBin-text-tags-changed"></a><h3>The <code class="literal">“text-tags-changed”</code> signal</h3> 1419<pre class="programlisting"><span class="returnvalue">void</span> 1420user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin, 1421 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> stream, 1422 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre> 1423<p>This signal is emitted whenever the tags of a text stream have changed. 1424The application will most likely want to get the new tags.</p> 1425<p>This signal may be emitted from the context of a GStreamer streaming thread. 1426You can use <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstMessage.html#gst-message-new-application"><code class="function">gst_message_new_application()</code></a> and <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#gst-element-post-message"><code class="function">gst_element_post_message()</code></a> 1427to notify your application's main thread.</p> 1428<div class="refsect3"> 1429<a name="GstPlayBin-text-tags-changed.parameters"></a><h4>Parameters</h4> 1430<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1431<colgroup> 1432<col width="150px" class="parameters_name"> 1433<col class="parameters_description"> 1434<col width="200px" class="parameters_annotations"> 1435</colgroup> 1436<tbody> 1437<tr> 1438<td class="parameter_name"><p>playbin</p></td> 1439<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td> 1440<td class="parameter_annotations"> </td> 1441</tr> 1442<tr> 1443<td class="parameter_name"><p>stream</p></td> 1444<td class="parameter_description"><p>stream index with changed tags</p></td> 1445<td class="parameter_annotations"> </td> 1446</tr> 1447<tr> 1448<td class="parameter_name"><p>user_data</p></td> 1449<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td> 1450<td class="parameter_annotations"> </td> 1451</tr> 1452</tbody> 1453</table></div> 1454</div> 1455<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></p> 1456</div> 1457<hr> 1458<div class="refsect2"> 1459<a name="GstPlayBin-video-changed"></a><h3>The <code class="literal">“video-changed”</code> signal</h3> 1460<pre class="programlisting"><span class="returnvalue">void</span> 1461user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin, 1462 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre> 1463<p>This signal is emitted whenever the number or order of the video 1464streams has changed. The application will most likely want to select 1465a new video stream.</p> 1466<p>This signal is usually emitted from the context of a GStreamer streaming 1467thread. You can use <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstMessage.html#gst-message-new-application"><code class="function">gst_message_new_application()</code></a> and 1468<a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#gst-element-post-message"><code class="function">gst_element_post_message()</code></a> to notify your application's main thread.</p> 1469<div class="refsect3"> 1470<a name="GstPlayBin-video-changed.parameters"></a><h4>Parameters</h4> 1471<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1472<colgroup> 1473<col width="150px" class="parameters_name"> 1474<col class="parameters_description"> 1475<col width="200px" class="parameters_annotations"> 1476</colgroup> 1477<tbody> 1478<tr> 1479<td class="parameter_name"><p>playbin</p></td> 1480<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td> 1481<td class="parameter_annotations"> </td> 1482</tr> 1483<tr> 1484<td class="parameter_name"><p>user_data</p></td> 1485<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td> 1486<td class="parameter_annotations"> </td> 1487</tr> 1488</tbody> 1489</table></div> 1490</div> 1491<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></p> 1492</div> 1493<hr> 1494<div class="refsect2"> 1495<a name="GstPlayBin-video-tags-changed"></a><h3>The <code class="literal">“video-tags-changed”</code> signal</h3> 1496<pre class="programlisting"><span class="returnvalue">void</span> 1497user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin, 1498 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"><span class="type">gint</span></a> stream, 1499 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre> 1500<p>This signal is emitted whenever the tags of a video stream have changed. 1501The application will most likely want to get the new tags.</p> 1502<p>This signal may be emitted from the context of a GStreamer streaming thread. 1503You can use <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstMessage.html#gst-message-new-application"><code class="function">gst_message_new_application()</code></a> and <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#gst-element-post-message"><code class="function">gst_element_post_message()</code></a> 1504to notify your application's main thread.</p> 1505<div class="refsect3"> 1506<a name="GstPlayBin-video-tags-changed.parameters"></a><h4>Parameters</h4> 1507<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1508<colgroup> 1509<col width="150px" class="parameters_name"> 1510<col class="parameters_description"> 1511<col width="200px" class="parameters_annotations"> 1512</colgroup> 1513<tbody> 1514<tr> 1515<td class="parameter_name"><p>playbin</p></td> 1516<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td> 1517<td class="parameter_annotations"> </td> 1518</tr> 1519<tr> 1520<td class="parameter_name"><p>stream</p></td> 1521<td class="parameter_description"><p>stream index with changed tags</p></td> 1522<td class="parameter_annotations"> </td> 1523</tr> 1524<tr> 1525<td class="parameter_name"><p>user_data</p></td> 1526<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td> 1527<td class="parameter_annotations"> </td> 1528</tr> 1529</tbody> 1530</table></div> 1531</div> 1532<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></p> 1533</div> 1534<hr> 1535<div class="refsect2"> 1536<a name="GstPlayBin-element-setup"></a><h3>The <code class="literal">“element-setup”</code> signal</h3> 1537<pre class="programlisting"><span class="returnvalue">void</span> 1538user_function (<a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a> *playbin, 1539 <a href="/usr/share/gtk-doc/html/gstreamer-1.0/GstElement.html#GstElement-struct"><span class="type">GstElement</span></a> *element, 1540 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data)</pre> 1541<p>This signal is emitted when a new element is added to playbin or any of 1542its sub-bins. This signal can be used to configure elements, e.g. to set 1543properties on decoders. This is functionally equivalent to connecting to 1544the deep-element-added signal, but more convenient.</p> 1545<p>This signal is usually emitted from the context of a GStreamer streaming 1546thread, so might be called at the same time as code running in the main 1547application thread.</p> 1548<div class="refsect3"> 1549<a name="GstPlayBin-element-setup.parameters"></a><h4>Parameters</h4> 1550<div class="informaltable"><table class="informaltable" width="100%" border="0"> 1551<colgroup> 1552<col width="150px" class="parameters_name"> 1553<col class="parameters_description"> 1554<col width="200px" class="parameters_annotations"> 1555</colgroup> 1556<tbody> 1557<tr> 1558<td class="parameter_name"><p>playbin</p></td> 1559<td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-plugins-playbin.html#GstPlayBin"><span class="type">GstPlayBin</span></a></p></td> 1560<td class="parameter_annotations"> </td> 1561</tr> 1562<tr> 1563<td class="parameter_name"><p>element</p></td> 1564<td class="parameter_description"><p>an element that was added to the playbin hierarchy</p></td> 1565<td class="parameter_annotations"> </td> 1566</tr> 1567<tr> 1568<td class="parameter_name"><p>user_data</p></td> 1569<td class="parameter_description"><p>user data set when the signal handler was connected.</p></td> 1570<td class="parameter_annotations"> </td> 1571</tr> 1572</tbody> 1573</table></div> 1574</div> 1575<p>Flags: <a href="/usr/share/gtk-doc/html/gobject/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS">Run Last</a></p> 1576<p class="since">Since: 1.10</p> 1577</div> 1578</div> 1579</div> 1580<div class="footer"> 1581<hr>Generated by GTK-Doc V1.28</div> 1582</body> 1583</html>