diff options
Diffstat (limited to 'docs/libs/html/GstBaseSink.html')
-rw-r--r-- | docs/libs/html/GstBaseSink.html | 293 |
1 files changed, 129 insertions, 164 deletions
diff --git a/docs/libs/html/GstBaseSink.html b/docs/libs/html/GstBaseSink.html index b95172f..c4049c7 100644 --- a/docs/libs/html/GstBaseSink.html +++ b/docs/libs/html/GstBaseSink.html @@ -3,8 +3,8 @@ <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>GstBaseSink</title> -<meta name="generator" content="DocBook XSL Stylesheets V1.75.2"> -<link rel="home" href="index.html" title="GStreamer 0.11 Library Reference Manual"> +<meta name="generator" content="DocBook XSL Stylesheets V1.76.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="GstBaseSrc.html" title="GstBaseSrc"> <link rel="next" href="GstBaseTransform.html" title="GstBaseTransform"> @@ -17,7 +17,7 @@ <td><a accesskey="p" href="GstBaseSrc.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> <td><a accesskey="u" href="gstreamer-base.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td> <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> -<th width="100%" align="center">GStreamer 0.11 Library Reference Manual</th> +<th width="100%" align="center">GStreamer 1.0 Library Reference Manual</th> <td><a accesskey="n" href="GstBaseTransform.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> </tr> <tr><td colspan="5" class="shortcuts"> @@ -49,24 +49,24 @@ struct <a class="link" href="GstBaseSink.html#GstBaseSinkClass" tit <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstBaseSink.html#gst-base-sink-query-latency" title="gst_base_sink_query_latency ()">gst_base_sink_query_latency</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>, <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *live</code></em>, <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *upstream_live</code></em>, - <em class="parameter"><code><a href="../gstreamer-0.11/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> *min_latency</code></em>, - <em class="parameter"><code><a href="../gstreamer-0.11/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> *max_latency</code></em>); -<a href="../gstreamer-0.11/GstClock.html#GstClockTime"><span class="returnvalue">GstClockTime</span></a> <a class="link" href="GstBaseSink.html#gst-base-sink-get-latency" title="gst_base_sink_get_latency ()">gst_base_sink_get_latency</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>); -<a href="../gstreamer-0.11/GstPad.html#GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a> <a class="link" href="GstBaseSink.html#gst-base-sink-do-preroll" title="gst_base_sink_do_preroll ()">gst_base_sink_do_preroll</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>, - <em class="parameter"><code><a href="../gstreamer-0.11/gstreamer-GstMiniObject.html#GstMiniObject"><span class="type">GstMiniObject</span></a> *obj</code></em>); -<a href="../gstreamer-0.11/GstPad.html#GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a> <a class="link" href="GstBaseSink.html#gst-base-sink-wait-preroll" title="gst_base_sink_wait_preroll ()">gst_base_sink_wait_preroll</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>); -<a href="../gstreamer-0.11/GstClock.html#GstClockReturn"><span class="returnvalue">GstClockReturn</span></a> <a class="link" href="GstBaseSink.html#gst-base-sink-wait-clock" title="gst_base_sink_wait_clock ()">gst_base_sink_wait_clock</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>, - <em class="parameter"><code><a href="../gstreamer-0.11/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> time</code></em>, - <em class="parameter"><code><a href="../gstreamer-0.11/GstClock.html#GstClockTimeDiff"><span class="type">GstClockTimeDiff</span></a> *jitter</code></em>); -<a href="../gstreamer-0.11/GstPad.html#GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a> <a class="link" href="GstBaseSink.html#gst-base-sink-wait-eos" title="gst_base_sink_wait_eos ()">gst_base_sink_wait_eos</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>, - <em class="parameter"><code><a href="../gstreamer-0.11/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> time</code></em>, - <em class="parameter"><code><a href="../gstreamer-0.11/GstClock.html#GstClockTimeDiff"><span class="type">GstClockTimeDiff</span></a> *jitter</code></em>); + <em class="parameter"><code><a href="../gstreamer-1.0/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> *min_latency</code></em>, + <em class="parameter"><code><a href="../gstreamer-1.0/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> *max_latency</code></em>); +<a href="../gstreamer-1.0/GstClock.html#GstClockTime"><span class="returnvalue">GstClockTime</span></a> <a class="link" href="GstBaseSink.html#gst-base-sink-get-latency" title="gst_base_sink_get_latency ()">gst_base_sink_get_latency</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>); +<a href="../gstreamer-1.0/GstPad.html#GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a> <a class="link" href="GstBaseSink.html#gst-base-sink-do-preroll" title="gst_base_sink_do_preroll ()">gst_base_sink_do_preroll</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>, + <em class="parameter"><code><a href="../gstreamer-1.0/gstreamer-GstMiniObject.html#GstMiniObject"><span class="type">GstMiniObject</span></a> *obj</code></em>); +<a href="../gstreamer-1.0/GstPad.html#GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a> <a class="link" href="GstBaseSink.html#gst-base-sink-wait-preroll" title="gst_base_sink_wait_preroll ()">gst_base_sink_wait_preroll</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>); +<a href="../gstreamer-1.0/GstClock.html#GstClockReturn"><span class="returnvalue">GstClockReturn</span></a> <a class="link" href="GstBaseSink.html#gst-base-sink-wait-clock" title="gst_base_sink_wait_clock ()">gst_base_sink_wait_clock</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>, + <em class="parameter"><code><a href="../gstreamer-1.0/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> time</code></em>, + <em class="parameter"><code><a href="../gstreamer-1.0/GstClock.html#GstClockTimeDiff"><span class="type">GstClockTimeDiff</span></a> *jitter</code></em>); +<a href="../gstreamer-1.0/GstPad.html#GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a> <a class="link" href="GstBaseSink.html#gst-base-sink-wait-eos" title="gst_base_sink_wait_eos ()">gst_base_sink_wait_eos</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>, + <em class="parameter"><code><a href="../gstreamer-1.0/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> time</code></em>, + <em class="parameter"><code><a href="../gstreamer-1.0/GstClock.html#GstClockTimeDiff"><span class="type">GstClockTimeDiff</span></a> *jitter</code></em>); <span class="returnvalue">void</span> <a class="link" href="GstBaseSink.html#gst-base-sink-set-sync" title="gst_base_sink_set_sync ()">gst_base_sink_set_sync</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>, <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> sync</code></em>); <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstBaseSink.html#gst-base-sink-get-sync" title="gst_base_sink_get_sync ()">gst_base_sink_get_sync</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>); <span class="returnvalue">void</span> <a class="link" href="GstBaseSink.html#gst-base-sink-set-max-lateness" title="gst_base_sink_set_max_lateness ()">gst_base_sink_set_max_lateness</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>, - <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> max_lateness</code></em>); -<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="returnvalue">gint64</span></a> <a class="link" href="GstBaseSink.html#gst-base-sink-get-max-lateness" title="gst_base_sink_get_max_lateness ()">gst_base_sink_get_max_lateness</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>); + <em class="parameter"><code><span class="type">gint64</span> max_lateness</code></em>); +<span class="returnvalue">gint64</span> <a class="link" href="GstBaseSink.html#gst-base-sink-get-max-lateness" title="gst_base_sink_get_max_lateness ()">gst_base_sink_get_max_lateness</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>); <span class="returnvalue">void</span> <a class="link" href="GstBaseSink.html#gst-base-sink-set-qos-enabled" title="gst_base_sink_set_qos_enabled ()">gst_base_sink_set_qos_enabled</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>, <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> enabled</code></em>); <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstBaseSink.html#gst-base-sink-is-qos-enabled" title="gst_base_sink_is_qos_enabled ()">gst_base_sink_is_qos_enabled</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>); @@ -74,31 +74,24 @@ struct <a class="link" href="GstBaseSink.html#GstBaseSinkClass" tit <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> enabled</code></em>); <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstBaseSink.html#gst-base-sink-is-async-enabled" title="gst_base_sink_is_async_enabled ()">gst_base_sink_is_async_enabled</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>); <span class="returnvalue">void</span> <a class="link" href="GstBaseSink.html#gst-base-sink-set-ts-offset" title="gst_base_sink_set_ts_offset ()">gst_base_sink_set_ts_offset</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>, - <em class="parameter"><code><a href="../gstreamer-0.11/GstClock.html#GstClockTimeDiff"><span class="type">GstClockTimeDiff</span></a> offset</code></em>); -<a href="../gstreamer-0.11/GstClock.html#GstClockTimeDiff"><span class="returnvalue">GstClockTimeDiff</span></a> <a class="link" href="GstBaseSink.html#gst-base-sink-get-ts-offset" title="gst_base_sink_get_ts_offset ()">gst_base_sink_get_ts_offset</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>); + <em class="parameter"><code><a href="../gstreamer-1.0/GstClock.html#GstClockTimeDiff"><span class="type">GstClockTimeDiff</span></a> offset</code></em>); +<a href="../gstreamer-1.0/GstClock.html#GstClockTimeDiff"><span class="returnvalue">GstClockTimeDiff</span></a> <a class="link" href="GstBaseSink.html#gst-base-sink-get-ts-offset" title="gst_base_sink_get_ts_offset ()">gst_base_sink_get_ts_offset</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>); <span class="returnvalue">void</span> <a class="link" href="GstBaseSink.html#gst-base-sink-set-render-delay" title="gst_base_sink_set_render_delay ()">gst_base_sink_set_render_delay</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>, - <em class="parameter"><code><a href="../gstreamer-0.11/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> delay</code></em>); -<a href="../gstreamer-0.11/GstClock.html#GstClockTime"><span class="returnvalue">GstClockTime</span></a> <a class="link" href="GstBaseSink.html#gst-base-sink-get-render-delay" title="gst_base_sink_get_render_delay ()">gst_base_sink_get_render_delay</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>); -<span class="returnvalue">void</span> <a class="link" href="GstBaseSink.html#gst-base-sink-set-last-buffer-enabled" title="gst_base_sink_set_last_buffer_enabled ()">gst_base_sink_set_last_buffer_enabled</a> - (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>, - <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> enabled</code></em>); -<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstBaseSink.html#gst-base-sink-is-last-buffer-enabled" title="gst_base_sink_is_last_buffer_enabled ()">gst_base_sink_is_last_buffer_enabled</a> - (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>); -<a href="../gstreamer-0.11/gstreamer-GstBuffer.html#GstBuffer"><span class="returnvalue">GstBuffer</span></a> * <a class="link" href="GstBaseSink.html#gst-base-sink-get-last-buffer" title="gst_base_sink_get_last_buffer ()">gst_base_sink_get_last_buffer</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>); + <em class="parameter"><code><a href="../gstreamer-1.0/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> delay</code></em>); +<a href="../gstreamer-1.0/GstClock.html#GstClockTime"><span class="returnvalue">GstClockTime</span></a> <a class="link" href="GstBaseSink.html#gst-base-sink-get-render-delay" title="gst_base_sink_get_render_delay ()">gst_base_sink_get_render_delay</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>); +<a href="../gstreamer-1.0/gstreamer-GstSample.html#GstSample"><span class="returnvalue">GstSample</span></a> * <a class="link" href="GstBaseSink.html#gst-base-sink-get-last-sample" title="gst_base_sink_get_last_sample ()">gst_base_sink_get_last_sample</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>); <span class="returnvalue">void</span> <a class="link" href="GstBaseSink.html#gst-base-sink-set-blocksize" title="gst_base_sink_set_blocksize ()">gst_base_sink_set_blocksize</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>, <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> blocksize</code></em>); <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a> <a class="link" href="GstBaseSink.html#gst-base-sink-get-blocksize" title="gst_base_sink_get_blocksize ()">gst_base_sink_get_blocksize</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>); -<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint64"><span class="returnvalue">guint64</span></a> <a class="link" href="GstBaseSink.html#gst-base-sink-get-throttle-time" title="gst_base_sink_get_throttle_time ()">gst_base_sink_get_throttle_time</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>); +<span class="returnvalue">guint64</span> <a class="link" href="GstBaseSink.html#gst-base-sink-get-throttle-time" title="gst_base_sink_get_throttle_time ()">gst_base_sink_get_throttle_time</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>); <span class="returnvalue">void</span> <a class="link" href="GstBaseSink.html#gst-base-sink-set-throttle-time" title="gst_base_sink_set_throttle_time ()">gst_base_sink_set_throttle_time</a> (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>, - <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> throttle</code></em>); + <em class="parameter"><code><span class="type">guint64</span> throttle</code></em>); #define <a class="link" href="GstBaseSink.html#GST-BASE-SINK-PAD:CAPS" title="GST_BASE_SINK_PAD()">GST_BASE_SINK_PAD</a> (obj) #define <a class="link" href="GstBaseSink.html#GST-BASE-SINK-GET-PREROLL-COND:CAPS" title="GST_BASE_SINK_GET_PREROLL_COND()">GST_BASE_SINK_GET_PREROLL_COND</a> (pad) #define <a class="link" href="GstBaseSink.html#GST-BASE-SINK-GET-PREROLL-LOCK:CAPS" title="GST_BASE_SINK_GET_PREROLL_LOCK()">GST_BASE_SINK_GET_PREROLL_LOCK</a> (pad) #define <a class="link" href="GstBaseSink.html#GST-BASE-SINK-PREROLL-BROADCAST:CAPS" title="GST_BASE_SINK_PREROLL_BROADCAST()">GST_BASE_SINK_PREROLL_BROADCAST</a> (pad) #define <a class="link" href="GstBaseSink.html#GST-BASE-SINK-PREROLL-LOCK:CAPS" title="GST_BASE_SINK_PREROLL_LOCK()">GST_BASE_SINK_PREROLL_LOCK</a> (pad) #define <a class="link" href="GstBaseSink.html#GST-BASE-SINK-PREROLL-SIGNAL:CAPS" title="GST_BASE_SINK_PREROLL_SIGNAL()">GST_BASE_SINK_PREROLL_SIGNAL</a> (pad) -#define <a class="link" href="GstBaseSink.html#GST-BASE-SINK-PREROLL-TIMED-WAIT:CAPS" title="GST_BASE_SINK_PREROLL_TIMED_WAIT()">GST_BASE_SINK_PREROLL_TIMED_WAIT</a> (pad, - timeval) #define <a class="link" href="GstBaseSink.html#GST-BASE-SINK-PREROLL-TRYLOCK:CAPS" title="GST_BASE_SINK_PREROLL_TRYLOCK()">GST_BASE_SINK_PREROLL_TRYLOCK</a> (pad) #define <a class="link" href="GstBaseSink.html#GST-BASE-SINK-PREROLL-UNLOCK:CAPS" title="GST_BASE_SINK_PREROLL_UNLOCK()">GST_BASE_SINK_PREROLL_UNLOCK</a> (pad) #define <a class="link" href="GstBaseSink.html#GST-BASE-SINK-PREROLL-WAIT:CAPS" title="GST_BASE_SINK_PREROLL_WAIT()">GST_BASE_SINK_PREROLL_WAIT</a> (pad) @@ -109,8 +102,8 @@ struct <a class="link" href="GstBaseSink.html#GstBaseSinkClass" tit <pre class="synopsis"> <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a> +----<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a> - +----<a href="../gstreamer-0.11/GstObject.html">GstObject</a> - +----<a href="../gstreamer-0.11/GstElement.html">GstElement</a> + +----<a href="../gstreamer-1.0/GstObject.html">GstObject</a> + +----<a href="../gstreamer-1.0/GstElement.html">GstElement</a> +----GstBaseSink </pre> </div> @@ -119,28 +112,28 @@ struct <a class="link" href="GstBaseSink.html#GstBaseSinkClass" tit <pre class="synopsis"> "<a class="link" href="GstBaseSink.html#GstBaseSink--async" title='The "async" property'>async</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> : Read / Write "<a class="link" href="GstBaseSink.html#GstBaseSink--blocksize" title='The "blocksize" property'>blocksize</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> : Read / Write - "<a class="link" href="GstBaseSink.html#GstBaseSink--enable-last-buffer" title='The "enable-last-buffer" property'>enable-last-buffer</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> : Read / Write - "<a class="link" href="GstBaseSink.html#GstBaseSink--last-buffer" title='The "last-buffer" property'>last-buffer</a>" <a href="../gstreamer-0.11/gstreamer-GstBuffer.html#GstBuffer"><span class="type">GstBuffer</span></a>* : Read - "<a class="link" href="GstBaseSink.html#GstBaseSink--max-lateness" title='The "max-lateness" property'>max-lateness</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> : Read / Write + "<a class="link" href="GstBaseSink.html#GstBaseSink--enable-last-sample" title='The "enable-last-sample" property'>enable-last-sample</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> : Read / Write + "<a class="link" href="GstBaseSink.html#GstBaseSink--last-sample" title='The "last-sample" property'>last-sample</a>" <a href="../gstreamer-1.0/gstreamer-GstSample.html#GstSample"><span class="type">GstSample</span></a>* : Read + "<a class="link" href="GstBaseSink.html#GstBaseSink--max-lateness" title='The "max-lateness" property'>max-lateness</a>" <span class="type">gint64</span> : Read / Write "<a class="link" href="GstBaseSink.html#GstBaseSink--qos" title='The "qos" property'>qos</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> : Read / Write - "<a class="link" href="GstBaseSink.html#GstBaseSink--render-delay" title='The "render-delay" property'>render-delay</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> : Read / Write + "<a class="link" href="GstBaseSink.html#GstBaseSink--render-delay" title='The "render-delay" property'>render-delay</a>" <span class="type">guint64</span> : Read / Write "<a class="link" href="GstBaseSink.html#GstBaseSink--sync" title='The "sync" property'>sync</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> : Read / Write - "<a class="link" href="GstBaseSink.html#GstBaseSink--throttle-time" title='The "throttle-time" property'>throttle-time</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> : Read / Write - "<a class="link" href="GstBaseSink.html#GstBaseSink--ts-offset" title='The "ts-offset" property'>ts-offset</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> : Read / Write + "<a class="link" href="GstBaseSink.html#GstBaseSink--throttle-time" title='The "throttle-time" property'>throttle-time</a>" <span class="type">guint64</span> : Read / Write + "<a class="link" href="GstBaseSink.html#GstBaseSink--ts-offset" title='The "ts-offset" property'>ts-offset</a>" <span class="type">gint64</span> : Read / Write </pre> </div> <div class="refsect1"> <a name="GstBaseSink.description"></a><h2>Description</h2> <p> <a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> is the base class for sink elements in GStreamer, such as -xvimagesink or filesink. It is a layer on top of <a href="../gstreamer-0.11/GstElement.html"><span class="type">GstElement</span></a> that provides a +xvimagesink or filesink. It is a layer on top of <a href="../gstreamer-1.0/GstElement.html"><span class="type">GstElement</span></a> that provides a simplified interface to plugin writers. <a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> handles many details for you, for example: preroll, clock synchronization, state changes, activation in push or pull mode, and queries. </p> <p> In most cases, when writing sink elements, there is no need to implement -class methods from <a href="../gstreamer-0.11/GstElement.html"><span class="type">GstElement</span></a> or to set functions on pads, because the +class methods from <a href="../gstreamer-1.0/GstElement.html"><span class="type">GstElement</span></a> or to set functions on pads, because the <a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> infrastructure should be sufficient. </p> <p> @@ -148,25 +141,44 @@ class methods from <a href="../gstreamer-0.11/GstElement.html"><span class="type named "sink". A sink implementation (subclass of <a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a>) should install a pad template in its class_init function, like so: </p> -<div class="informalexample"><pre class="programlisting"> -static void -my_element_class_init (GstMyElementClass *klass) -{ - GstElementClass *gstelement_class = GST_ELEMENT_CLASS (klass); +<div class="informalexample"> + <table class="listing_frame" border="0" cellpadding="0" cellspacing="0"> + <tbody> + <tr> + <td class="listing_lines" align="right"><pre>1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12</pre></td> + <td class="listing_code"><pre class="programlisting"><span class="gtkdoc kwb">static void</span> +<span class="function">my_element_class_init</span> <span class="gtkdoc opt">(</span>GstMyElementClass <span class="gtkdoc opt">*</span>klass<span class="gtkdoc opt">)</span> +<span class="gtkdoc opt">{</span> + GstElementClass <span class="gtkdoc opt">*</span>gstelement_class <span class="gtkdoc opt">=</span> <span class="function">GST_ELEMENT_CLASS</span> <span class="gtkdoc opt">(</span>klass<span class="gtkdoc opt">);</span> + + <span class="gtkdoc slc">// sinktemplate should be a <a href="../gstreamer-1.0/GstPadTemplate.html#GstStaticPadTemplate">GstStaticPadTemplate</a> with direction</span> + <span class="gtkdoc slc">// <a href="../gstreamer-1.0/GstPad.html#GST-PAD-SINK:CAPS">GST_PAD_SINK</a> and name "sink"</span> + <span class="function"><a href="../gstreamer-1.0/GstElement.html#gst-element-class-add-pad-template">gst_element_class_add_pad_template</a></span> <span class="gtkdoc opt">(</span>gstelement_class<span class="gtkdoc opt">,</span> + <span class="function"><a href="../gstreamer-1.0/GstPadTemplate.html#gst-static-pad-template-get">gst_static_pad_template_get</a></span> <span class="gtkdoc opt">(&</span>sinktemplate<span class="gtkdoc opt">));</span> + <span class="gtkdoc slc">// see <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElementFactory.html#GstElementDetails">GstElementDetails</a></span> + <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElement.html#gst-element-class-set-details">gst_element_class_set_details</a></span> <span class="gtkdoc opt">(</span>gstelement_class<span class="gtkdoc opt">, &</span>details<span class="gtkdoc opt">);</span> +<span class="gtkdoc opt">}</span></pre></td> + </tr> + </tbody> + </table> +</div> - // sinktemplate should be a <a href="../gstreamer-0.11/GstPadTemplate.html#GstStaticPadTemplate">GstStaticPadTemplate</a> with direction - // <a href="../gstreamer-0.11/GstPad.html#GST-PAD-SINK:CAPS">GST_PAD_SINK</a> and name "sink" - gst_element_class_add_pad_template (gstelement_class, - gst_static_pad_template_get (&sinktemplate)); - // see <a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstElementFactory.html#GstElementDetails">GstElementDetails</a> - gst_element_class_set_details (gstelement_class, &details); -} -</pre></div> <p> </p> <p> <a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> will handle the prerolling correctly. This means that it will -return <a href="../gstreamer-0.11/GstElement.html#GST-STATE-CHANGE-ASYNC:CAPS"><span class="type">GST_STATE_CHANGE_ASYNC</span></a> from a state change to PAUSED until the first +return <a href="../gstreamer-1.0/GstElement.html#GST-STATE-CHANGE-ASYNC:CAPS"><span class="type">GST_STATE_CHANGE_ASYNC</span></a> from a state change to PAUSED until the first buffer arrives in this element. The base class will call the <a class="link" href="GstBaseSink.html#GstBaseSinkClass.preroll"><code class="function">GstBaseSinkClass.preroll()</code></a> vmethod with this preroll buffer and will then commit the state change to the next asynchronously pending state. @@ -174,7 +186,7 @@ commit the state change to the next asynchronously pending state. <p> When the element is set to PLAYING, <a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> will synchronise on the clock using the times returned from <a class="link" href="GstBaseSink.html#GstBaseSinkClass.get-times"><code class="function">GstBaseSinkClass.get_times()</code></a>. If this -function returns <a href="../gstreamer-0.11/GstClock.html#GST-CLOCK-TIME-NONE:CAPS"><span class="type">GST_CLOCK_TIME_NONE</span></a> for the start time, no synchronisation +function returns <a href="../gstreamer-1.0/GstClock.html#GST-CLOCK-TIME-NONE:CAPS"><span class="type">GST_CLOCK_TIME_NONE</span></a> for the start time, no synchronisation will be done. Synchronisation can be disabled entirely by setting the object <a class="link" href="GstBaseSink.html#GstBaseSink--sync" title='The "sync" property'><span class="type">"sync"</span></a> property to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>. </p> @@ -206,7 +218,7 @@ clipping themselves when needed. </p> <p> <a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> will by default report the current playback position in -<a href="../gstreamer-0.11/gstreamer-GstFormat.html#GST-FORMAT-TIME:CAPS"><span class="type">GST_FORMAT_TIME</span></a> based on the current clock time and segment information. +<a href="../gstreamer-1.0/gstreamer-GstFormat.html#GST-FORMAT-TIME:CAPS"><span class="type">GST_FORMAT_TIME</span></a> based on the current clock time and segment information. If no clock has been set on the element, the query will be forwarded upstream. </p> @@ -286,7 +298,7 @@ The opaque <a class="link" href="GstBaseSink.html" title="GstBaseSink"><span cla gboolean (*set_caps) (GstBaseSink *sink, GstCaps *caps); /* fixate sink caps during pull-mode negotiation */ - void (*fixate) (GstBaseSink *sink, GstCaps *caps); + GstCaps * (*fixate) (GstBaseSink *sink, GstCaps *caps); /* start or stop a pulling thread */ gboolean (*activate_pull)(GstBaseSink *sink, gboolean active); @@ -312,9 +324,12 @@ The opaque <a class="link" href="GstBaseSink.html" title="GstBaseSink"><span cla /* notify subclass of query */ gboolean (*query) (GstBaseSink *sink, GstQuery *query); - /* notify subclass of event, preroll buffer or real buffer */ + /* notify subclass of event */ gboolean (*event) (GstBaseSink *sink, GstEvent *event); + /* wait for eos, subclasses should chain up to parent first */ + GstFlowReturn (*wait_eos) (GstBaseSink *sink, GstEvent *event); + /* notify subclass of preroll buffer or real buffer */ GstFlowReturn (*preroll) (GstBaseSink *sink, GstBuffer *buffer); GstFlowReturn (*render) (GstBaseSink *sink, GstBuffer *buffer); /* Render a BufferList */ @@ -330,7 +345,7 @@ output/present buffers. <col align="left" valign="top"> <tbody> <tr> -<td><p><span class="term"><a href="../gstreamer-0.11/GstElement.html#GstElementClass"><span class="type">GstElementClass</span></a> <em class="structfield"><code><a name="GstBaseSinkClass.parent-class"></a>parent_class</code></em>;</span></p></td> +<td><p><span class="term"><a href="../gstreamer-1.0/GstElement.html#GstElementClass"><span class="type">GstElementClass</span></a> <em class="structfield"><code><a name="GstBaseSinkClass.parent-class"></a>parent_class</code></em>;</span></p></td> <td>Element parent class</td> </tr> <tr> @@ -343,8 +358,7 @@ output/present buffers. </tr> <tr> <td><p><span class="term"><em class="structfield"><code><a name="GstBaseSinkClass.fixate"></a>fixate</code></em> ()</span></p></td> -<td>Only useful in pull mode, this vmethod will be called in response to -<a href="../gstreamer-0.11/GstPad.html#gst-pad-fixate-caps"><code class="function">gst_pad_fixate_caps()</code></a> being called on the sink pad. Implement if you have +<td>Only useful in pull mode. Implement if you have ideas about what should be the default values for the caps you support.</td> </tr> <tr> @@ -384,13 +398,18 @@ any state they set during <code class="function">unlock()</code>, such as cleari </tr> <tr> <td><p><span class="term"><em class="structfield"><code><a name="GstBaseSinkClass.query"></a>query</code></em> ()</span></p></td> -<td>perform a <a href="../gstreamer-0.11/gstreamer-GstQuery.html#GstQuery"><span class="type">GstQuery</span></a> on the element. Since: 0.10.36</td> +<td>perform a <a href="../gstreamer-1.0/gstreamer-GstQuery.html#GstQuery"><span class="type">GstQuery</span></a> on the element. Since: 0.10.36</td> </tr> <tr> <td><p><span class="term"><em class="structfield"><code><a name="GstBaseSinkClass.event"></a>event</code></em> ()</span></p></td> <td>Override this to handle events arriving on the sink pad</td> </tr> <tr> +<td><p><span class="term"><em class="structfield"><code><a name="GstBaseSinkClass.wait-eos"></a>wait_eos</code></em> ()</span></p></td> +<td>Override this to implement custom logic to wait for the EOS time. +subclasses should always first chain up to the default implementation.</td> +</tr> +<tr> <td><p><span class="term"><em class="structfield"><code><a name="GstBaseSinkClass.preroll"></a>preroll</code></em> ()</span></p></td> <td>Called to present the preroll buffer if desired</td> </tr> @@ -413,8 +432,8 @@ buffers. Since: 0.10.24</td> <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_base_sink_query_latency (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>, <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *live</code></em>, <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> *upstream_live</code></em>, - <em class="parameter"><code><a href="../gstreamer-0.11/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> *min_latency</code></em>, - <em class="parameter"><code><a href="../gstreamer-0.11/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> *max_latency</code></em>);</pre> + <em class="parameter"><code><a href="../gstreamer-1.0/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> *min_latency</code></em>, + <em class="parameter"><code><a href="../gstreamer-1.0/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> *max_latency</code></em>);</pre> <p> Query the sink for the latency parameters. The latency will be queried from the upstream elements. <em class="parameter"><code>live</code></em> will be TRUE if <em class="parameter"><code>sink</code></em> is configured to @@ -467,7 +486,7 @@ This function is mostly used by subclasses. <hr> <div class="refsect2"> <a name="gst-base-sink-get-latency"></a><h3>gst_base_sink_get_latency ()</h3> -<pre class="programlisting"><a href="../gstreamer-0.11/GstClock.html#GstClockTime"><span class="returnvalue">GstClockTime</span></a> gst_base_sink_get_latency (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>);</pre> +<pre class="programlisting"><a href="../gstreamer-1.0/GstClock.html#GstClockTime"><span class="returnvalue">GstClockTime</span></a> gst_base_sink_get_latency (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>);</pre> <p> Get the currently configured latency. </p> @@ -489,8 +508,8 @@ Get the currently configured latency. <hr> <div class="refsect2"> <a name="gst-base-sink-do-preroll"></a><h3>gst_base_sink_do_preroll ()</h3> -<pre class="programlisting"><a href="../gstreamer-0.11/GstPad.html#GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a> gst_base_sink_do_preroll (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>, - <em class="parameter"><code><a href="../gstreamer-0.11/gstreamer-GstMiniObject.html#GstMiniObject"><span class="type">GstMiniObject</span></a> *obj</code></em>);</pre> +<pre class="programlisting"><a href="../gstreamer-1.0/GstPad.html#GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a> gst_base_sink_do_preroll (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>, + <em class="parameter"><code><a href="../gstreamer-1.0/gstreamer-GstMiniObject.html#GstMiniObject"><span class="type">GstMiniObject</span></a> *obj</code></em>);</pre> <p> If the <em class="parameter"><code>sink</code></em> spawns its own thread for pulling buffers from upstream it should call this method after it has pulled a buffer. If the element needed @@ -515,7 +534,7 @@ This function should be called with the PREROLL_LOCK held. <tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> <td> -<a href="../gstreamer-0.11/GstPad.html#GST-FLOW-OK:CAPS"><span class="type">GST_FLOW_OK</span></a> if the preroll completed and processing can +<a href="../gstreamer-1.0/GstPad.html#GST-FLOW-OK:CAPS"><span class="type">GST_FLOW_OK</span></a> if the preroll completed and processing can continue. Any other return value should be returned from the render vmethod.</td> </tr> </tbody> @@ -525,7 +544,7 @@ continue. Any other return value should be returned from the render vmethod.</td <hr> <div class="refsect2"> <a name="gst-base-sink-wait-preroll"></a><h3>gst_base_sink_wait_preroll ()</h3> -<pre class="programlisting"><a href="../gstreamer-0.11/GstPad.html#GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a> gst_base_sink_wait_preroll (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>);</pre> +<pre class="programlisting"><a href="../gstreamer-1.0/GstPad.html#GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a> gst_base_sink_wait_preroll (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>);</pre> <p> If the <a class="link" href="GstBaseSink.html#GstBaseSinkClass.render"><code class="function">GstBaseSinkClass.render()</code></a> method performs its own synchronisation against the clock it must unblock when going from PLAYING to the PAUSED state @@ -533,9 +552,9 @@ and call this method before continuing to render the remaining data. </p> <p> This function will block until a state change to PLAYING happens (in which -case this function returns <a href="../gstreamer-0.11/GstPad.html#GST-FLOW-OK:CAPS"><span class="type">GST_FLOW_OK</span></a>) or the processing must be stopped due +case this function returns <a href="../gstreamer-1.0/GstPad.html#GST-FLOW-OK:CAPS"><span class="type">GST_FLOW_OK</span></a>) or the processing must be stopped due to a state change to READY or a FLUSH event (in which case this function -returns <a href="../gstreamer-0.11/GstPad.html#GST-FLOW-WRONG-STATE:CAPS"><span class="type">GST_FLOW_WRONG_STATE</span></a>). +returns <a href="../gstreamer-1.0/GstPad.html#GST-FLOW-FLUSHING:CAPS"><span class="type">GST_FLOW_FLUSHING</span></a>). </p> <p> This function should only be called with the PREROLL_LOCK held, like in the @@ -551,7 +570,7 @@ render function. <tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> <td> -<a href="../gstreamer-0.11/GstPad.html#GST-FLOW-OK:CAPS"><span class="type">GST_FLOW_OK</span></a> if the preroll completed and processing can +<a href="../gstreamer-1.0/GstPad.html#GST-FLOW-OK:CAPS"><span class="type">GST_FLOW_OK</span></a> if the preroll completed and processing can continue. Any other return value should be returned from the render vmethod.</td> </tr> </tbody> @@ -561,17 +580,17 @@ continue. Any other return value should be returned from the render vmethod.</td <hr> <div class="refsect2"> <a name="gst-base-sink-wait-clock"></a><h3>gst_base_sink_wait_clock ()</h3> -<pre class="programlisting"><a href="../gstreamer-0.11/GstClock.html#GstClockReturn"><span class="returnvalue">GstClockReturn</span></a> gst_base_sink_wait_clock (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>, - <em class="parameter"><code><a href="../gstreamer-0.11/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> time</code></em>, - <em class="parameter"><code><a href="../gstreamer-0.11/GstClock.html#GstClockTimeDiff"><span class="type">GstClockTimeDiff</span></a> *jitter</code></em>);</pre> +<pre class="programlisting"><a href="../gstreamer-1.0/GstClock.html#GstClockReturn"><span class="returnvalue">GstClockReturn</span></a> gst_base_sink_wait_clock (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>, + <em class="parameter"><code><a href="../gstreamer-1.0/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> time</code></em>, + <em class="parameter"><code><a href="../gstreamer-1.0/GstClock.html#GstClockTimeDiff"><span class="type">GstClockTimeDiff</span></a> *jitter</code></em>);</pre> <p> This function will block until <em class="parameter"><code>time</code></em> is reached. It is usually called by subclasses that use their own internal synchronisation. </p> <p> -If <em class="parameter"><code>time</code></em> is not valid, no sycnhronisation is done and <a href="../gstreamer-0.11/GstClock.html#GST-CLOCK-BADTIME:CAPS"><span class="type">GST_CLOCK_BADTIME</span></a> is +If <em class="parameter"><code>time</code></em> is not valid, no sycnhronisation is done and <a href="../gstreamer-1.0/GstClock.html#GST-CLOCK-BADTIME:CAPS"><span class="type">GST_CLOCK_BADTIME</span></a> is returned. Likewise, if synchronisation is disabled in the element or there -is no clock, no synchronisation is done and <a href="../gstreamer-0.11/GstClock.html#GST-CLOCK-BADTIME:CAPS"><span class="type">GST_CLOCK_BADTIME</span></a> is returned. +is no clock, no synchronisation is done and <a href="../gstreamer-1.0/GstClock.html#GST-CLOCK-BADTIME:CAPS"><span class="type">GST_CLOCK_BADTIME</span></a> is returned. </p> <p> This function should only be called with the PREROLL_LOCK held, like when @@ -602,7 +621,7 @@ sink. </tr> <tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> -<td><a href="../gstreamer-0.11/GstClock.html#GstClockReturn"><span class="type">GstClockReturn</span></a></td> +<td><a href="../gstreamer-1.0/GstClock.html#GstClockReturn"><span class="type">GstClockReturn</span></a></td> </tr> </tbody> </table></div> @@ -611,9 +630,9 @@ sink. <hr> <div class="refsect2"> <a name="gst-base-sink-wait-eos"></a><h3>gst_base_sink_wait_eos ()</h3> -<pre class="programlisting"><a href="../gstreamer-0.11/GstPad.html#GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a> gst_base_sink_wait_eos (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>, - <em class="parameter"><code><a href="../gstreamer-0.11/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> time</code></em>, - <em class="parameter"><code><a href="../gstreamer-0.11/GstClock.html#GstClockTimeDiff"><span class="type">GstClockTimeDiff</span></a> *jitter</code></em>);</pre> +<pre class="programlisting"><a href="../gstreamer-1.0/GstPad.html#GstFlowReturn"><span class="returnvalue">GstFlowReturn</span></a> gst_base_sink_wait_eos (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>, + <em class="parameter"><code><a href="../gstreamer-1.0/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> time</code></em>, + <em class="parameter"><code><a href="../gstreamer-1.0/GstClock.html#GstClockTimeDiff"><span class="type">GstClockTimeDiff</span></a> *jitter</code></em>);</pre> <p> This function will block until <em class="parameter"><code>time</code></em> is reached. It is usually called by subclasses that use their own internal synchronisation but want to let the @@ -645,7 +664,7 @@ and will be adjusted with any latency and offset configured in the sink. </tr> <tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> -<td><a href="../gstreamer-0.11/GstPad.html#GstFlowReturn"><span class="type">GstFlowReturn</span></a></td> +<td><a href="../gstreamer-1.0/GstPad.html#GstFlowReturn"><span class="type">GstFlowReturn</span></a></td> </tr> </tbody> </table></div> @@ -705,7 +724,7 @@ clock. <div class="refsect2"> <a name="gst-base-sink-set-max-lateness"></a><h3>gst_base_sink_set_max_lateness ()</h3> <pre class="programlisting"><span class="returnvalue">void</span> gst_base_sink_set_max_lateness (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>, - <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> max_lateness</code></em>);</pre> + <em class="parameter"><code><span class="type">gint64</span> max_lateness</code></em>);</pre> <p> Sets the new max lateness value to <em class="parameter"><code>max_lateness</code></em>. This value is used to decide if a buffer should be dropped or not based on the @@ -730,7 +749,7 @@ an unlimited time. <hr> <div class="refsect2"> <a name="gst-base-sink-get-max-lateness"></a><h3>gst_base_sink_get_max_lateness ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="returnvalue">gint64</span></a> gst_base_sink_get_max_lateness (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>);</pre> +<pre class="programlisting"><span class="returnvalue">gint64</span> gst_base_sink_get_max_lateness (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>);</pre> <p> Gets the max lateness value. See gst_base_sink_set_max_lateness for more details. @@ -852,7 +871,7 @@ changes.</td> <div class="refsect2"> <a name="gst-base-sink-set-ts-offset"></a><h3>gst_base_sink_set_ts_offset ()</h3> <pre class="programlisting"><span class="returnvalue">void</span> gst_base_sink_set_ts_offset (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>, - <em class="parameter"><code><a href="../gstreamer-0.11/GstClock.html#GstClockTimeDiff"><span class="type">GstClockTimeDiff</span></a> offset</code></em>);</pre> + <em class="parameter"><code><a href="../gstreamer-1.0/GstClock.html#GstClockTimeDiff"><span class="type">GstClockTimeDiff</span></a> offset</code></em>);</pre> <p> Adjust the synchronisation of <em class="parameter"><code>sink</code></em> with <em class="parameter"><code>offset</code></em>. A negative value will render buffers earlier than their timestamp. A positive value will delay @@ -877,7 +896,7 @@ buffers. <hr> <div class="refsect2"> <a name="gst-base-sink-get-ts-offset"></a><h3>gst_base_sink_get_ts_offset ()</h3> -<pre class="programlisting"><a href="../gstreamer-0.11/GstClock.html#GstClockTimeDiff"><span class="returnvalue">GstClockTimeDiff</span></a> gst_base_sink_get_ts_offset (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>);</pre> +<pre class="programlisting"><a href="../gstreamer-1.0/GstClock.html#GstClockTimeDiff"><span class="returnvalue">GstClockTimeDiff</span></a> gst_base_sink_get_ts_offset (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>);</pre> <p> Get the synchronisation offset of <em class="parameter"><code>sink</code></em>. </p> @@ -900,7 +919,7 @@ Get the synchronisation offset of <em class="parameter"><code>sink</code></em>. <div class="refsect2"> <a name="gst-base-sink-set-render-delay"></a><h3>gst_base_sink_set_render_delay ()</h3> <pre class="programlisting"><span class="returnvalue">void</span> gst_base_sink_set_render_delay (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>, - <em class="parameter"><code><a href="../gstreamer-0.11/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> delay</code></em>);</pre> + <em class="parameter"><code><a href="../gstreamer-1.0/GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> delay</code></em>);</pre> <p> Set the render delay in <em class="parameter"><code>sink</code></em> to <em class="parameter"><code>delay</code></em>. The render delay is the time between actual rendering of a buffer and its synchronisation time. Some @@ -933,7 +952,7 @@ This function is usually called by subclasses. <hr> <div class="refsect2"> <a name="gst-base-sink-get-render-delay"></a><h3>gst_base_sink_get_render_delay ()</h3> -<pre class="programlisting"><a href="../gstreamer-0.11/GstClock.html#GstClockTime"><span class="returnvalue">GstClockTime</span></a> gst_base_sink_get_render_delay (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>);</pre> +<pre class="programlisting"><a href="../gstreamer-1.0/GstClock.html#GstClockTime"><span class="returnvalue">GstClockTime</span></a> gst_base_sink_get_render_delay (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>);</pre> <p> Get the render delay of <em class="parameter"><code>sink</code></em>. see <a class="link" href="GstBaseSink.html#gst-base-sink-set-render-delay" title="gst_base_sink_set_render_delay ()"><code class="function">gst_base_sink_set_render_delay()</code></a> for more information about the render delay. @@ -956,66 +975,17 @@ information about the render delay. </div> <hr> <div class="refsect2"> -<a name="gst-base-sink-set-last-buffer-enabled"></a><h3>gst_base_sink_set_last_buffer_enabled ()</h3> -<pre class="programlisting"><span class="returnvalue">void</span> gst_base_sink_set_last_buffer_enabled - (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>, - <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> enabled</code></em>);</pre> +<a name="gst-base-sink-get-last-sample"></a><h3>gst_base_sink_get_last_sample ()</h3> +<pre class="programlisting"><a href="../gstreamer-1.0/gstreamer-GstSample.html#GstSample"><span class="returnvalue">GstSample</span></a> * gst_base_sink_get_last_sample (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>);</pre> <p> -Configures <em class="parameter"><code>sink</code></em> to store the last received buffer in the last-buffer -property. -</p> -<div class="variablelist"><table border="0"> -<col align="left" valign="top"> -<tbody> -<tr> -<td><p><span class="term"><em class="parameter"><code>sink</code></em> :</span></p></td> -<td>the sink</td> -</tr> -<tr> -<td><p><span class="term"><em class="parameter"><code>enabled</code></em> :</span></p></td> -<td>the new enable-last-buffer value.</td> -</tr> -</tbody> -</table></div> -<p class="since">Since 0.10.30</p> -</div> -<hr> -<div class="refsect2"> -<a name="gst-base-sink-is-last-buffer-enabled"></a><h3>gst_base_sink_is_last_buffer_enabled ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_base_sink_is_last_buffer_enabled - (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>);</pre> -<p> -Checks if <em class="parameter"><code>sink</code></em> is currently configured to store the last received buffer in -the last-buffer property. -</p> -<div class="variablelist"><table border="0"> -<col align="left" valign="top"> -<tbody> -<tr> -<td><p><span class="term"><em class="parameter"><code>sink</code></em> :</span></p></td> -<td>the sink</td> -</tr> -<tr> -<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> -<td>TRUE if the sink is configured to store the last received buffer.</td> -</tr> -</tbody> -</table></div> -<p class="since">Since 0.10.30</p> -</div> -<hr> -<div class="refsect2"> -<a name="gst-base-sink-get-last-buffer"></a><h3>gst_base_sink_get_last_buffer ()</h3> -<pre class="programlisting"><a href="../gstreamer-0.11/gstreamer-GstBuffer.html#GstBuffer"><span class="returnvalue">GstBuffer</span></a> * gst_base_sink_get_last_buffer (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>);</pre> -<p> -Get the last buffer that arrived in the sink and was used for preroll or for +Get the last sample that arrived in the sink and was used for preroll or for rendering. This property can be used to generate thumbnails. </p> <p> -The <a href="../gstreamer-0.11/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a> on the buffer can be used to determine the type of the buffer. +The <a href="../gstreamer-1.0/gstreamer-GstCaps.html#GstCaps"><span class="type">GstCaps</span></a> on the sample can be used to determine the type of the buffer. </p> <p> -Free-function: gst_buffer_unref +Free-function: gst_sample_unref </p> <div class="variablelist"><table border="0"> <col align="left" valign="top"> @@ -1026,7 +996,7 @@ Free-function: gst_buffer_unref </tr> <tr> <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> -<td>a <a href="../gstreamer-0.11/gstreamer-GstBuffer.html#GstBuffer"><span class="type">GstBuffer</span></a>. <a href="../gstreamer-0.11/gstreamer-GstBuffer.html#gst-buffer-unref"><code class="function">gst_buffer_unref()</code></a> after usage. +<td>a <a href="../gstreamer-1.0/gstreamer-GstSample.html#GstSample"><span class="type">GstSample</span></a>. <a href="../gstreamer-1.0/gstreamer-GstSample.html#gst-sample-unref"><code class="function">gst_sample_unref()</code></a> after usage. This function returns NULL when no buffer has arrived in the sink yet or when the sink is not in PAUSED or PLAYING. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> </td> @@ -1087,7 +1057,7 @@ mode. <hr> <div class="refsect2"> <a name="gst-base-sink-get-throttle-time"></a><h3>gst_base_sink_get_throttle_time ()</h3> -<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint64"><span class="returnvalue">guint64</span></a> gst_base_sink_get_throttle_time (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>);</pre> +<pre class="programlisting"><span class="returnvalue">guint64</span> gst_base_sink_get_throttle_time (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>);</pre> <p> Get the time that will be inserted between frames to control the maximum buffers per second. @@ -1112,7 +1082,7 @@ maximum buffers per second. <div class="refsect2"> <a name="gst-base-sink-set-throttle-time"></a><h3>gst_base_sink_set_throttle_time ()</h3> <pre class="programlisting"><span class="returnvalue">void</span> gst_base_sink_set_throttle_time (<em class="parameter"><code><a class="link" href="GstBaseSink.html" title="GstBaseSink"><span class="type">GstBaseSink</span></a> *sink</code></em>, - <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> throttle</code></em>);</pre> + <em class="parameter"><code><span class="type">guint64</span> throttle</code></em>);</pre> <p> Set the time that will be inserted between rendered buffers. This can be used to control the maximum buffers per second that the sink @@ -1140,7 +1110,7 @@ will render. <pre class="programlisting">#define GST_BASE_SINK_PAD(obj) (GST_BASE_SINK_CAST (obj)->sinkpad) </pre> <p> -Gives the pointer to the <a href="../gstreamer-0.11/GstPad.html"><span class="type">GstPad</span></a> object of the element. +Gives the pointer to the <a href="../gstreamer-1.0/GstPad.html"><span class="type">GstPad</span></a> object of the element. </p> <div class="variablelist"><table border="0"> <col align="left" valign="top"> @@ -1153,13 +1123,13 @@ Gives the pointer to the <a href="../gstreamer-0.11/GstPad.html"><span class="ty <hr> <div class="refsect2"> <a name="GST-BASE-SINK-GET-PREROLL-COND:CAPS"></a><h3>GST_BASE_SINK_GET_PREROLL_COND()</h3> -<pre class="programlisting">#define GST_BASE_SINK_GET_PREROLL_COND(pad) (GST_BASE_SINK_CAST(pad)->preroll_cond) +<pre class="programlisting">#define GST_BASE_SINK_GET_PREROLL_COND(pad) (&GST_BASE_SINK_CAST(pad)->preroll_cond) </pre> </div> <hr> <div class="refsect2"> <a name="GST-BASE-SINK-GET-PREROLL-LOCK:CAPS"></a><h3>GST_BASE_SINK_GET_PREROLL_LOCK()</h3> -<pre class="programlisting">#define GST_BASE_SINK_GET_PREROLL_LOCK(pad) (GST_BASE_SINK_CAST(pad)->preroll_lock) +<pre class="programlisting">#define GST_BASE_SINK_GET_PREROLL_LOCK(pad) (&GST_BASE_SINK_CAST(pad)->preroll_lock) </pre> </div> <hr> @@ -1182,11 +1152,6 @@ Gives the pointer to the <a href="../gstreamer-0.11/GstPad.html"><span class="ty </div> <hr> <div class="refsect2"> -<a name="GST-BASE-SINK-PREROLL-TIMED-WAIT:CAPS"></a><h3>GST_BASE_SINK_PREROLL_TIMED_WAIT()</h3> -<pre class="programlisting">#define GST_BASE_SINK_PREROLL_TIMED_WAIT(pad, timeval)</pre> -</div> -<hr> -<div class="refsect2"> <a name="GST-BASE-SINK-PREROLL-TRYLOCK:CAPS"></a><h3>GST_BASE_SINK_PREROLL_TRYLOCK()</h3> <pre class="programlisting">#define GST_BASE_SINK_PREROLL_TRYLOCK(pad) (g_mutex_trylock(GST_BASE_SINK_GET_PREROLL_LOCK(pad))) </pre> @@ -1229,11 +1194,11 @@ The amount of bytes to pull when operating in pull mode. </div> <hr> <div class="refsect2"> -<a name="GstBaseSink--enable-last-buffer"></a><h3>The <code class="literal">"enable-last-buffer"</code> property</h3> -<pre class="programlisting"> "enable-last-buffer" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> : Read / Write</pre> +<a name="GstBaseSink--enable-last-sample"></a><h3>The <code class="literal">"enable-last-sample"</code> property</h3> +<pre class="programlisting"> "enable-last-sample" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> : Read / Write</pre> <p> -Enable the last-buffer property. If FALSE, basesink doesn't keep a -reference to the last buffer arrived and the last-buffer property is always +Enable the last-sample property. If FALSE, basesink doesn't keep a +reference to the last buffer arrived and the last-sample property is always set to NULL. This can be useful if you need buffers to be released as soon as possible, eg. if you're using a buffer pool. </p> @@ -1242,8 +1207,8 @@ as possible, eg. if you're using a buffer pool. </div> <hr> <div class="refsect2"> -<a name="GstBaseSink--last-buffer"></a><h3>The <code class="literal">"last-buffer"</code> property</h3> -<pre class="programlisting"> "last-buffer" <a href="../gstreamer-0.11/gstreamer-GstBuffer.html#GstBuffer"><span class="type">GstBuffer</span></a>* : Read</pre> +<a name="GstBaseSink--last-sample"></a><h3>The <code class="literal">"last-sample"</code> property</h3> +<pre class="programlisting"> "last-sample" <a href="../gstreamer-1.0/gstreamer-GstSample.html#GstSample"><span class="type">GstSample</span></a>* : Read</pre> <p> The last buffer that arrived in the sink and was used for preroll or for rendering. This property can be used to generate thumbnails. This property @@ -1254,7 +1219,7 @@ can be NULL when the sink has not yet received a bufer. <hr> <div class="refsect2"> <a name="GstBaseSink--max-lateness"></a><h3>The <code class="literal">"max-lateness"</code> property</h3> -<pre class="programlisting"> "max-lateness" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> : Read / Write</pre> +<pre class="programlisting"> "max-lateness" <span class="type">gint64</span> : Read / Write</pre> <p>Maximum number of nanoseconds that a buffer can be late before it is dropped (-1 unlimited).</p> <p>Allowed values: >= -1</p> <p>Default value: -1</p> @@ -1269,7 +1234,7 @@ can be NULL when the sink has not yet received a bufer. <hr> <div class="refsect2"> <a name="GstBaseSink--render-delay"></a><h3>The <code class="literal">"render-delay"</code> property</h3> -<pre class="programlisting"> "render-delay" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> : Read / Write</pre> +<pre class="programlisting"> "render-delay" <span class="type">guint64</span> : Read / Write</pre> <p> The additional delay between synchronisation and actual rendering of the media. This property will add additional latency to the device in order to @@ -1288,7 +1253,7 @@ make other sinks compensate for the delay. <hr> <div class="refsect2"> <a name="GstBaseSink--throttle-time"></a><h3>The <code class="literal">"throttle-time"</code> property</h3> -<pre class="programlisting"> "throttle-time" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> : Read / Write</pre> +<pre class="programlisting"> "throttle-time" <span class="type">guint64</span> : Read / Write</pre> <p> The time to insert between buffers. This property can be used to control the maximum amount of buffers per second to render. Setting this property @@ -1300,7 +1265,7 @@ to a value bigger than 0 will make the sink create THROTTLE QoS events. <hr> <div class="refsect2"> <a name="GstBaseSink--ts-offset"></a><h3>The <code class="literal">"ts-offset"</code> property</h3> -<pre class="programlisting"> "ts-offset" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> : Read / Write</pre> +<pre class="programlisting"> "ts-offset" <span class="type">gint64</span> : Read / Write</pre> <p> Controls the final synchronisation, a negative value will render the buffer earlier while a positive value delays playback. This property can be |