| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
| <title>GstCollectPads: GStreamer 1.0 Library Reference Manual</title> |
| <meta name="generator" content="DocBook XSL Stylesheets V1.79.1"> |
| <link rel="home" href="index.html" title="GStreamer 1.0 Library Reference Manual"> |
| <link rel="up" href="gstreamer-base.html" title="GStreamer Base and Utillity Classes"> |
| <link rel="prev" href="gstreamer-libs-GstByteWriter.html" title="GstByteWriter"> |
| <link rel="next" href="gstreamer-libs-GstFlowCombiner.html" title="GstFlowCombiner"> |
| <meta name="generator" content="GTK-Doc V1.25 (XML mode)"> |
| <link rel="stylesheet" href="style.css" type="text/css"> |
| </head> |
| <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> |
| <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle"> |
| <td width="100%" align="left" class="shortcuts"> |
| <a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span> |
| <a href="#GstCollectPads.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> |
| <a href="#GstCollectPads.object-hierarchy" class="shortcut">Object Hierarchy</a></span> |
| </td> |
| <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td> |
| <td><a accesskey="u" href="gstreamer-base.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td> |
| <td><a accesskey="p" href="gstreamer-libs-GstByteWriter.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td> |
| <td><a accesskey="n" href="gstreamer-libs-GstFlowCombiner.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td> |
| </tr></table> |
| <div class="refentry"> |
| <a name="GstCollectPads"></a><div class="titlepage"></div> |
| <div class="refnamediv"><table width="100%"><tr> |
| <td valign="top"> |
| <h2><span class="refentrytitle"><a name="GstCollectPads.top_of_page"></a>GstCollectPads</span></h2> |
| <p>GstCollectPads — manages a set of pads that operate in collect mode</p> |
| </td> |
| <td class="gallery_image" valign="top" align="right"></td> |
| </tr></table></div> |
| <div class="refsect1"> |
| <a name="GstCollectPads.functions"></a><h2>Functions</h2> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="functions_return"> |
| <col class="functions_name"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <span class="c_punctuation">(</span><a class="link" href="GstCollectPads.html#GstCollectDataDestroyNotify" title="GstCollectDataDestroyNotify ()">*GstCollectDataDestroyNotify</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a href="../html/GstPad.html#GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a> |
| </td> |
| <td class="function_name"> |
| <span class="c_punctuation">(</span><a class="link" href="GstCollectPads.html#GstCollectPadsBufferFunction" title="GstCollectPadsBufferFunction ()">*GstCollectPadsBufferFunction</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a href="../html/GstPad.html#GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a> |
| </td> |
| <td class="function_name"> |
| <span class="c_punctuation">(</span><a class="link" href="GstCollectPads.html#GstCollectPadsClipFunction" title="GstCollectPadsClipFunction ()">*GstCollectPadsClipFunction</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> |
| </td> |
| <td class="function_name"> |
| <span class="c_punctuation">(</span><a class="link" href="GstCollectPads.html#GstCollectPadsCompareFunction" title="GstCollectPadsCompareFunction ()">*GstCollectPadsCompareFunction</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> |
| </td> |
| <td class="function_name"> |
| <span class="c_punctuation">(</span><a class="link" href="GstCollectPads.html#GstCollectPadsEventFunction" title="GstCollectPadsEventFunction ()">*GstCollectPadsEventFunction</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <span class="c_punctuation">(</span><a class="link" href="GstCollectPads.html#GstCollectPadsFlushFunction" title="GstCollectPadsFlushFunction ()">*GstCollectPadsFlushFunction</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> |
| </td> |
| <td class="function_name"> |
| <span class="c_punctuation">(</span><a class="link" href="GstCollectPads.html#GstCollectPadsQueryFunction" title="GstCollectPadsQueryFunction ()">*GstCollectPadsQueryFunction</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a href="../html/GstPad.html#GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a> |
| </td> |
| <td class="function_name"> |
| <span class="c_punctuation">(</span><a class="link" href="GstCollectPads.html#GstCollectPadsFunction" title="GstCollectPadsFunction ()">*GstCollectPadsFunction</a><span class="c_punctuation">)</span> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="define_keyword">#define</td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#GST-COLLECT-PADS-STATE:CAPS" title="GST_COLLECT_PADS_STATE()">GST_COLLECT_PADS_STATE</a><span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="define_keyword">#define</td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#GST-COLLECT-PADS-STATE-IS-SET:CAPS" title="GST_COLLECT_PADS_STATE_IS_SET()">GST_COLLECT_PADS_STATE_IS_SET</a><span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="define_keyword">#define</td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#GST-COLLECT-PADS-STATE-SET:CAPS" title="GST_COLLECT_PADS_STATE_SET()">GST_COLLECT_PADS_STATE_SET</a><span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="define_keyword">#define</td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#GST-COLLECT-PADS-STATE-UNSET:CAPS" title="GST_COLLECT_PADS_STATE_UNSET()">GST_COLLECT_PADS_STATE_UNSET</a><span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="define_keyword">#define</td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#GST-COLLECT-PADS-GET-STREAM-LOCK:CAPS" title="GST_COLLECT_PADS_GET_STREAM_LOCK()">GST_COLLECT_PADS_GET_STREAM_LOCK</a><span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="define_keyword">#define</td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#GST-COLLECT-PADS-STREAM-LOCK:CAPS" title="GST_COLLECT_PADS_STREAM_LOCK()">GST_COLLECT_PADS_STREAM_LOCK</a><span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="define_keyword">#define</td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#GST-COLLECT-PADS-STREAM-UNLOCK:CAPS" title="GST_COLLECT_PADS_STREAM_UNLOCK()">GST_COLLECT_PADS_STREAM_UNLOCK</a><span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="define_keyword">#define</td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#GST-COLLECT-PADS-DTS:CAPS" title="GST_COLLECT_PADS_DTS()">GST_COLLECT_PADS_DTS</a><span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="define_keyword">#define</td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#GST-COLLECT-PADS-DTS-IS-VALID:CAPS" title="GST_COLLECT_PADS_DTS_IS_VALID()">GST_COLLECT_PADS_DTS_IS_VALID</a><span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="returnvalue">GstCollectPads</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-new" title="gst_collect_pads_new ()">gst_collect_pads_new</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="returnvalue">GstCollectData</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-add-pad" title="gst_collect_pads_add_pad ()">gst_collect_pads_add_pad</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-remove-pad" title="gst_collect_pads_remove_pad ()">gst_collect_pads_remove_pad</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-start" title="gst_collect_pads_start ()">gst_collect_pads_start</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-stop" title="gst_collect_pads_stop ()">gst_collect_pads_stop</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-available" title="gst_collect_pads_available ()">gst_collect_pads_available</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-flush" title="gst_collect_pads_flush ()">gst_collect_pads_flush</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a href="../html/GstBuffer.html#GstBuffer-struct"><span class="returnvalue">GstBuffer</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-peek" title="gst_collect_pads_peek ()">gst_collect_pads_peek</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a href="../html/GstBuffer.html#GstBuffer-struct"><span class="returnvalue">GstBuffer</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-pop" title="gst_collect_pads_pop ()">gst_collect_pads_pop</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a href="../html/GstBuffer.html#GstBuffer-struct"><span class="returnvalue">GstBuffer</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-read-buffer" title="gst_collect_pads_read_buffer ()">gst_collect_pads_read_buffer</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a href="../html/GstBuffer.html#GstBuffer-struct"><span class="returnvalue">GstBuffer</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-take-buffer" title="gst_collect_pads_take_buffer ()">gst_collect_pads_take_buffer</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a href="../html/GstPad.html#GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-clip-running-time" title="gst_collect_pads_clip_running_time ()">gst_collect_pads_clip_running_time</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-query-default" title="gst_collect_pads_query_default ()">gst_collect_pads_query_default</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-event-default" title="gst_collect_pads_event_default ()">gst_collect_pads_event_default</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-src-event-default" title="gst_collect_pads_src_event_default ()">gst_collect_pads_src_event_default</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-set-buffer-function" title="gst_collect_pads_set_buffer_function ()">gst_collect_pads_set_buffer_function</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-set-clip-function" title="gst_collect_pads_set_clip_function ()">gst_collect_pads_set_clip_function</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-set-compare-function" title="gst_collect_pads_set_compare_function ()">gst_collect_pads_set_compare_function</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-set-event-function" title="gst_collect_pads_set_event_function ()">gst_collect_pads_set_event_function</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-set-flush-function" title="gst_collect_pads_set_flush_function ()">gst_collect_pads_set_flush_function</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-set-query-function" title="gst_collect_pads_set_query_function ()">gst_collect_pads_set_query_function</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-set-flushing" title="gst_collect_pads_set_flushing ()">gst_collect_pads_set_flushing</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-set-function" title="gst_collect_pads_set_function ()">gst_collect_pads_set_function</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <span class="returnvalue">void</span> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-set-waiting" title="gst_collect_pads_set_waiting ()">gst_collect_pads_set_waiting</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <div class="refsect1"> |
| <a name="GstCollectPads.other"></a><h2>Types and Values</h2> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="name"> |
| <col class="description"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="datatype_keyword">struct</td> |
| <td class="function_name"><a class="link" href="GstCollectPads.html#GstCollectPads-struct" title="struct GstCollectPads">GstCollectPads</a></td> |
| </tr> |
| <tr> |
| <td class="datatype_keyword">struct</td> |
| <td class="function_name"><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData">GstCollectData</a></td> |
| </tr> |
| <tr> |
| <td class="datatype_keyword">enum</td> |
| <td class="function_name"><a class="link" href="GstCollectPads.html#GstCollectPadsStateFlags" title="enum GstCollectPadsStateFlags">GstCollectPadsStateFlags</a></td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <div class="refsect1"> |
| <a name="GstCollectPads.object-hierarchy"></a><h2>Object Hierarchy</h2> |
| <pre class="screen"> <a href="/usr/share/gtk-doc/html/gobjectgobject-The-Base-Object-Type.html#GObject-struct">GObject</a> |
| <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gobjectgobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a> |
| <span class="lineart">╰──</span> <a href="../html/GstObject.html#GstObject-struct">GstObject</a> |
| <span class="lineart">╰──</span> GstCollectPads |
| </pre> |
| </div> |
| <div class="refsect1"> |
| <a name="GstCollectPads.includes"></a><h2>Includes</h2> |
| <pre class="synopsis">#include <gst/base/gstcollectpads.h> |
| </pre> |
| </div> |
| <div class="refsect1"> |
| <a name="GstCollectPads.description"></a><h2>Description</h2> |
| <p>Manages a set of pads that operate in collect mode. This means that control |
| is given to the manager of this object when all pads have data.</p> |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"><p> |
| Collectpads are created with <a class="link" href="GstCollectPads.html#gst-collect-pads-new" title="gst_collect_pads_new ()"><code class="function">gst_collect_pads_new()</code></a>. A callback should then |
| be installed with <a class="link" href="GstCollectPads.html#gst-collect-pads-set-function" title="gst_collect_pads_set_function ()"><code class="function">gst_collect_pads_set_function()</code></a>. |
| </p></li> |
| <li class="listitem"><p> |
| Pads are added to the collection with <a class="link" href="GstCollectPads.html#gst-collect-pads-add-pad" title="gst_collect_pads_add_pad ()"><code class="function">gst_collect_pads_add_pad()</code></a>/ |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-remove-pad" title="gst_collect_pads_remove_pad ()"><code class="function">gst_collect_pads_remove_pad()</code></a>. The pad |
| has to be a sinkpad. The chain and event functions of the pad are |
| overridden. The element_private of the pad is used to store |
| private information for the collectpads. |
| </p></li> |
| <li class="listitem"><p> |
| For each pad, data is queued in the _chain function or by |
| performing a pull_range. |
| </p></li> |
| <li class="listitem"><p> |
| When data is queued on all pads in waiting mode, the callback function is called. |
| </p></li> |
| <li class="listitem"><p> |
| Data can be dequeued from the pad with the <a class="link" href="GstCollectPads.html#gst-collect-pads-pop" title="gst_collect_pads_pop ()"><code class="function">gst_collect_pads_pop()</code></a> method. |
| One can peek at the data with the <a class="link" href="GstCollectPads.html#gst-collect-pads-peek" title="gst_collect_pads_peek ()"><code class="function">gst_collect_pads_peek()</code></a> function. |
| These functions will return <a href="/usr/share/gtk-doc/html/glibglib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the pad received an EOS event. When all |
| pads return <a href="/usr/share/gtk-doc/html/glibglib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> from a <a class="link" href="GstCollectPads.html#gst-collect-pads-peek" title="gst_collect_pads_peek ()"><code class="function">gst_collect_pads_peek()</code></a>, the element can emit an EOS |
| event itself. |
| </p></li> |
| <li class="listitem"><p> |
| Data can also be dequeued in byte units using the <a class="link" href="GstCollectPads.html#gst-collect-pads-available" title="gst_collect_pads_available ()"><code class="function">gst_collect_pads_available()</code></a>, |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-read-buffer" title="gst_collect_pads_read_buffer ()"><code class="function">gst_collect_pads_read_buffer()</code></a> and <a class="link" href="GstCollectPads.html#gst-collect-pads-flush" title="gst_collect_pads_flush ()"><code class="function">gst_collect_pads_flush()</code></a> calls. |
| </p></li> |
| <li class="listitem"><p> |
| Elements should call <a class="link" href="GstCollectPads.html#gst-collect-pads-start" title="gst_collect_pads_start ()"><code class="function">gst_collect_pads_start()</code></a> and <a class="link" href="GstCollectPads.html#gst-collect-pads-stop" title="gst_collect_pads_stop ()"><code class="function">gst_collect_pads_stop()</code></a> in |
| their state change functions to start and stop the processing of the collectpads. |
| The <a class="link" href="GstCollectPads.html#gst-collect-pads-stop" title="gst_collect_pads_stop ()"><code class="function">gst_collect_pads_stop()</code></a> call should be called before calling the parent |
| element state change function in the PAUSED_TO_READY state change to ensure |
| no pad is blocked and the element can finish streaming. |
| </p></li> |
| <li class="listitem"><p> |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-set-waiting" title="gst_collect_pads_set_waiting ()"><code class="function">gst_collect_pads_set_waiting()</code></a> sets a pad to waiting or non-waiting mode. |
| CollectPads element is not waiting for data to be collected on non-waiting pads. |
| Thus these pads may but need not have data when the callback is called. |
| All pads are in waiting mode by default. |
| </p></li> |
| </ul></div> |
| </div> |
| <div class="refsect1"> |
| <a name="GstCollectPads.functions_details"></a><h2>Functions</h2> |
| <div class="refsect2"> |
| <a name="GstCollectDataDestroyNotify"></a><h3>GstCollectDataDestroyNotify ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| <span class="c_punctuation">(</span>*GstCollectDataDestroyNotify<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> *data</code></em>);</pre> |
| <p>A function that will be called when the <a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> will be freed. |
| It is passed the pointer to the structure and should free any custom |
| memory and resources allocated for it.</p> |
| <div class="refsect3"> |
| <a name="GstCollectDataDestroyNotify.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>data</p></td> |
| <td class="parameter_description"><p>the <a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> that will be freed</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GstCollectPadsBufferFunction"></a><h3>GstCollectPadsBufferFunction ()</h3> |
| <pre class="programlisting"><a href="../html/GstPad.html#GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a> |
| <span class="c_punctuation">(</span>*GstCollectPadsBufferFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>, |
| <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> *data</code></em>, |
| <em class="parameter"><code><a href="../html/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a> *buffer</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre> |
| <p>A function that will be called when a (considered oldest) buffer can be muxed. |
| If all pads have reached EOS, this function is called with <a href="/usr/share/gtk-doc/html/glibglib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> <em class="parameter"><code>buffer</code></em> |
| |
| and <a href="/usr/share/gtk-doc/html/glibglib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> <em class="parameter"><code>data</code></em> |
| .</p> |
| <div class="refsect3"> |
| <a name="GstCollectPadsBufferFunction.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>the <a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> that triggered the callback</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>data</p></td> |
| <td class="parameter_description"><p>the <a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> of pad that has received the buffer</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>buffer</p></td> |
| <td class="parameter_description"><p> the <a href="../html/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a>. </p></td> |
| <td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>user_data</p></td> |
| <td class="parameter_description"><p>user data passed to <a class="link" href="GstCollectPads.html#gst-collect-pads-set-buffer-function" title="gst_collect_pads_set_buffer_function ()"><code class="function">gst_collect_pads_set_buffer_function()</code></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="GstCollectPadsBufferFunction.returns"></a><h4>Returns</h4> |
| <p> <a href="../html/GstPad.html#GST-FLOW-OK:CAPS"><code class="literal">GST_FLOW_OK</code></a> for success</p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GstCollectPadsClipFunction"></a><h3>GstCollectPadsClipFunction ()</h3> |
| <pre class="programlisting"><a href="../html/GstPad.html#GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a> |
| <span class="c_punctuation">(</span>*GstCollectPadsClipFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>, |
| <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> *data</code></em>, |
| <em class="parameter"><code><a href="../html/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a> *inbuffer</code></em>, |
| <em class="parameter"><code><a href="../html/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a> **outbuffer</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre> |
| <p>A function that will be called when <em class="parameter"><code>inbuffer</code></em> |
| is received on the pad managed |
| by <em class="parameter"><code>data</code></em> |
| in the collectpad object <em class="parameter"><code>pads</code></em> |
| .</p> |
| <p>The function should use the segment of <em class="parameter"><code>data</code></em> |
| and the negotiated media type on |
| the pad to perform clipping of <em class="parameter"><code>inbuffer</code></em> |
| .</p> |
| <p>This function takes ownership of <em class="parameter"><code>inbuffer</code></em> |
| and should output a buffer in |
| <em class="parameter"><code>outbuffer</code></em> |
| or return <a href="/usr/share/gtk-doc/html/glibglib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in <em class="parameter"><code>outbuffer</code></em> |
| if the buffer should be dropped.</p> |
| <div class="refsect3"> |
| <a name="GstCollectPadsClipFunction.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>data</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>inbuffer</p></td> |
| <td class="parameter_description"><p> the input <a href="../html/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a>. </p></td> |
| <td class="parameter_annotations"><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>outbuffer</p></td> |
| <td class="parameter_description"><p>the output <a href="../html/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>user_data</p></td> |
| <td class="parameter_description"><p>user data</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="GstCollectPadsClipFunction.returns"></a><h4>Returns</h4> |
| <p> a <a href="../html/GstPad.html#GstFlowReturn"><span class="type">GstFlowReturn</span></a> that corresponds to the result of clipping.</p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GstCollectPadsCompareFunction"></a><h3>GstCollectPadsCompareFunction ()</h3> |
| <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gint"><span class="returnvalue">gint</span></a> |
| <span class="c_punctuation">(</span>*GstCollectPadsCompareFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>, |
| <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> *data1</code></em>, |
| <em class="parameter"><code><a href="../html/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> timestamp1</code></em>, |
| <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> *data2</code></em>, |
| <em class="parameter"><code><a href="../html/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> timestamp2</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre> |
| <p>A function for comparing two timestamps of buffers or newsegments collected on one pad.</p> |
| <div class="refsect3"> |
| <a name="GstCollectPadsCompareFunction.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>the <a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> that is comparing the timestamps</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>data1</p></td> |
| <td class="parameter_description"><p>the first <a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>timestamp1</p></td> |
| <td class="parameter_description"><p>the first timestamp</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>data2</p></td> |
| <td class="parameter_description"><p>the second <a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>timestamp2</p></td> |
| <td class="parameter_description"><p>the second timestamp</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>user_data</p></td> |
| <td class="parameter_description"><p>user data passed to <a class="link" href="GstCollectPads.html#gst-collect-pads-set-compare-function" title="gst_collect_pads_set_compare_function ()"><code class="function">gst_collect_pads_set_compare_function()</code></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="GstCollectPadsCompareFunction.returns"></a><h4>Returns</h4> |
| <p> Integer less than zero when first timestamp is deemed older than the second one. |
| Zero if the timestamps are deemed equally old. |
| Integer greater than zero when second timestamp is deemed older than the first one.</p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GstCollectPadsEventFunction"></a><h3>GstCollectPadsEventFunction ()</h3> |
| <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> |
| <span class="c_punctuation">(</span>*GstCollectPadsEventFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>, |
| <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> *pad</code></em>, |
| <em class="parameter"><code><a href="../html/GstEvent.html#GstEvent-struct"><span class="type">GstEvent</span></a> *event</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre> |
| <p>A function that will be called while processing an event. It takes |
| ownership of the event and is responsible for chaining up (to |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-event-default" title="gst_collect_pads_event_default ()"><code class="function">gst_collect_pads_event_default()</code></a>) or dropping events (such typical cases |
| being handled by the default handler).</p> |
| <div class="refsect3"> |
| <a name="GstCollectPadsEventFunction.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>the <a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> that triggered the callback</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>pad</p></td> |
| <td class="parameter_description"><p>the <a href="../html/GstPad.html#GstPad-struct"><span class="type">GstPad</span></a> that received an event</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>event</p></td> |
| <td class="parameter_description"><p>the <a href="../html/GstEvent.html#GstEvent-struct"><span class="type">GstEvent</span></a> received</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>user_data</p></td> |
| <td class="parameter_description"><p>user data passed to <a class="link" href="GstCollectPads.html#gst-collect-pads-set-event-function" title="gst_collect_pads_set_event_function ()"><code class="function">gst_collect_pads_set_event_function()</code></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="GstCollectPadsEventFunction.returns"></a><h4>Returns</h4> |
| <p> <a href="/usr/share/gtk-doc/html/glibglib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad could handle the event</p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GstCollectPadsFlushFunction"></a><h3>GstCollectPadsFlushFunction ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| <span class="c_punctuation">(</span>*GstCollectPadsFlushFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre> |
| <p>A function that will be called while processing a flushing seek event.</p> |
| <p>The function should flush any internal state of the element and the state of |
| all the pads. It should clear only the state not directly managed by the |
| <em class="parameter"><code>pads</code></em> |
| object. It is therefore not necessary to call |
| gst_collect_pads_set_flushing nor gst_collect_pads_clear from this function.</p> |
| <div class="refsect3"> |
| <a name="GstCollectPadsFlushFunction.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>user_data</p></td> |
| <td class="parameter_description"><p>user data</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <p class="since">Since: <a class="link" href="ix06.html#api-index-1.4">1.4</a></p> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GstCollectPadsQueryFunction"></a><h3>GstCollectPadsQueryFunction ()</h3> |
| <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> |
| <span class="c_punctuation">(</span>*GstCollectPadsQueryFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>, |
| <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> *pad</code></em>, |
| <em class="parameter"><code><a href="../html/GstQuery.html#GstQuery-struct"><span class="type">GstQuery</span></a> *query</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre> |
| <p>A function that will be called while processing a query. It takes |
| ownership of the query and is responsible for chaining up (to |
| events downstream (with <a href="../html/GstPad.html#gst-pad-event-default"><code class="function">gst_pad_event_default()</code></a>).</p> |
| <div class="refsect3"> |
| <a name="GstCollectPadsQueryFunction.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>the <a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> that triggered the callback</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>pad</p></td> |
| <td class="parameter_description"><p>the <a href="../html/GstPad.html#GstPad-struct"><span class="type">GstPad</span></a> that received an event</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>query</p></td> |
| <td class="parameter_description"><p>the <a href="../html/GstEvent.html#GstEvent-struct"><span class="type">GstEvent</span></a> received</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>user_data</p></td> |
| <td class="parameter_description"><p>user data passed to <a class="link" href="GstCollectPads.html#gst-collect-pads-set-query-function" title="gst_collect_pads_set_query_function ()"><code class="function">gst_collect_pads_set_query_function()</code></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="GstCollectPadsQueryFunction.returns"></a><h4>Returns</h4> |
| <p> <a href="/usr/share/gtk-doc/html/glibglib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad could handle the event</p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GstCollectPadsFunction"></a><h3>GstCollectPadsFunction ()</h3> |
| <pre class="programlisting"><a href="../html/GstPad.html#GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a> |
| <span class="c_punctuation">(</span>*GstCollectPadsFunction<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre> |
| <p>A function that will be called when all pads have received data.</p> |
| <div class="refsect3"> |
| <a name="GstCollectPadsFunction.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>the <a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> that triggered the callback</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>user_data</p></td> |
| <td class="parameter_description"><p>user data passed to <a class="link" href="GstCollectPads.html#gst-collect-pads-set-function" title="gst_collect_pads_set_function ()"><code class="function">gst_collect_pads_set_function()</code></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="GstCollectPadsFunction.returns"></a><h4>Returns</h4> |
| <p> <a href="../html/GstPad.html#GST-FLOW-OK:CAPS"><code class="literal">GST_FLOW_OK</code></a> for success</p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-COLLECT-PADS-STATE:CAPS"></a><h3>GST_COLLECT_PADS_STATE()</h3> |
| <pre class="programlisting">#define GST_COLLECT_PADS_STATE(data) (((GstCollectData *) data)->state) |
| </pre> |
| <p>A flags word containing <a class="link" href="GstCollectPads.html#GstCollectPadsStateFlags" title="enum GstCollectPadsStateFlags"><span class="type">GstCollectPadsStateFlags</span></a> flags set |
| on this collected pad.</p> |
| <div class="refsect3"> |
| <a name="GST-COLLECT-PADS-STATE.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>data</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a>.</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-COLLECT-PADS-STATE-IS-SET:CAPS"></a><h3>GST_COLLECT_PADS_STATE_IS_SET()</h3> |
| <pre class="programlisting">#define GST_COLLECT_PADS_STATE_IS_SET(data,flag) !!(GST_COLLECT_PADS_STATE (data) & flag) |
| </pre> |
| <p>Gives the status of a specific flag on a collected pad.</p> |
| <div class="refsect3"> |
| <a name="GST-COLLECT-PADS-STATE-IS-SET.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>data</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a>.</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>flag</p></td> |
| <td class="parameter_description"><p>the <a class="link" href="GstCollectPads.html#GstCollectPadsStateFlags" title="enum GstCollectPadsStateFlags"><span class="type">GstCollectPadsStateFlags</span></a> to check.</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-COLLECT-PADS-STATE-SET:CAPS"></a><h3>GST_COLLECT_PADS_STATE_SET()</h3> |
| <pre class="programlisting">#define GST_COLLECT_PADS_STATE_SET(data,flag) (GST_COLLECT_PADS_STATE (data) |= flag) |
| </pre> |
| <p>Sets a state flag on a collected pad.</p> |
| <div class="refsect3"> |
| <a name="GST-COLLECT-PADS-STATE-SET.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>data</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a>.</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>flag</p></td> |
| <td class="parameter_description"><p>the <a class="link" href="GstCollectPads.html#GstCollectPadsStateFlags" title="enum GstCollectPadsStateFlags"><span class="type">GstCollectPadsStateFlags</span></a> to set.</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-COLLECT-PADS-STATE-UNSET:CAPS"></a><h3>GST_COLLECT_PADS_STATE_UNSET()</h3> |
| <pre class="programlisting">#define GST_COLLECT_PADS_STATE_UNSET(data,flag) (GST_COLLECT_PADS_STATE (data) &= ~(flag)) |
| </pre> |
| <p>Clears a state flag on a collected pad.</p> |
| <div class="refsect3"> |
| <a name="GST-COLLECT-PADS-STATE-UNSET.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>data</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a>.</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>flag</p></td> |
| <td class="parameter_description"><p>the <a class="link" href="GstCollectPads.html#GstCollectPadsStateFlags" title="enum GstCollectPadsStateFlags"><span class="type">GstCollectPadsStateFlags</span></a> to clear.</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-COLLECT-PADS-GET-STREAM-LOCK:CAPS"></a><h3>GST_COLLECT_PADS_GET_STREAM_LOCK()</h3> |
| <pre class="programlisting">#define GST_COLLECT_PADS_GET_STREAM_LOCK(pads) (&((GstCollectPads *)pads)->stream_lock) |
| </pre> |
| <p>Get the stream lock of <em class="parameter"><code>pads</code></em> |
| . The stream lock is used to coordinate and |
| serialize execution among the various streams being collected, and in |
| protecting the resources used to accomplish this.</p> |
| <div class="refsect3"> |
| <a name="GST-COLLECT-PADS-GET-STREAM-LOCK.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-COLLECT-PADS-STREAM-LOCK:CAPS"></a><h3>GST_COLLECT_PADS_STREAM_LOCK()</h3> |
| <pre class="programlisting">#define GST_COLLECT_PADS_STREAM_LOCK(pads) g_rec_mutex_lock(GST_COLLECT_PADS_GET_STREAM_LOCK (pads)) |
| </pre> |
| <p>Lock the stream lock of <em class="parameter"><code>pads</code></em> |
| .</p> |
| <div class="refsect3"> |
| <a name="GST-COLLECT-PADS-STREAM-LOCK.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-COLLECT-PADS-STREAM-UNLOCK:CAPS"></a><h3>GST_COLLECT_PADS_STREAM_UNLOCK()</h3> |
| <pre class="programlisting">#define GST_COLLECT_PADS_STREAM_UNLOCK(pads) g_rec_mutex_unlock(GST_COLLECT_PADS_GET_STREAM_LOCK (pads)) |
| </pre> |
| <p>Unlock the stream lock of <em class="parameter"><code>pads</code></em> |
| .</p> |
| <div class="refsect3"> |
| <a name="GST-COLLECT-PADS-STREAM-UNLOCK.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-COLLECT-PADS-DTS:CAPS"></a><h3>GST_COLLECT_PADS_DTS()</h3> |
| <pre class="programlisting">#define GST_COLLECT_PADS_DTS(data) (((GstCollectData *) data)->ABI.abi.dts) |
| </pre> |
| <p>Returns the DTS that has been converted to running time when using |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-clip-running-time" title="gst_collect_pads_clip_running_time ()"><code class="function">gst_collect_pads_clip_running_time()</code></a>. Unlike the value saved into |
| the buffer, this value is of type gint64 and may be negative. This allow |
| properly handling streams with frame reordering where the first DTS may |
| be negative. If the initial DTS was not set, this value will be |
| set to <a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#G-MININT64:CAPS"><code class="literal">G_MININT64</code></a>.</p> |
| <div class="refsect3"> |
| <a name="GST-COLLECT-PADS-DTS.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>data</p></td> |
| <td class="parameter_description"><p>A <a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a>.</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <p class="since">Since: <a class="link" href="ix05.html#api-index-1.6">1.6</a></p> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-COLLECT-PADS-DTS-IS-VALID:CAPS"></a><h3>GST_COLLECT_PADS_DTS_IS_VALID()</h3> |
| <pre class="programlisting">#define GST_COLLECT_PADS_DTS_IS_VALID(data) (GST_CLOCK_STIME_IS_VALID (GST_COLLECT_PADS_DTS (data))) |
| </pre> |
| <p>Check if running DTS value store is valid.</p> |
| <div class="refsect3"> |
| <a name="GST-COLLECT-PADS-DTS-IS-VALID.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>data</p></td> |
| <td class="parameter_description"><p>A <a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a>.</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <p class="since">Since: <a class="link" href="ix05.html#api-index-1.6">1.6</a></p> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-collect-pads-new"></a><h3>gst_collect_pads_new ()</h3> |
| <pre class="programlisting"><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="returnvalue">GstCollectPads</span></a> * |
| gst_collect_pads_new (<em class="parameter"><code><span class="type">void</span></code></em>);</pre> |
| <p>Create a new instance of <a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a>.</p> |
| <p>MT safe.</p> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-new.returns"></a><h4>Returns</h4> |
| <p> a new <a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a>, or <a href="/usr/share/gtk-doc/html/glibglib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> in case of an error. </p> |
| <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span></p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-collect-pads-add-pad"></a><h3>gst_collect_pads_add_pad ()</h3> |
| <pre class="programlisting"><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="returnvalue">GstCollectData</span></a> * |
| gst_collect_pads_add_pad (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>, |
| <em class="parameter"><code><a href="../html/GstPad.html#GstPad-struct"><span class="type">GstPad</span></a> *pad</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>, |
| <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectDataDestroyNotify" title="GstCollectDataDestroyNotify ()"><span class="type">GstCollectDataDestroyNotify</span></a> destroy_notify</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> lock</code></em>);</pre> |
| <p>Add a pad to the collection of collect pads. The pad has to be |
| a sinkpad. The refcount of the pad is incremented. Use |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-remove-pad" title="gst_collect_pads_remove_pad ()"><code class="function">gst_collect_pads_remove_pad()</code></a> to remove the pad from the collection |
| again.</p> |
| <p>You specify a size for the returned <a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> structure |
| so that you can use it to store additional information.</p> |
| <p>You can also specify a <a class="link" href="GstCollectPads.html#GstCollectDataDestroyNotify" title="GstCollectDataDestroyNotify ()"><span class="type">GstCollectDataDestroyNotify</span></a> that will be called |
| just before the <a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> structure is freed. It is passed the |
| pointer to the structure and should free any custom memory and resources |
| allocated for it.</p> |
| <p>Keeping a pad locked in waiting state is only relevant when using |
| the default collection algorithm (providing the oldest buffer). |
| It ensures a buffer must be available on this pad for a collection |
| to take place. This is of typical use to a muxer element where |
| non-subtitle streams should always be in waiting state, |
| e.g. to assure that caps information is available on all these streams |
| when initial headers have to be written.</p> |
| <p>The pad will be automatically activated in push mode when <em class="parameter"><code>pads</code></em> |
| is |
| started.</p> |
| <p>MT safe.</p> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-add-pad.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>the collectpads to use</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>pad</p></td> |
| <td class="parameter_description"><p> the pad to add. </p></td> |
| <td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>size</p></td> |
| <td class="parameter_description"><p>the size of the returned <a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> structure</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>destroy_notify</p></td> |
| <td class="parameter_description"><p> function to be called before the returned |
| <a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> structure is freed. </p></td> |
| <td class="parameter_annotations"><span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span></td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>lock</p></td> |
| <td class="parameter_description"><p>whether to lock this pad in usual waiting state</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-add-pad.returns"></a><h4>Returns</h4> |
| <p> a new <a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> to identify the |
| new pad. Or <a href="/usr/share/gtk-doc/html/glibglib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if wrong parameters are supplied. </p> |
| <p><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>][<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-collect-pads-remove-pad"></a><h3>gst_collect_pads_remove_pad ()</h3> |
| <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> |
| gst_collect_pads_remove_pad (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>, |
| <em class="parameter"><code><a href="../html/GstPad.html#GstPad-struct"><span class="type">GstPad</span></a> *pad</code></em>);</pre> |
| <p>Remove a pad from the collection of collect pads. This function will also |
| free the <a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> and all the resources that were allocated with |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-add-pad" title="gst_collect_pads_add_pad ()"><code class="function">gst_collect_pads_add_pad()</code></a>.</p> |
| <p>The pad will be deactivated automatically when <em class="parameter"><code>pads</code></em> |
| is stopped.</p> |
| <p>MT safe.</p> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-remove-pad.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>the collectpads to use</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>pad</p></td> |
| <td class="parameter_description"><p> the pad to remove. </p></td> |
| <td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-remove-pad.returns"></a><h4>Returns</h4> |
| <p> <a href="/usr/share/gtk-doc/html/glibglib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad could be removed.</p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-collect-pads-start"></a><h3>gst_collect_pads_start ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_collect_pads_start (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>);</pre> |
| <p>Starts the processing of data in the collect_pads.</p> |
| <p>MT safe.</p> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-start.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>the collectpads to use</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-collect-pads-stop"></a><h3>gst_collect_pads_stop ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_collect_pads_stop (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>);</pre> |
| <p>Stops the processing of data in the collect_pads. this function |
| will also unblock any blocking operations.</p> |
| <p>MT safe.</p> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-stop.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>the collectpads to use</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-collect-pads-available"></a><h3>gst_collect_pads_available ()</h3> |
| <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> |
| gst_collect_pads_available (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>);</pre> |
| <p>Query how much bytes can be read from each queued buffer. This means |
| that the result of this call is the maximum number of bytes that can |
| be read from each of the pads.</p> |
| <p>This function should be called with <em class="parameter"><code>pads</code></em> |
| STREAM_LOCK held, such as |
| in the callback.</p> |
| <p>MT safe.</p> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-available.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>the collectpads to query</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-available.returns"></a><h4>Returns</h4> |
| <p> The maximum number of bytes queued on all pads. This function |
| returns 0 if a pad has no queued buffer.</p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-collect-pads-flush"></a><h3>gst_collect_pads_flush ()</h3> |
| <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> |
| gst_collect_pads_flush (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>, |
| <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> *data</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre> |
| <p>Flush <em class="parameter"><code>size</code></em> |
| bytes from the pad <em class="parameter"><code>data</code></em> |
| .</p> |
| <p>This function should be called with <em class="parameter"><code>pads</code></em> |
| STREAM_LOCK held, such as |
| in the callback.</p> |
| <p>MT safe.</p> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-flush.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>the collectpads to query</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>data</p></td> |
| <td class="parameter_description"><p>the data to use</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>size</p></td> |
| <td class="parameter_description"><p>the number of bytes to flush</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-flush.returns"></a><h4>Returns</h4> |
| <p> The number of bytes flushed This can be less than <em class="parameter"><code>size</code></em> |
| and |
| is 0 if the pad was end-of-stream.</p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-collect-pads-peek"></a><h3>gst_collect_pads_peek ()</h3> |
| <pre class="programlisting"><a href="../html/GstBuffer.html#GstBuffer-struct"><span class="returnvalue">GstBuffer</span></a> * |
| gst_collect_pads_peek (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>, |
| <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> *data</code></em>);</pre> |
| <p>Peek at the buffer currently queued in <em class="parameter"><code>data</code></em> |
| . This function |
| should be called with the <em class="parameter"><code>pads</code></em> |
| STREAM_LOCK held, such as in the callback |
| handler.</p> |
| <p>MT safe.</p> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-peek.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>the collectpads to peek</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>data</p></td> |
| <td class="parameter_description"><p>the data to use</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-peek.returns"></a><h4>Returns</h4> |
| <p> The buffer in <em class="parameter"><code>data</code></em> |
| or <a href="/usr/share/gtk-doc/html/glibglib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if no |
| buffer is queued. should unref the buffer after usage. </p> |
| <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-collect-pads-pop"></a><h3>gst_collect_pads_pop ()</h3> |
| <pre class="programlisting"><a href="../html/GstBuffer.html#GstBuffer-struct"><span class="returnvalue">GstBuffer</span></a> * |
| gst_collect_pads_pop (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>, |
| <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> *data</code></em>);</pre> |
| <p>Pop the buffer currently queued in <em class="parameter"><code>data</code></em> |
| . This function |
| should be called with the <em class="parameter"><code>pads</code></em> |
| STREAM_LOCK held, such as in the callback |
| handler.</p> |
| <p>MT safe.</p> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-pop.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>the collectpads to pop</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>data</p></td> |
| <td class="parameter_description"><p>the data to use</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-pop.returns"></a><h4>Returns</h4> |
| <p> The buffer in <em class="parameter"><code>data</code></em> |
| or <a href="/usr/share/gtk-doc/html/glibglib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if no |
| buffer was queued. You should unref the buffer after usage. </p> |
| <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-collect-pads-read-buffer"></a><h3>gst_collect_pads_read_buffer ()</h3> |
| <pre class="programlisting"><a href="../html/GstBuffer.html#GstBuffer-struct"><span class="returnvalue">GstBuffer</span></a> * |
| gst_collect_pads_read_buffer (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>, |
| <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> *data</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre> |
| <p>Get a subbuffer of <em class="parameter"><code>size</code></em> |
| bytes from the given pad <em class="parameter"><code>data</code></em> |
| .</p> |
| <p>This function should be called with <em class="parameter"><code>pads</code></em> |
| STREAM_LOCK held, such as in the |
| callback.</p> |
| <p>MT safe.</p> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-read-buffer.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>the collectpads to query</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>data</p></td> |
| <td class="parameter_description"><p>the data to use</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>size</p></td> |
| <td class="parameter_description"><p>the number of bytes to read</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-read-buffer.returns"></a><h4>Returns</h4> |
| <p> A sub buffer. The size of the buffer can |
| be less that requested. A return of <a href="/usr/share/gtk-doc/html/glibglib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> signals that the pad is |
| end-of-stream. Unref the buffer after use. </p> |
| <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-collect-pads-take-buffer"></a><h3>gst_collect_pads_take_buffer ()</h3> |
| <pre class="programlisting"><a href="../html/GstBuffer.html#GstBuffer-struct"><span class="returnvalue">GstBuffer</span></a> * |
| gst_collect_pads_take_buffer (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>, |
| <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> *data</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#guint"><span class="type">guint</span></a> size</code></em>);</pre> |
| <p>Get a subbuffer of <em class="parameter"><code>size</code></em> |
| bytes from the given pad <em class="parameter"><code>data</code></em> |
| . Flushes the amount |
| of read bytes.</p> |
| <p>This function should be called with <em class="parameter"><code>pads</code></em> |
| STREAM_LOCK held, such as in the |
| callback.</p> |
| <p>MT safe.</p> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-take-buffer.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>the collectpads to query</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>data</p></td> |
| <td class="parameter_description"><p>the data to use</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>size</p></td> |
| <td class="parameter_description"><p>the number of bytes to read</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-take-buffer.returns"></a><h4>Returns</h4> |
| <p> A sub buffer. The size of the buffer can |
| be less that requested. A return of <a href="/usr/share/gtk-doc/html/glibglib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> signals that the pad is |
| end-of-stream. Unref the buffer after use. </p> |
| <p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-collect-pads-clip-running-time"></a><h3>gst_collect_pads_clip_running_time ()</h3> |
| <pre class="programlisting"><a href="../html/GstPad.html#GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a> |
| gst_collect_pads_clip_running_time (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>, |
| <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> *cdata</code></em>, |
| <em class="parameter"><code><a href="../html/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a> *buf</code></em>, |
| <em class="parameter"><code><a href="../html/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a> **outbuf</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre> |
| <p>Convenience clipping function that converts incoming buffer's timestamp |
| to running time, or clips the buffer if outside configured segment.</p> |
| <p>Since 1.6, this clipping function also sets the DTS parameter of the |
| GstCollectData structure. This version of the running time DTS can be |
| negative. G_MININT64 is used to indicate invalid value.</p> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-clip-running-time.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>the collectpads to use</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>cdata</p></td> |
| <td class="parameter_description"><p>collect data of corresponding pad</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>buf</p></td> |
| <td class="parameter_description"><p>buffer being clipped</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>outbuf</p></td> |
| <td class="parameter_description"><p> output buffer with running time, or NULL if clipped. </p></td> |
| <td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>user_data</p></td> |
| <td class="parameter_description"><p>user data (unused)</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-collect-pads-query-default"></a><h3>gst_collect_pads_query_default ()</h3> |
| <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> |
| gst_collect_pads_query_default (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>, |
| <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> *data</code></em>, |
| <em class="parameter"><code><a href="../html/GstQuery.html#GstQuery-struct"><span class="type">GstQuery</span></a> *query</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> discard</code></em>);</pre> |
| <p>Default <a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> query handling that elements should always |
| chain up to to ensure proper operation. Element might however indicate |
| query should not be forwarded downstream.</p> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-query-default.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>the collectpads to use</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>data</p></td> |
| <td class="parameter_description"><p>collect data of corresponding pad</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>query</p></td> |
| <td class="parameter_description"><p>query being processed</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>discard</p></td> |
| <td class="parameter_description"><p>process but do not send event downstream</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-collect-pads-event-default"></a><h3>gst_collect_pads_event_default ()</h3> |
| <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> |
| gst_collect_pads_event_default (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>, |
| <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> *data</code></em>, |
| <em class="parameter"><code><a href="../html/GstEvent.html#GstEvent-struct"><span class="type">GstEvent</span></a> *event</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> discard</code></em>);</pre> |
| <p>Default <a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> event handling that elements should always |
| chain up to to ensure proper operation. Element might however indicate |
| event should not be forwarded downstream.</p> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-event-default.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>the collectpads to use</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>data</p></td> |
| <td class="parameter_description"><p>collect data of corresponding pad</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>event</p></td> |
| <td class="parameter_description"><p>event being processed</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>discard</p></td> |
| <td class="parameter_description"><p>process but do not send event downstream</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-collect-pads-src-event-default"></a><h3>gst_collect_pads_src_event_default ()</h3> |
| <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> |
| gst_collect_pads_src_event_default (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>, |
| <em class="parameter"><code><a href="../html/GstPad.html#GstPad-struct"><span class="type">GstPad</span></a> *pad</code></em>, |
| <em class="parameter"><code><a href="../html/GstEvent.html#GstEvent-struct"><span class="type">GstEvent</span></a> *event</code></em>);</pre> |
| <p>Default <a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> event handling for the src pad of elements. |
| Elements can chain up to this to let flushing seek event handling |
| be done by <a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a>.</p> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-src-event-default.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>the <a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> to use</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>pad</p></td> |
| <td class="parameter_description"><p>src <a href="../html/GstPad.html#GstPad-struct"><span class="type">GstPad</span></a> that received the event</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>event</p></td> |
| <td class="parameter_description"><p>event being processed</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <p class="since">Since: <a class="link" href="ix06.html#api-index-1.4">1.4</a></p> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-collect-pads-set-buffer-function"></a><h3>gst_collect_pads_set_buffer_function ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_collect_pads_set_buffer_function (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>, |
| <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectPadsBufferFunction" title="GstCollectPadsBufferFunction ()"><span class="type">GstCollectPadsBufferFunction</span></a> func</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre> |
| <p>Set the callback function and user data that will be called with |
| the oldest buffer when all pads have been collected, or <a href="/usr/share/gtk-doc/html/glibglib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on EOS. |
| If a buffer is passed, the callback owns a reference and must unref |
| it.</p> |
| <p>MT safe.</p> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-set-buffer-function.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>the collectpads to use</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>func</p></td> |
| <td class="parameter_description"><p> the function to set. </p></td> |
| <td class="parameter_annotations"><span class="annotation">[<acronym title="The callback is valid only during the call to the method."><span class="acronym">scope call</span></acronym>]</span></td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>user_data</p></td> |
| <td class="parameter_description"><p> user data passed to the function. </p></td> |
| <td class="parameter_annotations"><span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span></td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-collect-pads-set-clip-function"></a><h3>gst_collect_pads_set_clip_function ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_collect_pads_set_clip_function (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>, |
| <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectPadsClipFunction" title="GstCollectPadsClipFunction ()"><span class="type">GstCollectPadsClipFunction</span></a> clipfunc</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre> |
| <p>Install a clipping function that is called right after a buffer is received |
| on a pad managed by <em class="parameter"><code>pads</code></em> |
| . See <a class="link" href="GstCollectPads.html#GstCollectPadsClipFunction" title="GstCollectPadsClipFunction ()"><span class="type">GstCollectPadsClipFunction</span></a> for more info.</p> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-set-clip-function.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>the collectpads to use</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>clipfunc</p></td> |
| <td class="parameter_description"><p> clip function to install. </p></td> |
| <td class="parameter_annotations"><span class="annotation">[<acronym title="The callback is valid only during the call to the method."><span class="acronym">scope call</span></acronym>]</span></td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>user_data</p></td> |
| <td class="parameter_description"><p>user data to pass to <em class="parameter"><code>clip_func</code></em> |
| </p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-collect-pads-set-compare-function"></a><h3>gst_collect_pads_set_compare_function ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_collect_pads_set_compare_function (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>, |
| <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectPadsCompareFunction" title="GstCollectPadsCompareFunction ()"><span class="type">GstCollectPadsCompareFunction</span></a> func</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre> |
| <p>Set the timestamp comparison function.</p> |
| <p>MT safe.</p> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-set-compare-function.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>the pads to use</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>func</p></td> |
| <td class="parameter_description"><p> the function to set. </p></td> |
| <td class="parameter_annotations"><span class="annotation">[<acronym title="The callback is valid only during the call to the method."><span class="acronym">scope call</span></acronym>]</span></td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>user_data</p></td> |
| <td class="parameter_description"><p> user data passed to the function. </p></td> |
| <td class="parameter_annotations"><span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span></td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-collect-pads-set-event-function"></a><h3>gst_collect_pads_set_event_function ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_collect_pads_set_event_function (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>, |
| <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectPadsEventFunction" title="GstCollectPadsEventFunction ()"><span class="type">GstCollectPadsEventFunction</span></a> func</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre> |
| <p>Set the event callback function and user data that will be called when |
| collectpads has received an event originating from one of the collected |
| pads. If the event being processed is a serialized one, this callback is |
| called with <em class="parameter"><code>pads</code></em> |
| STREAM_LOCK held, otherwise not. As this lock should be |
| held when calling a number of CollectPads functions, it should be acquired |
| if so (unusually) needed.</p> |
| <p>MT safe.</p> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-set-event-function.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>the collectpads to use</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>func</p></td> |
| <td class="parameter_description"><p> the function to set. </p></td> |
| <td class="parameter_annotations"><span class="annotation">[<acronym title="The callback is valid only during the call to the method."><span class="acronym">scope call</span></acronym>]</span></td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>user_data</p></td> |
| <td class="parameter_description"><p>user data passed to the function</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-collect-pads-set-flush-function"></a><h3>gst_collect_pads_set_flush_function ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_collect_pads_set_flush_function (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>, |
| <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectPadsFlushFunction" title="GstCollectPadsFlushFunction ()"><span class="type">GstCollectPadsFlushFunction</span></a> func</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre> |
| <p>Install a flush function that is called when the internal |
| state of all pads should be flushed as part of flushing seek |
| handling. See <a class="link" href="GstCollectPads.html#GstCollectPadsFlushFunction" title="GstCollectPadsFlushFunction ()"><span class="type">GstCollectPadsFlushFunction</span></a> for more info.</p> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-set-flush-function.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>the collectpads to use</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>func</p></td> |
| <td class="parameter_description"><p> flush function to install. </p></td> |
| <td class="parameter_annotations"><span class="annotation">[<acronym title="The callback is valid only during the call to the method."><span class="acronym">scope call</span></acronym>]</span></td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>user_data</p></td> |
| <td class="parameter_description"><p>user data to pass to <em class="parameter"><code>func</code></em> |
| </p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <p class="since">Since: <a class="link" href="ix06.html#api-index-1.4">1.4</a></p> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-collect-pads-set-query-function"></a><h3>gst_collect_pads_set_query_function ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_collect_pads_set_query_function (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>, |
| <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectPadsQueryFunction" title="GstCollectPadsQueryFunction ()"><span class="type">GstCollectPadsQueryFunction</span></a> func</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre> |
| <p>Set the query callback function and user data that will be called after |
| collectpads has received a query originating from one of the collected |
| pads. If the query being processed is a serialized one, this callback is |
| called with <em class="parameter"><code>pads</code></em> |
| STREAM_LOCK held, otherwise not. As this lock should be |
| held when calling a number of CollectPads functions, it should be acquired |
| if so (unusually) needed.</p> |
| <p>MT safe.</p> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-set-query-function.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>the collectpads to use</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>func</p></td> |
| <td class="parameter_description"><p> the function to set. </p></td> |
| <td class="parameter_annotations"><span class="annotation">[<acronym title="The callback is valid only during the call to the method."><span class="acronym">scope call</span></acronym>]</span></td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>user_data</p></td> |
| <td class="parameter_description"><p>user data passed to the function</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-collect-pads-set-flushing"></a><h3>gst_collect_pads_set_flushing ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_collect_pads_set_flushing (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> flushing</code></em>);</pre> |
| <p>Change the flushing state of all the pads in the collection. No pad |
| is able to accept anymore data when <em class="parameter"><code>flushing</code></em> |
| is <a href="/usr/share/gtk-doc/html/glibglib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>. Calling this |
| function with <em class="parameter"><code>flushing</code></em> |
| <a href="/usr/share/gtk-doc/html/glibglib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> makes <em class="parameter"><code>pads</code></em> |
| accept data again. |
| Caller must ensure that downstream streaming (thread) is not blocked, |
| e.g. by sending a FLUSH_START downstream.</p> |
| <p>MT safe.</p> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-set-flushing.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>the collectpads to use</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>flushing</p></td> |
| <td class="parameter_description"><p>desired state of the pads</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-collect-pads-set-function"></a><h3>gst_collect_pads_set_function ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_collect_pads_set_function (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>, |
| <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectPadsFunction" title="GstCollectPadsFunction ()"><span class="type">GstCollectPadsFunction</span></a> func</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre> |
| <p>CollectPads provides a default collection algorithm that will determine |
| the oldest buffer available on all of its pads, and then delegate |
| to a configured callback. |
| However, if circumstances are more complicated and/or more control |
| is desired, this sets a callback that will be invoked instead when |
| all the pads added to the collection have buffers queued. |
| Evidently, this callback is not compatible with |
| <a class="link" href="GstCollectPads.html#gst-collect-pads-set-buffer-function" title="gst_collect_pads_set_buffer_function ()"><code class="function">gst_collect_pads_set_buffer_function()</code></a> callback. |
| If this callback is set, the former will be unset.</p> |
| <p>MT safe.</p> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-set-function.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>the collectpads to use</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>func</p></td> |
| <td class="parameter_description"><p> the function to set. </p></td> |
| <td class="parameter_annotations"><span class="annotation">[<acronym title="The callback is valid only during the call to the method."><span class="acronym">scope call</span></acronym>]</span></td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>user_data</p></td> |
| <td class="parameter_description"><p>user data passed to the function</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-collect-pads-set-waiting"></a><h3>gst_collect_pads_set_waiting ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_collect_pads_set_waiting (<em class="parameter"><code><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *pads</code></em>, |
| <em class="parameter"><code><a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> *data</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> waiting</code></em>);</pre> |
| <p>Sets a pad to waiting or non-waiting mode, if at least this pad |
| has not been created with locked waiting state, |
| in which case nothing happens.</p> |
| <p>This function should be called with <em class="parameter"><code>pads</code></em> |
| STREAM_LOCK held, such as |
| in the callback.</p> |
| <p>MT safe.</p> |
| <div class="refsect3"> |
| <a name="gst-collect-pads-set-waiting.parameters"></a><h4>Parameters</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="150px" class="parameters_name"> |
| <col class="parameters_description"> |
| <col width="200px" class="parameters_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="parameter_name"><p>pads</p></td> |
| <td class="parameter_description"><p>the collectpads</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>data</p></td> |
| <td class="parameter_description"><p>the data to use</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>waiting</p></td> |
| <td class="parameter_description"><p>boolean indicating whether this pad should operate |
| in waiting or non-waiting mode</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| </div> |
| <div class="refsect1"> |
| <a name="GstCollectPads.other_details"></a><h2>Types and Values</h2> |
| <div class="refsect2"> |
| <a name="GstCollectPads-struct"></a><h3>struct GstCollectPads</h3> |
| <pre class="programlisting">struct GstCollectPads { |
| GSList *data; /* list of CollectData items */ |
| }; |
| </pre> |
| <p>Collectpads object.</p> |
| <div class="refsect3"> |
| <a name="GstCollectPads.members"></a><h4>Members</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="300px" class="struct_members_name"> |
| <col class="struct_members_description"> |
| <col width="200px" class="struct_members_annotations"> |
| </colgroup> |
| <tbody><tr> |
| <td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glibglib-Singly-Linked-Lists.html#GSList"><span class="type">GSList</span></a> *<em class="structfield"><code><a name="GstCollectPads-struct.data"></a>data</code></em>;</p></td> |
| <td class="struct_member_description"><p> <a href="/usr/share/gtk-doc/html/glibglib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of <a class="link" href="GstCollectPads.html#GstCollectData" title="struct GstCollectData"><span class="type">GstCollectData</span></a> managed |
| by this <a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a>. </p></td> |
| <td class="struct_member_annotations"><span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> GstBase.CollectData]</span></td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GstCollectData"></a><h3>struct GstCollectData</h3> |
| <pre class="programlisting">struct GstCollectData { |
| /* with STREAM_LOCK of @collect */ |
| GstCollectPads *collect; |
| GstPad *pad; |
| GstBuffer *buffer; |
| guint pos; |
| GstSegment segment; |
| |
| gint64 dts; |
| }; |
| </pre> |
| <p>Structure used by the collect_pads.</p> |
| <div class="refsect3"> |
| <a name="GstCollectData.members"></a><h4>Members</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="300px" class="struct_members_name"> |
| <col class="struct_members_description"> |
| <col width="200px" class="struct_members_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="struct_member_name"><p><a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a> *<em class="structfield"><code><a name="GstCollectData.collect"></a>collect</code></em>;</p></td> |
| <td class="struct_member_description"><p>owner <a class="link" href="GstCollectPads.html" title="GstCollectPads"><span class="type">GstCollectPads</span></a></p></td> |
| <td class="struct_member_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="struct_member_name"><p><a href="../html/GstPad.html#GstPad-struct"><span class="type">GstPad</span></a> *<em class="structfield"><code><a name="GstCollectData.pad"></a>pad</code></em>;</p></td> |
| <td class="struct_member_description"><p><a href="../html/GstPad.html#GstPad-struct"><span class="type">GstPad</span></a> managed by this data</p></td> |
| <td class="struct_member_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="struct_member_name"><p><a href="../html/GstBuffer.html#GstBuffer-struct"><span class="type">GstBuffer</span></a> *<em class="structfield"><code><a name="GstCollectData.buffer"></a>buffer</code></em>;</p></td> |
| <td class="struct_member_description"><p>currently queued buffer.</p></td> |
| <td class="struct_member_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#guint"><span class="type">guint</span></a> <em class="structfield"><code><a name="GstCollectData.pos"></a>pos</code></em>;</p></td> |
| <td class="struct_member_description"><p>position in the buffer</p></td> |
| <td class="struct_member_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="struct_member_name"><p><a href="../html/GstSegment.html#GstSegment-struct"><span class="type">GstSegment</span></a> <em class="structfield"><code><a name="GstCollectData.segment"></a>segment</code></em>;</p></td> |
| <td class="struct_member_description"><p>last segment received.</p></td> |
| <td class="struct_member_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="struct_member_name"><p><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gint64"><span class="type">gint64</span></a> <em class="structfield"><code><a name="GstCollectData.dts"></a>dts</code></em>;</p></td> |
| <td class="struct_member_description"><p>the signed version of the DTS converted to running time. To access |
| this memeber, use <a class="link" href="GstCollectPads.html#GST-COLLECT-PADS-DTS:CAPS" title="GST_COLLECT_PADS_DTS()"><code class="literal">GST_COLLECT_PADS_DTS</code></a> macro. (Since 1.6)</p></td> |
| <td class="struct_member_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GstCollectPadsStateFlags"></a><h3>enum GstCollectPadsStateFlags</h3> |
| <div class="refsect3"> |
| <a name="GstCollectPadsStateFlags.members"></a><h4>Members</h4> |
| <div class="informaltable"><table class="informaltable" width="100%" border="0"> |
| <colgroup> |
| <col width="300px" class="enum_members_name"> |
| <col class="enum_members_description"> |
| <col width="200px" class="enum_members_annotations"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="enum_member_name"><p><a name="GST-COLLECT-PADS-STATE-EOS:CAPS"></a>GST_COLLECT_PADS_STATE_EOS</p></td> |
| <td class="enum_member_description"> |
| <p>Set if collectdata's pad is EOS.</p> |
| </td> |
| <td class="enum_member_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="enum_member_name"><p><a name="GST-COLLECT-PADS-STATE-FLUSHING:CAPS"></a>GST_COLLECT_PADS_STATE_FLUSHING</p></td> |
| <td class="enum_member_description"> |
| <p>Set if collectdata's pad is flushing.</p> |
| </td> |
| <td class="enum_member_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="enum_member_name"><p><a name="GST-COLLECT-PADS-STATE-NEW-SEGMENT:CAPS"></a>GST_COLLECT_PADS_STATE_NEW_SEGMENT</p></td> |
| <td class="enum_member_description"> |
| <p>Set if collectdata's pad received a |
| new_segment event.</p> |
| </td> |
| <td class="enum_member_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="enum_member_name"><p><a name="GST-COLLECT-PADS-STATE-WAITING:CAPS"></a>GST_COLLECT_PADS_STATE_WAITING</p></td> |
| <td class="enum_member_description"> |
| <p>Set if collectdata's pad must be waited |
| for when collecting.</p> |
| </td> |
| <td class="enum_member_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="enum_member_name"><p><a name="GST-COLLECT-PADS-STATE-LOCKED:CAPS"></a>GST_COLLECT_PADS_STATE_LOCKED</p></td> |
| <td class="enum_member_description"> |
| <p>Set collectdata's pad WAITING state must |
| not be changed. |
| <a class="link" href="GstCollectPads.html#GstCollectPadsStateFlags" title="enum GstCollectPadsStateFlags"><span class="type">GstCollectPadsStateFlags</span></a> indicate private state of a collectdata('s pad).</p> |
| </td> |
| <td class="enum_member_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| </div> |
| </div> |
| <div class="footer"> |
| <hr>Generated by GTK-Doc V1.25</div> |
| </body> |
| </html> |