| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
| <title>gstaudiobasesink: GStreamer Base Plugins 1.0 Library Reference Manual</title> |
| <meta name="generator" content="DocBook XSL Stylesheets V1.79.1"> |
| <link rel="home" href="index.html" title="GStreamer Base Plugins 1.0 Library Reference Manual"> |
| <link rel="up" href="gstreamer-audio.html" title="Audio Library"> |
| <link rel="prev" href="gst-plugins-base-libs-gstaudiosrc.html" title="gstaudiosrc"> |
| <link rel="next" href="gst-plugins-base-libs-gstaudiobasesrc.html" title="gstaudiobasesrc"> |
| <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="#gst-plugins-base-libs-gstaudiobasesink.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span> |
| <a href="#gst-plugins-base-libs-gstaudiobasesink.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties"> <span class="dim">|</span> |
| <a href="#gst-plugins-base-libs-gstaudiobasesink.properties" class="shortcut">Properties</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-audio.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td> |
| <td><a accesskey="p" href="gst-plugins-base-libs-gstaudiosrc.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td> |
| <td><a accesskey="n" href="gst-plugins-base-libs-gstaudiobasesrc.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td> |
| </tr></table> |
| <div class="refentry"> |
| <a name="gst-plugins-base-libs-gstaudiobasesink"></a><div class="titlepage"></div> |
| <div class="refnamediv"><table width="100%"><tr> |
| <td valign="top"> |
| <h2><span class="refentrytitle"><a name="gst-plugins-base-libs-gstaudiobasesink.top_of_page"></a>gstaudiobasesink</span></h2> |
| <p>gstaudiobasesink — Base class for audio sinks</p> |
| </td> |
| <td class="gallery_image" valign="top" align="right"></td> |
| </tr></table></div> |
| <div class="refsect1"> |
| <a name="gst-plugins-base-libs-gstaudiobasesink.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="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSinkCustomSlavingCallback" title="GstAudioBaseSinkCustomSlavingCallback ()">*GstAudioBaseSinkCustomSlavingCallback</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="gst-plugins-base-libs-gstaudiobasesink.html#GST-AUDIO-BASE-SINK-CLOCK:CAPS" title="GST_AUDIO_BASE_SINK_CLOCK()">GST_AUDIO_BASE_SINK_CLOCK</a><span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="define_keyword">#define</td> |
| <td class="function_name"> |
| <a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GST-AUDIO-BASE-SINK-PAD:CAPS" title="GST_AUDIO_BASE_SINK_PAD()">GST_AUDIO_BASE_SINK_PAD</a><span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="gst-plugins-base-libs-gstaudioringbuffer.html#GstAudioRingBuffer"><span class="returnvalue">GstAudioRingBuffer</span></a> * |
| </td> |
| <td class="function_name"> |
| <a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#gst-audio-base-sink-create-ringbuffer" title="gst_audio_base_sink_create_ringbuffer ()">gst_audio_base_sink_create_ringbuffer</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="gst-plugins-base-libs-gstaudiobasesink.html#gst-audio-base-sink-set-provide-clock" title="gst_audio_base_sink_set_provide_clock ()">gst_audio_base_sink_set_provide_clock</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="gst-plugins-base-libs-gstaudiobasesink.html#gst-audio-base-sink-get-provide-clock" title="gst_audio_base_sink_get_provide_clock ()">gst_audio_base_sink_get_provide_clock</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="gst-plugins-base-libs-gstaudiobasesink.html#gst-audio-base-sink-set-slave-method" title="gst_audio_base_sink_set_slave_method ()">gst_audio_base_sink_set_slave_method</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSinkSlaveMethod" title="enum GstAudioBaseSinkSlaveMethod"><span class="returnvalue">GstAudioBaseSinkSlaveMethod</span></a> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#gst-audio-base-sink-get-slave-method" title="gst_audio_base_sink_get_slave_method ()">gst_audio_base_sink_get_slave_method</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="gst-plugins-base-libs-gstaudiobasesink.html#gst-audio-base-sink-set-drift-tolerance" title="gst_audio_base_sink_set_drift_tolerance ()">gst_audio_base_sink_set_drift_tolerance</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gint64"><span class="returnvalue">gint64</span></a> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#gst-audio-base-sink-get-drift-tolerance" title="gst_audio_base_sink_get_drift_tolerance ()">gst_audio_base_sink_get_drift_tolerance</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="gst-plugins-base-libs-gstaudiobasesink.html#gst-audio-base-sink-set-alignment-threshold" title="gst_audio_base_sink_set_alignment_threshold ()">gst_audio_base_sink_set_alignment_threshold</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a href="/usr/share/gtk-doc/html/gstreamer-1.0GstClock.html#GstClockTime"><span class="returnvalue">GstClockTime</span></a> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#gst-audio-base-sink-get-alignment-threshold" title="gst_audio_base_sink_get_alignment_threshold ()">gst_audio_base_sink_get_alignment_threshold</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="gst-plugins-base-libs-gstaudiobasesink.html#gst-audio-base-sink-set-discont-wait" title="gst_audio_base_sink_set_discont_wait ()">gst_audio_base_sink_set_discont_wait</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| <tr> |
| <td class="function_type"> |
| <a href="/usr/share/gtk-doc/html/gstreamer-1.0GstClock.html#GstClockTime"><span class="returnvalue">GstClockTime</span></a> |
| </td> |
| <td class="function_name"> |
| <a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#gst-audio-base-sink-get-discont-wait" title="gst_audio_base_sink_get_discont_wait ()">gst_audio_base_sink_get_discont_wait</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="gst-plugins-base-libs-gstaudiobasesink.html#gst-audio-base-sink-set-custom-slaving-callback" title="gst_audio_base_sink_set_custom_slaving_callback ()">gst_audio_base_sink_set_custom_slaving_callback</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="gst-plugins-base-libs-gstaudiobasesink.html#gst-audio-base-sink-report-device-failure" title="gst_audio_base_sink_report_device_failure ()">gst_audio_base_sink_report_device_failure</a> <span class="c_punctuation">()</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <div class="refsect1"> |
| <a name="gst-plugins-base-libs-gstaudiobasesink.properties"></a><h2>Properties</h2> |
| <div class="informaltable"><table class="informaltable" border="0"> |
| <colgroup> |
| <col width="150px" class="properties_type"> |
| <col width="300px" class="properties_name"> |
| <col width="200px" class="properties_flags"> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td class="property_type"><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#guint64"><span class="type">guint64</span></a></td> |
| <td class="property_name"><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink--alignment-threshold" title="The “alignment-threshold” property">alignment-threshold</a></td> |
| <td class="property_flags">Read / Write</td> |
| </tr> |
| <tr> |
| <td class="property_type"><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gint64"><span class="type">gint64</span></a></td> |
| <td class="property_name"><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink--buffer-time" title="The “buffer-time” property">buffer-time</a></td> |
| <td class="property_flags">Read / Write</td> |
| </tr> |
| <tr> |
| <td class="property_type"><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td> |
| <td class="property_name"><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink--can-activate-pull" title="The “can-activate-pull” property">can-activate-pull</a></td> |
| <td class="property_flags">Read / Write</td> |
| </tr> |
| <tr> |
| <td class="property_type"><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#guint64"><span class="type">guint64</span></a></td> |
| <td class="property_name"><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink--discont-wait" title="The “discont-wait” property">discont-wait</a></td> |
| <td class="property_flags">Read / Write</td> |
| </tr> |
| <tr> |
| <td class="property_type"><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gint64"><span class="type">gint64</span></a></td> |
| <td class="property_name"><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink--drift-tolerance" title="The “drift-tolerance” property">drift-tolerance</a></td> |
| <td class="property_flags">Read / Write</td> |
| </tr> |
| <tr> |
| <td class="property_type"><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gint64"><span class="type">gint64</span></a></td> |
| <td class="property_name"><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink--latency-time" title="The “latency-time” property">latency-time</a></td> |
| <td class="property_flags">Read / Write</td> |
| </tr> |
| <tr> |
| <td class="property_type"><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td> |
| <td class="property_name"><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink--provide-clock" title="The “provide-clock” property">provide-clock</a></td> |
| <td class="property_flags">Read / Write</td> |
| </tr> |
| <tr> |
| <td class="property_type"><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSinkSlaveMethod" title="enum GstAudioBaseSinkSlaveMethod"><span class="type">GstAudioBaseSinkSlaveMethod</span></a></td> |
| <td class="property_name"><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink--slave-method" title="The “slave-method” property">slave-method</a></td> |
| <td class="property_flags">Read / Write</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <a name="GstAudioBaseSink"></a><div class="refsect1"> |
| <a name="gst-plugins-base-libs-gstaudiobasesink.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="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink-struct" title="struct GstAudioBaseSink">GstAudioBaseSink</a></td> |
| </tr> |
| <tr> |
| <td class="datatype_keyword">struct</td> |
| <td class="function_name"><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSinkClass" title="struct GstAudioBaseSinkClass">GstAudioBaseSinkClass</a></td> |
| </tr> |
| <tr> |
| <td class="datatype_keyword">enum</td> |
| <td class="function_name"><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSinkSlaveMethod" title="enum GstAudioBaseSinkSlaveMethod">GstAudioBaseSinkSlaveMethod</a></td> |
| </tr> |
| <tr> |
| <td class="datatype_keyword">enum</td> |
| <td class="function_name"><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSinkDiscontReason" title="enum GstAudioBaseSinkDiscontReason">GstAudioBaseSinkDiscontReason</a></td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <div class="refsect1"> |
| <a name="gst-plugins-base-libs-gstaudiobasesink.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="/usr/share/gtk-doc/html/gstreamer-1.0GstObject.html#GstObject-struct">GstObject</a> |
| <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-1.0GstElement.html#GstElement-struct">GstElement</a> |
| <span class="lineart">╰──</span> <a href="/usr/share/gtk-doc/html/gstreamer-libs-1.0GstBaseSink.html#GstBaseSink-struct">GstBaseSink</a> |
| <span class="lineart">╰──</span> GstAudioBaseSink |
| <span class="lineart">╰──</span> <a class="link" href="gst-plugins-base-libs-gstaudiosink.html#GstAudioSink">GstAudioSink</a> |
| </pre> |
| </div> |
| <div class="refsect1"> |
| <a name="gst-plugins-base-libs-gstaudiobasesink.includes"></a><h2>Includes</h2> |
| <pre class="synopsis">#include <gst/audio/gstaudiobasesink.h> |
| </pre> |
| </div> |
| <div class="refsect1"> |
| <a name="gst-plugins-base-libs-gstaudiobasesink.description"></a><h2>Description</h2> |
| <p>This is the base class for audio sinks. Subclasses need to implement the |
| ::create_ringbuffer vmethod. This base class will then take care of |
| writing samples to the ringbuffer, synchronisation, clipping and flushing.</p> |
| </div> |
| <div class="refsect1"> |
| <a name="gst-plugins-base-libs-gstaudiobasesink.functions_details"></a><h2>Functions</h2> |
| <div class="refsect2"> |
| <a name="GstAudioBaseSinkCustomSlavingCallback"></a><h3>GstAudioBaseSinkCustomSlavingCallback ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| <span class="c_punctuation">(</span>*GstAudioBaseSinkCustomSlavingCallback<span class="c_punctuation">)</span> |
| (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a> *sink</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> etime</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> itime</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0GstClock.html#GstClockTimeDiff"><span class="type">GstClockTimeDiff</span></a> *requested_skew</code></em>, |
| <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSinkDiscontReason" title="enum GstAudioBaseSinkDiscontReason"><span class="type">GstAudioBaseSinkDiscontReason</span></a> discont_reason</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>This function is set with <a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#gst-audio-base-sink-set-custom-slaving-callback" title="gst_audio_base_sink_set_custom_slaving_callback ()"><code class="function">gst_audio_base_sink_set_custom_slaving_callback()</code></a> |
| and is called during playback. It receives the current time of external and |
| internal clocks, which the callback can then use to apply any custom |
| slaving/synchronization schemes.</p> |
| <p>The external clock is the sink's element clock, the internal one is the |
| internal audio clock. The internal audio clock's calibration is applied to |
| the timestamps before they are passed to the callback. The difference between |
| etime and itime is the skew; how much internal and external clock lie apart |
| from each other. A skew of 0 means both clocks are perfectly in sync. |
| itime > etime means the external clock is going slower, while itime < etime |
| means it is going faster than the internal clock. etime and itime are always |
| valid timestamps, except for when a discontinuity happens.</p> |
| <p>requested_skew is an output value the callback can write to. It informs the |
| sink of whether or not it should move the playout pointer, and if so, by how |
| much. This pointer is only NULL if a discontinuity occurs; otherwise, it is |
| safe to write to *requested_skew. The default skew is 0.</p> |
| <p>The sink may experience discontinuities. If one happens, discont is TRUE, |
| itime, etime are set to GST_CLOCK_TIME_NONE, and requested_skew is NULL. |
| This makes it possible to reset custom clock slaving algorithms when a |
| discontinuity happens.</p> |
| <div class="refsect3"> |
| <a name="GstAudioBaseSinkCustomSlavingCallback.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>sink</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>etime</p></td> |
| <td class="parameter_description"><p>external clock time</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>itime</p></td> |
| <td class="parameter_description"><p>internal clock time</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>requested_skew</p></td> |
| <td class="parameter_description"><p>skew amount requested by the callback</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>discont_reason</p></td> |
| <td class="parameter_description"><p>reason for discontinuity (if any)</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: 1.6</p> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-AUDIO-BASE-SINK-CLOCK:CAPS"></a><h3>GST_AUDIO_BASE_SINK_CLOCK()</h3> |
| <pre class="programlisting">#define GST_AUDIO_BASE_SINK_CLOCK(obj) (GST_AUDIO_BASE_SINK (obj)->clock) |
| </pre> |
| <p>Get the <a href="/usr/share/gtk-doc/html/gstreamer-1.0GstClock.html#GstClock-struct"><span class="type">GstClock</span></a> of <em class="parameter"><code>obj</code></em> |
| .</p> |
| <div class="refsect3"> |
| <a name="GST-AUDIO-BASE-SINK-CLOCK.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>obj</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-AUDIO-BASE-SINK-PAD:CAPS"></a><h3>GST_AUDIO_BASE_SINK_PAD()</h3> |
| <pre class="programlisting">#define GST_AUDIO_BASE_SINK_PAD(obj) (GST_BASE_SINK (obj)->sinkpad) |
| </pre> |
| <p>Get the sink <a href="/usr/share/gtk-doc/html/gstreamer-1.0GstPad.html#GstPad-struct"><span class="type">GstPad</span></a> of <em class="parameter"><code>obj</code></em> |
| .</p> |
| <div class="refsect3"> |
| <a name="GST-AUDIO-BASE-SINK-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>obj</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-audio-base-sink-create-ringbuffer"></a><h3>gst_audio_base_sink_create_ringbuffer ()</h3> |
| <pre class="programlisting"><a class="link" href="gst-plugins-base-libs-gstaudioringbuffer.html#GstAudioRingBuffer"><span class="returnvalue">GstAudioRingBuffer</span></a> * |
| gst_audio_base_sink_create_ringbuffer (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a> *sink</code></em>);</pre> |
| <p>Create and return the <a class="link" href="gst-plugins-base-libs-gstaudioringbuffer.html#GstAudioRingBuffer"><span class="type">GstAudioRingBuffer</span></a> for <em class="parameter"><code>sink</code></em> |
| . This function will |
| call the ::create_ringbuffer vmethod and will set <em class="parameter"><code>sink</code></em> |
| as the parent of |
| the returned buffer (see <a href="/usr/share/gtk-doc/html/gstreamer-1.0GstObject.html#gst-object-set-parent"><code class="function">gst_object_set_parent()</code></a>).</p> |
| <div class="refsect3"> |
| <a name="gst-audio-base-sink-create-ringbuffer.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>sink</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a>.</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="gst-audio-base-sink-create-ringbuffer.returns"></a><h4>Returns</h4> |
| <p> The new ringbuffer of <em class="parameter"><code>sink</code></em> |
| . </p> |
| <p><span class="annotation">[<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-audio-base-sink-set-provide-clock"></a><h3>gst_audio_base_sink_set_provide_clock ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_audio_base_sink_set_provide_clock (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a> *sink</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> provide</code></em>);</pre> |
| <p>Controls whether <em class="parameter"><code>sink</code></em> |
| will provide a clock or not. If <em class="parameter"><code>provide</code></em> |
| is <a href="/usr/share/gtk-doc/html/glibglib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, |
| <a href="/usr/share/gtk-doc/html/gstreamer-1.0GstElement.html#gst-element-provide-clock"><code class="function">gst_element_provide_clock()</code></a> will return a clock that reflects the datarate |
| of <em class="parameter"><code>sink</code></em> |
| . If <em class="parameter"><code>provide</code></em> |
| is <a href="/usr/share/gtk-doc/html/glibglib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>, <a href="/usr/share/gtk-doc/html/gstreamer-1.0GstElement.html#gst-element-provide-clock"><code class="function">gst_element_provide_clock()</code></a> will return |
| NULL.</p> |
| <div class="refsect3"> |
| <a name="gst-audio-base-sink-set-provide-clock.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>sink</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>provide</p></td> |
| <td class="parameter_description"><p>new state</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-audio-base-sink-get-provide-clock"></a><h3>gst_audio_base_sink_get_provide_clock ()</h3> |
| <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> |
| gst_audio_base_sink_get_provide_clock (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a> *sink</code></em>);</pre> |
| <p>Queries whether <em class="parameter"><code>sink</code></em> |
| will provide a clock or not. See also |
| gst_audio_base_sink_set_provide_clock.</p> |
| <div class="refsect3"> |
| <a name="gst-audio-base-sink-get-provide-clock.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>sink</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="gst-audio-base-sink-get-provide-clock.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 <em class="parameter"><code>sink</code></em> |
| will provide a clock.</p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-audio-base-sink-set-slave-method"></a><h3>gst_audio_base_sink_set_slave_method ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_audio_base_sink_set_slave_method (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a> *sink</code></em>, |
| <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSinkSlaveMethod" title="enum GstAudioBaseSinkSlaveMethod"><span class="type">GstAudioBaseSinkSlaveMethod</span></a> method</code></em>);</pre> |
| <p>Controls how clock slaving will be performed in <em class="parameter"><code>sink</code></em> |
| .</p> |
| <div class="refsect3"> |
| <a name="gst-audio-base-sink-set-slave-method.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>sink</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>method</p></td> |
| <td class="parameter_description"><p>the new slave method</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-audio-base-sink-get-slave-method"></a><h3>gst_audio_base_sink_get_slave_method ()</h3> |
| <pre class="programlisting"><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSinkSlaveMethod" title="enum GstAudioBaseSinkSlaveMethod"><span class="returnvalue">GstAudioBaseSinkSlaveMethod</span></a> |
| gst_audio_base_sink_get_slave_method (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a> *sink</code></em>);</pre> |
| <p>Get the current slave method used by <em class="parameter"><code>sink</code></em> |
| .</p> |
| <div class="refsect3"> |
| <a name="gst-audio-base-sink-get-slave-method.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>sink</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="gst-audio-base-sink-get-slave-method.returns"></a><h4>Returns</h4> |
| <p> The current slave method used by <em class="parameter"><code>sink</code></em> |
| .</p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-audio-base-sink-set-drift-tolerance"></a><h3>gst_audio_base_sink_set_drift_tolerance ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_audio_base_sink_set_drift_tolerance |
| (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a> *sink</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gint64"><span class="type">gint64</span></a> drift_tolerance</code></em>);</pre> |
| <p>Controls the sink's drift tolerance.</p> |
| <div class="refsect3"> |
| <a name="gst-audio-base-sink-set-drift-tolerance.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>sink</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>drift_tolerance</p></td> |
| <td class="parameter_description"><p>the new drift tolerance in microseconds</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-audio-base-sink-get-drift-tolerance"></a><h3>gst_audio_base_sink_get_drift_tolerance ()</h3> |
| <pre class="programlisting"><a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gint64"><span class="returnvalue">gint64</span></a> |
| gst_audio_base_sink_get_drift_tolerance |
| (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a> *sink</code></em>);</pre> |
| <p>Get the current drift tolerance, in microseconds, used by <em class="parameter"><code>sink</code></em> |
| .</p> |
| <div class="refsect3"> |
| <a name="gst-audio-base-sink-get-drift-tolerance.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>sink</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="gst-audio-base-sink-get-drift-tolerance.returns"></a><h4>Returns</h4> |
| <p> The current drift tolerance used by <em class="parameter"><code>sink</code></em> |
| .</p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-audio-base-sink-set-alignment-threshold"></a><h3>gst_audio_base_sink_set_alignment_threshold ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_audio_base_sink_set_alignment_threshold |
| (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a> *sink</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> alignment_threshold</code></em>);</pre> |
| <p>Controls the sink's alignment threshold.</p> |
| <div class="refsect3"> |
| <a name="gst-audio-base-sink-set-alignment-threshold.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>sink</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>alignment_threshold</p></td> |
| <td class="parameter_description"><p>the new alignment threshold in nanoseconds</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-audio-base-sink-get-alignment-threshold"></a><h3>gst_audio_base_sink_get_alignment_threshold ()</h3> |
| <pre class="programlisting"><a href="/usr/share/gtk-doc/html/gstreamer-1.0GstClock.html#GstClockTime"><span class="returnvalue">GstClockTime</span></a> |
| gst_audio_base_sink_get_alignment_threshold |
| (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a> *sink</code></em>);</pre> |
| <p>Get the current alignment threshold, in nanoseconds, used by <em class="parameter"><code>sink</code></em> |
| .</p> |
| <div class="refsect3"> |
| <a name="gst-audio-base-sink-get-alignment-threshold.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>sink</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="gst-audio-base-sink-get-alignment-threshold.returns"></a><h4>Returns</h4> |
| <p> The current alignment threshold used by <em class="parameter"><code>sink</code></em> |
| .</p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-audio-base-sink-set-discont-wait"></a><h3>gst_audio_base_sink_set_discont_wait ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_audio_base_sink_set_discont_wait (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a> *sink</code></em>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/gstreamer-1.0GstClock.html#GstClockTime"><span class="type">GstClockTime</span></a> discont_wait</code></em>);</pre> |
| <p>Controls how long the sink will wait before creating a discontinuity.</p> |
| <div class="refsect3"> |
| <a name="gst-audio-base-sink-set-discont-wait.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>sink</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>discont_wait</p></td> |
| <td class="parameter_description"><p>the new discont wait in nanoseconds</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-audio-base-sink-get-discont-wait"></a><h3>gst_audio_base_sink_get_discont_wait ()</h3> |
| <pre class="programlisting"><a href="/usr/share/gtk-doc/html/gstreamer-1.0GstClock.html#GstClockTime"><span class="returnvalue">GstClockTime</span></a> |
| gst_audio_base_sink_get_discont_wait (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a> *sink</code></em>);</pre> |
| <p>Get the current discont wait, in nanoseconds, used by <em class="parameter"><code>sink</code></em> |
| .</p> |
| <div class="refsect3"> |
| <a name="gst-audio-base-sink-get-discont-wait.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>sink</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <div class="refsect3"> |
| <a name="gst-audio-base-sink-get-discont-wait.returns"></a><h4>Returns</h4> |
| <p> The current discont wait used by <em class="parameter"><code>sink</code></em> |
| .</p> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-audio-base-sink-set-custom-slaving-callback"></a><h3>gst_audio_base_sink_set_custom_slaving_callback ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_audio_base_sink_set_custom_slaving_callback |
| (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a> *sink</code></em>, |
| <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSinkCustomSlavingCallback" title="GstAudioBaseSinkCustomSlavingCallback ()"><span class="type">GstAudioBaseSinkCustomSlavingCallback</span></a> callback</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>, |
| <em class="parameter"><code><a href="/usr/share/gtk-doc/html/glibglib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>);</pre> |
| <p>Sets the custom slaving callback. This callback will |
| be invoked if the slave-method property is set to |
| GST_AUDIO_BASE_SINK_SLAVE_CUSTOM and the audio sink |
| receives and plays samples.</p> |
| <p>Setting the callback to NULL causes the sink to |
| behave as if the GST_AUDIO_BASE_SINK_SLAVE_NONE |
| method were used.</p> |
| <div class="refsect3"> |
| <a name="gst-audio-base-sink-set-custom-slaving-callback.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>sink</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>callback</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSinkCustomSlavingCallback" title="GstAudioBaseSinkCustomSlavingCallback ()"><span class="type">GstAudioBaseSinkCustomSlavingCallback</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 passed to the callback</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="parameter_name"><p>notify</p></td> |
| <td class="parameter_description"><p>called when user_data becomes unused</p></td> |
| <td class="parameter_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <p class="since">Since: 1.6</p> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-audio-base-sink-report-device-failure"></a><h3>gst_audio_base_sink_report_device_failure ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> |
| gst_audio_base_sink_report_device_failure |
| (<em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a> *sink</code></em>);</pre> |
| <p>Informs this base class that the audio output device has failed for |
| some reason, causing a discontinuity (for example, because the device |
| recovered from the error, but lost all contents of its ring buffer). |
| This function is typically called by derived classes, and is useful |
| for the custom slave method.</p> |
| <div class="refsect3"> |
| <a name="gst-audio-base-sink-report-device-failure.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>sink</p></td> |
| <td class="parameter_description"><p>a <a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a></p></td> |
| <td class="parameter_annotations"> </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <p class="since">Since: 1.6</p> |
| </div> |
| </div> |
| <div class="refsect1"> |
| <a name="gst-plugins-base-libs-gstaudiobasesink.other_details"></a><h2>Types and Values</h2> |
| <div class="refsect2"> |
| <a name="GstAudioBaseSink-struct"></a><h3>struct GstAudioBaseSink</h3> |
| <pre class="programlisting">struct GstAudioBaseSink;</pre> |
| <p>Opaque <a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a>.</p> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GstAudioBaseSinkClass"></a><h3>struct GstAudioBaseSinkClass</h3> |
| <pre class="programlisting">struct GstAudioBaseSinkClass { |
| GstBaseSinkClass parent_class; |
| |
| /* subclass ringbuffer allocation */ |
| GstAudioRingBuffer* (*create_ringbuffer) (GstAudioBaseSink *sink); |
| |
| /* subclass payloader */ |
| GstBuffer* (*payload) (GstAudioBaseSink *sink, |
| GstBuffer *buffer); |
| }; |
| </pre> |
| <p><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSink"><span class="type">GstAudioBaseSink</span></a> class. Override the vmethod to implement |
| functionality.</p> |
| <div class="refsect3"> |
| <a name="GstAudioBaseSinkClass.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><em class="structfield"><code><a name="GstAudioBaseSinkClass.create-ringbuffer"></a>create_ringbuffer</code></em> ()</p></td> |
| <td class="struct_member_description"><p>create and return a <a class="link" href="gst-plugins-base-libs-gstaudioringbuffer.html#GstAudioRingBuffer"><span class="type">GstAudioRingBuffer</span></a> to write to.</p></td> |
| <td class="struct_member_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="struct_member_name"><p><em class="structfield"><code><a name="GstAudioBaseSinkClass.payload"></a>payload</code></em> ()</p></td> |
| <td class="struct_member_description"><p>payload data in a format suitable to write to the sink. If no |
| payloading is required, returns a reffed copy of the original |
| buffer, else returns the payloaded buffer with all other metadata |
| copied.</p></td> |
| <td class="struct_member_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GstAudioBaseSinkSlaveMethod"></a><h3>enum GstAudioBaseSinkSlaveMethod</h3> |
| <p>Different possible clock slaving algorithms used when the internal audio |
| clock is not selected as the pipeline master clock.</p> |
| <div class="refsect3"> |
| <a name="GstAudioBaseSinkSlaveMethod.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-AUDIO-BASE-SINK-SLAVE-RESAMPLE:CAPS"></a>GST_AUDIO_BASE_SINK_SLAVE_RESAMPLE</p></td> |
| <td class="enum_member_description"> |
| <p>Resample to match the master clock</p> |
| </td> |
| <td class="enum_member_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="enum_member_name"><p><a name="GST-AUDIO-BASE-SINK-SLAVE-SKEW:CAPS"></a>GST_AUDIO_BASE_SINK_SLAVE_SKEW</p></td> |
| <td class="enum_member_description"> |
| <p>Adjust playout pointer when master clock |
| drifts too much.</p> |
| </td> |
| <td class="enum_member_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="enum_member_name"><p><a name="GST-AUDIO-BASE-SINK-SLAVE-NONE:CAPS"></a>GST_AUDIO_BASE_SINK_SLAVE_NONE</p></td> |
| <td class="enum_member_description"> |
| <p>No adjustment is done.</p> |
| </td> |
| <td class="enum_member_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="enum_member_name"><p><a name="GST-AUDIO-BASE-SINK-SLAVE-CUSTOM:CAPS"></a>GST_AUDIO_BASE_SINK_SLAVE_CUSTOM</p></td> |
| <td class="enum_member_description"> |
| <p>Use custom clock slaving algorithm (Since: 1.6)</p> |
| </td> |
| <td class="enum_member_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GstAudioBaseSinkDiscontReason"></a><h3>enum GstAudioBaseSinkDiscontReason</h3> |
| <p>Different possible reasons for discontinuities. This enum is useful for the custom |
| slave method.</p> |
| <div class="refsect3"> |
| <a name="GstAudioBaseSinkDiscontReason.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-AUDIO-BASE-SINK-DISCONT-REASON-NO-DISCONT:CAPS"></a>GST_AUDIO_BASE_SINK_DISCONT_REASON_NO_DISCONT</p></td> |
| <td class="enum_member_description"> |
| <p>No discontinuity occurred</p> |
| </td> |
| <td class="enum_member_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="enum_member_name"><p><a name="GST-AUDIO-BASE-SINK-DISCONT-REASON-NEW-CAPS"></a>GST_AUDIO_BASE_SINK_DISCONT_REASON_NEW_CAPS</p></td> |
| <td class="enum_member_description"> |
| <p>New caps are set, causing renegotiotion</p> |
| </td> |
| <td class="enum_member_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="enum_member_name"><p><a name="GST-AUDIO-BASE-SINK-DISCONT-REASON-FLUSH:CAPS"></a>GST_AUDIO_BASE_SINK_DISCONT_REASON_FLUSH</p></td> |
| <td class="enum_member_description"> |
| <p>Samples have been flushed</p> |
| </td> |
| <td class="enum_member_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="enum_member_name"><p><a name="GST-AUDIO-BASE-SINK-DISCONT-REASON-SYNC-LATENCY:CAPS"></a>GST_AUDIO_BASE_SINK_DISCONT_REASON_SYNC_LATENCY</p></td> |
| <td class="enum_member_description"> |
| <p>Sink was synchronized to the estimated latency (occurs during initialization)</p> |
| </td> |
| <td class="enum_member_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="enum_member_name"><p><a name="GST-AUDIO-BASE-SINK-DISCONT-REASON-ALIGNMENT:CAPS"></a>GST_AUDIO_BASE_SINK_DISCONT_REASON_ALIGNMENT</p></td> |
| <td class="enum_member_description"> |
| <p>Aligning buffers failed because the timestamps are too discontinuous</p> |
| </td> |
| <td class="enum_member_annotations"> </td> |
| </tr> |
| <tr> |
| <td class="enum_member_name"><p><a name="GST-AUDIO-BASE-SINK-DISCONT-REASON-DEVICE-FAILURE:CAPS"></a>GST_AUDIO_BASE_SINK_DISCONT_REASON_DEVICE_FAILURE</p></td> |
| <td class="enum_member_description"> |
| <p>Audio output device experienced and recovered from an error but introduced latency in the process (see also <em class="parameter"><code><a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#gst-audio-base-sink-report-device-failure" title="gst_audio_base_sink_report_device_failure ()"><code class="function">gst_audio_base_sink_report_device_failure()</code></a></code></em> |
| )</p> |
| </td> |
| <td class="enum_member_annotations"> </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <p class="since">Since: 1.6</p> |
| </div> |
| </div> |
| <div class="refsect1"> |
| <a name="gst-plugins-base-libs-gstaudiobasesink.property-details"></a><h2>Property Details</h2> |
| <div class="refsect2"> |
| <a name="GstAudioBaseSink--alignment-threshold"></a><h3>The <code class="literal">“alignment-threshold”</code> property</h3> |
| <pre class="programlisting"> “alignment-threshold” <a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#guint64"><span class="type">guint64</span></a></pre> |
| <p>Timestamp alignment threshold in nanoseconds.</p> |
| <p>Flags: Read / Write</p> |
| <p>Allowed values: [1,18446744073709551614]</p> |
| <p>Default value: 40000000</p> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GstAudioBaseSink--buffer-time"></a><h3>The <code class="literal">“buffer-time”</code> property</h3> |
| <pre class="programlisting"> “buffer-time” <a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gint64"><span class="type">gint64</span></a></pre> |
| <p>Size of audio buffer in microseconds, this is the minimum latency that the sink reports.</p> |
| <p>Flags: Read / Write</p> |
| <p>Allowed values: >= 1</p> |
| <p>Default value: 200000</p> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GstAudioBaseSink--can-activate-pull"></a><h3>The <code class="literal">“can-activate-pull”</code> property</h3> |
| <pre class="programlisting"> “can-activate-pull” <a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre> |
| <p>Allow pull-based scheduling.</p> |
| <p>Flags: Read / Write</p> |
| <p>Default value: FALSE</p> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GstAudioBaseSink--discont-wait"></a><h3>The <code class="literal">“discont-wait”</code> property</h3> |
| <pre class="programlisting"> “discont-wait” <a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#guint64"><span class="type">guint64</span></a></pre> |
| <p>A window of time in nanoseconds to wait before creating a discontinuity as |
| a result of breaching the drift-tolerance.</p> |
| <p>Flags: Read / Write</p> |
| <p>Allowed values: <= 18446744073709551614</p> |
| <p>Default value: 1000000000</p> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GstAudioBaseSink--drift-tolerance"></a><h3>The <code class="literal">“drift-tolerance”</code> property</h3> |
| <pre class="programlisting"> “drift-tolerance” <a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gint64"><span class="type">gint64</span></a></pre> |
| <p>Controls the amount of time in microseconds that clocks are allowed |
| to drift before resynchronisation happens.</p> |
| <p>Flags: Read / Write</p> |
| <p>Allowed values: >= 1</p> |
| <p>Default value: 40000</p> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GstAudioBaseSink--latency-time"></a><h3>The <code class="literal">“latency-time”</code> property</h3> |
| <pre class="programlisting"> “latency-time” <a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gint64"><span class="type">gint64</span></a></pre> |
| <p>The minimum amount of data to write in each iteration in microseconds.</p> |
| <p>Flags: Read / Write</p> |
| <p>Allowed values: >= 1</p> |
| <p>Default value: 10000</p> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GstAudioBaseSink--provide-clock"></a><h3>The <code class="literal">“provide-clock”</code> property</h3> |
| <pre class="programlisting"> “provide-clock” <a href="/usr/share/gtk-doc/html/glibglib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre> |
| <p>Provide a clock to be used as the global pipeline clock.</p> |
| <p>Flags: Read / Write</p> |
| <p>Default value: TRUE</p> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GstAudioBaseSink--slave-method"></a><h3>The <code class="literal">“slave-method”</code> property</h3> |
| <pre class="programlisting"> “slave-method” <a class="link" href="gst-plugins-base-libs-gstaudiobasesink.html#GstAudioBaseSinkSlaveMethod" title="enum GstAudioBaseSinkSlaveMethod"><span class="type">GstAudioBaseSinkSlaveMethod</span></a></pre> |
| <p>Algorithm used to match the rate of the masterclock.</p> |
| <p>Flags: Read / Write</p> |
| <p>Default value: GST_AUDIO_BASE_SINK_SLAVE_SKEW</p> |
| </div> |
| </div> |
| <div class="refsect1"> |
| <a name="gst-plugins-base-libs-gstaudiobasesink.see-also"></a><h2>See Also</h2> |
| <p><a class="link" href="gst-plugins-base-libs-gstaudiosink.html#GstAudioSink"><span class="type">GstAudioSink</span></a>, <a class="link" href="gst-plugins-base-libs-gstaudioringbuffer.html#GstAudioRingBuffer"><span class="type">GstAudioRingBuffer</span></a>.</p> |
| </div> |
| </div> |
| <div class="footer"> |
| <hr>Generated by GTK-Doc V1.25</div> |
| </body> |
| </html> |