<root>
<function name="gst_element_get_compatible_pad_template">
<description>
Retrieves a pad template from @element that is compatible with @compattempl.
Pads from compatible templates can be linked together.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement to get a compatible pad template for.
</parameter_description>
</parameter>
<parameter name="compattempl">
<parameter_description> the #GstPadTemplate to find a compatible template for.
</parameter_description>
</parameter>
</parameters>
<return> a compatible #GstPadTemplate, or NULL if none was found. No
unreferencing is necessary.
</return>
</function>

<function name="gst_byte_reader_peek_int24_le">
<description>
Read a signed 24 bit little endian integer into @val
but keep the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #gint32 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_plugin_register_static">
<description>
Registers a static plugin, ie. a plugin which is private to an application
or library and contained within the application or library (as opposed to
being shipped as a separate module file).

You must make sure that GStreamer has been initialised (with gst_init() or
via gst_init_get_option_group()) before calling this function.


</description>
<parameters>
<parameter name="major_version">
<parameter_description> the major version number of the GStreamer core that the
plugin was compiled for, you can just use GST_VERSION_MAJOR here
</parameter_description>
</parameter>
<parameter name="minor_version">
<parameter_description> the minor version number of the GStreamer core that the
plugin was compiled for, you can just use GST_VERSION_MINOR here
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> a unique name of the plugin (ideally prefixed with an application- or
library-specific namespace prefix in order to avoid name conflicts in
case a similar plugin with the same name ever gets added to GStreamer)
</parameter_description>
</parameter>
<parameter name="description">
<parameter_description> description of the plugin
</parameter_description>
</parameter>
<parameter name="init_func">
<parameter_description> pointer to the init function of this plugin.
</parameter_description>
</parameter>
<parameter name="version">
<parameter_description> version string of the plugin
</parameter_description>
</parameter>
<parameter name="license">
<parameter_description> effective license of plugin. Must be one of the approved licenses
(see #GstPluginDesc above) or the plugin will not be registered.
</parameter_description>
</parameter>
<parameter name="source">
<parameter_description> source module plugin belongs to
</parameter_description>
</parameter>
<parameter name="package">
<parameter_description> shipped package plugin belongs to
</parameter_description>
</parameter>
<parameter name="origin">
<parameter_description> URL to provider of plugin
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the plugin was registered correctly, otherwise FALSE.

Since: 0.10.16
</return>
</function>

<function name="gst_clock_get_master">
<description>
Get the master clock that @clock is slaved to or %NULL when the clock is
not slaved to any master clock.


</description>
<parameters>
<parameter name="clock">
<parameter_description> a #GstClock 
</parameter_description>
</parameter>
</parameters>
<return> a master #GstClock or %NULL when this clock is not slaved to a
master clock. Unref after usage.

MT safe.
</return>
</function>

<function name="gst_poll_free">
<description>
Free a file descriptor set.

Since: 0.10.18

</description>
<parameters>
<parameter name="set">
<parameter_description> a file descriptor set.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_caps_normalize">
<description>
Creates a new #GstCaps that represents the same set of formats as
@caps, but contains no lists.  Each list is expanded into separate
@GstStructures.


</description>
<parameters>
<parameter name="caps">
<parameter_description> a #GstCaps to normalize
</parameter_description>
</parameter>
</parameters>
<return> the new #GstCaps
</return>
</function>

<function name="gst_buffer_span">
<description>
Creates a new buffer that consists of part of buf1 and buf2.
Logically, buf1 and buf2 are concatenated into a single larger
buffer, and a new buffer is created at the given offset inside
this space, with a given length.

If the two source buffers are children of the same larger buffer,
and are contiguous, the new buffer will be a child of the shared
parent, and thus no copying is necessary. you can use
gst_buffer_is_span_fast() to determine if a memcpy will be needed.

MT safe.
Returns NULL if the arguments are invalid.

</description>
<parameters>
<parameter name="buf1">
<parameter_description> the first source #GstBuffer to merge.
</parameter_description>
</parameter>
<parameter name="offset">
<parameter_description> the offset in the first buffer from where the new
buffer should start.
</parameter_description>
</parameter>
<parameter name="buf2">
<parameter_description> the second source #GstBuffer to merge.
</parameter_description>
</parameter>
<parameter name="len">
<parameter_description> the total length of the new buffer.
</parameter_description>
</parameter>
</parameters>
<return>NULL if the arguments are invalid.
</return>
</function>

<function name="gst_sdp_message_add_attribute">
<description>
Add the attribute with @key and @value to @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
<parameter name="key">
<parameter_description> the key
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> the value
</parameter_description>
</parameter>
</parameters>
<return> @GST_SDP_OK.
</return>
</function>

<function name="gst_rtsp_connection_set_qos_dscp">
<description>
Configure @conn to use the specified DSCP value.


</description>
<parameters>
<parameter name="conn">
<parameter_description> a #GstRTSPConnection
</parameter_description>
</parameter>
<parameter name="qos_dscp">
<parameter_description> DSCP value
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK on success.

Since: 0.10.20
</return>
</function>

<function name="gst_type_find_suggest">
<description>
If a #GstTypeFindFunction calls this function it suggests the caps with the
given probability. A #GstTypeFindFunction may supply different suggestions
in one call.
It is up to the caller of the #GstTypeFindFunction to interpret these values.

</description>
<parameters>
<parameter name="find">
<parameter_description> The #GstTypeFind object the function was called with
</parameter_description>
</parameter>
<parameter name="probability">
<parameter_description> The probability in percent that the suggestion is right
</parameter_description>
</parameter>
<parameter name="caps">
<parameter_description> The fixed #GstCaps to suggest
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_xml_parse_file">
<description>
Fills the GstXML object with the corresponding elements from
the XML file fname. Optionally it will only build the element from
the element node root (if it is not NULL). This feature is useful
if you only want to build a specific element from an XML file
but not the pipeline it is embedded in.

Pass &quot;-&quot; as fname to read from stdin. You can also pass a URI
of any format that libxml supports, including http.


</description>
<parameters>
<parameter name="xml">
<parameter_description> a pointer to a GstXML object
</parameter_description>
</parameter>
<parameter name="fname">
<parameter_description> The filename with the xml description
</parameter_description>
</parameter>
<parameter name="root">
<parameter_description> The name of the root object to build
</parameter_description>
</parameter>
</parameters>
<return> TRUE on success, FALSE otherwise
</return>
</function>

<function name="gst_fft_s16_fft">
<description>
This performs the FFT on @timedata and puts the result in @freqdata.

@timedata must have as many samples as specified with the @len parameter while
allocating the #GstFFTS16 instance with gst_fft_s16_new().

@freqdata must be large enough to hold @len/2 + 1 #GstFFTS16Complex frequency
domain samples.


</description>
<parameters>
<parameter name="self">
<parameter_description> #GstFFTS16 instance for this call
</parameter_description>
</parameter>
<parameter name="timedata">
<parameter_description> Buffer of the samples in the time domain
</parameter_description>
</parameter>
<parameter name="freqdata">
<parameter_description> Target buffer for the samples in the frequency domain
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_tag_setter_merge_tags">
<description>
Merges the given list into the setter&apos;s list using the given mode.

</description>
<parameters>
<parameter name="setter">
<parameter_description> a #GstTagSetter
</parameter_description>
</parameter>
<parameter name="list">
<parameter_description> a tag list to merge from
</parameter_description>
</parameter>
<parameter name="mode">
<parameter_description> the mode to merge with
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_message_get_seqnum">
<description>
Retrieve the sequence number of a message.

Messages have ever-incrementing sequence numbers, which may also be set
explicitly via gst_message_set_seqnum(). Sequence numbers are typically used
to indicate that a message corresponds to some other set of messages or
events, for example a SEGMENT_DONE message corresponding to a SEEK event. It
is considered good practice to make this correspondence when possible, though
it is not required.

Note that events and messages share the same sequence number incrementor;
two events or messages will never not have the same sequence number unless
that correspondence was made explicitly.


</description>
<parameters>
<parameter name="message">
<parameter_description> A #GstMessage.
</parameter_description>
</parameter>
</parameters>
<return> The message&apos;s sequence number.

Since: 0.10.22

MT safe.
</return>
</function>

<function name="gst_plugin_get_module">
<description>
Gets the #GModule of the plugin. If the plugin isn&apos;t loaded yet, NULL is
returned.


</description>
<parameters>
<parameter name="plugin">
<parameter_description> plugin to query
</parameter_description>
</parameter>
</parameters>
<return> module belonging to the plugin or NULL if the plugin isn&apos;t
loaded yet.
</return>
</function>

<function name="gst_base_transform_suggest">
<description>
Instructs @trans to suggest new @caps upstream. A copy of @caps will be
taken.

Since: 0.10.21

</description>
<parameters>
<parameter name="trans">
<parameter_description> a #GstBaseTransform
</parameter_description>
</parameter>
<parameter name="caps">
<parameter_description> caps to suggest
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> buffer size to suggest
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_adapter_copy">
<description>
Copies @size bytes of data starting at @offset out of the buffers
contained in @GstAdapter into an array @dest provided by the caller.

The array @dest should be large enough to contain @size bytes.
The user should check that the adapter has (@offset + @size) bytes
available before calling this function.

Since: 0.10.12

</description>
<parameters>
<parameter name="adapter">
<parameter_description> a #GstAdapter
</parameter_description>
</parameter>
<parameter name="dest">
<parameter_description> the memory where to copy to
</parameter_description>
</parameter>
<parameter name="offset">
<parameter_description> the bytes offset in the adapter to start from
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> the number of bytes to copy
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_caps_new_simple">
<description>
Creates a new #GstCaps that contains one #GstStructure.  The
structure is defined by the arguments, which have the same format
as gst_structure_new().
Caller is responsible for unreffing the returned caps.


</description>
<parameters>
<parameter name="media_type">
<parameter_description> the media type of the structure
</parameter_description>
</parameter>
<parameter name="fieldname">
<parameter_description> first field to set
</parameter_description>
</parameter>
<parameter name="Varargs">
<parameter_description> additional arguments
</parameter_description>
</parameter>
</parameters>
<return> the new #GstCaps
</return>
</function>

<function name="gst_element_send_event">
<description>
Sends an event to an element. If the element doesn&apos;t implement an
event handler, the event will be pushed on a random linked sink pad for
upstream events or a random linked source pad for downstream events.

This function takes owership of the provided event so you should
gst_event_ref() it if you want to reuse the event after this call.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement to send the event to.
</parameter_description>
</parameter>
<parameter name="event">
<parameter_description> the #GstEvent to send to the element.
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the event was handled.

MT safe.
</return>
</function>

<function name="gst_mini_object_copy">
<description>
Creates a copy of the mini-object.

MT safe


</description>
<parameters>
<parameter name="mini_object">
<parameter_description> the mini-object to copy
</parameter_description>
</parameter>
</parameters>
<return> the new mini-object.
</return>
</function>

<function name="gst_pad_set_iterate_internal_links_function">
<description>
Sets the given internal link iterator function for the pad.

Since: 0.10.21

</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad of either direction.
</parameter_description>
</parameter>
<parameter name="iterintlink">
<parameter_description> the #GstPadIterIntLinkFunction to set.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_clock_get_resolution">
<description>
Get the accuracy of the clock. The accuracy of the clock is the granularity
of the values returned by gst_clock_get_time().


</description>
<parameters>
<parameter name="clock">
<parameter_description> a #GstClock
</parameter_description>
</parameter>
</parameters>
<return> the resolution of the clock in units of #GstClockTime.

MT safe.
</return>
</function>

<function name="gst_rtsp_transport_as_text">
<description>
Convert @transport into a string that can be used to signal the transport in
an RTSP SETUP response.


</description>
<parameters>
<parameter name="transport">
<parameter_description> a #GstRTSPTransport
</parameter_description>
</parameter>
</parameters>
<return> a string describing the RTSP transport or #NULL when the transport
is invalid.
</return>
</function>

<function name="gst_bin_iterate_sorted">
<description>
Gets an iterator for the elements in this bin in topologically
sorted order. This means that the elements are returned from
the most downstream elements (sinks) to the sources.

This function is used internally to perform the state changes
of the bin elements and for clock selection.

Each element yielded by the iterator will have its refcount increased, so
unref after use.

MT safe.  Caller owns returned value.


</description>
<parameters>
<parameter name="bin">
<parameter_description> a #GstBin
</parameter_description>
</parameter>
</parameters>
<return> a #GstIterator of #GstElement, or NULL
</return>
</function>

<function name="gst_structure_from_string">
<description>
Creates a #GstStructure from a string representation.
If end is not NULL, a pointer to the place inside the given string
where parsing ended will be returned.


</description>
<parameters>
<parameter name="string">
<parameter_description> a string representation of a #GstStructure.
</parameter_description>
</parameter>
<parameter name="end">
<parameter_description> pointer to store the end of the string in.
</parameter_description>
</parameter>
</parameters>
<return> a new #GstStructure or NULL when the string could not
be parsed. Free with gst_structure_free() after use.
</return>
</function>

<function name="gst_mixer_set_mute">
<description>
Mutes or unmutes the given channel. To find out whether a
track is currently muted, use GST_MIXER_TRACK_HAS_FLAG ().

</description>
<parameters>
<parameter name="mixer">
<parameter_description> the #GstMixer (a #GstElement) that owns the track.
</parameter_description>
</parameter>
<parameter name="track">
<parameter_description> the #GstMixerTrack to operate on.
</parameter_description>
</parameter>
<parameter name="mute">
<parameter_description> a boolean value indicating whether to turn on or off
muting.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_tag_list_insert">
<description>
Inserts the tags of the @from list into the first list using the given mode.

</description>
<parameters>
<parameter name="into">
<parameter_description> list to merge into
</parameter_description>
</parameter>
<parameter name="from">
<parameter_description> list to merge from
</parameter_description>
</parameter>
<parameter name="mode">
<parameter_description> the mode to use
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_byte_reader_peek_uint24_be">
<description>
Read a signed 24 bit big endian integer into @val
but keep the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #guint32 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_tag_merge_strings_with_comma">
<description>
This is a convenience function for the func argument of gst_tag_register().
It concatenates all given strings using a comma. The tag must be registered
as a G_TYPE_STRING or this function will fail.

</description>
<parameters>
<parameter name="dest">
<parameter_description> uninitialized GValue to store result in
</parameter_description>
</parameter>
<parameter name="src">
<parameter_description> GValue to copy from
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_base_transform_is_passthrough">
<description>
See if @trans is configured as a passthrough transform.


</description>
<parameters>
<parameter name="trans">
<parameter_description> the #GstBaseTransform to query
</parameter_description>
</parameter>
</parameters>
<return> TRUE is the transform is configured in passthrough mode.

MT safe.
</return>
</function>

<function name="gst_registry_get_feature_list">
<description>
Retrieves a #GList of #GstPluginFeature of @type.


</description>
<parameters>
<parameter name="registry">
<parameter_description> a #GstRegistry
</parameter_description>
</parameter>
<parameter name="type">
<parameter_description> a #GType.
</parameter_description>
</parameter>
</parameters>
<return> a #GList of #GstPluginFeature of @type. Use
gst_plugin_feature_list_free() after usage.

MT safe.
</return>
</function>

<function name="gst_x_overlay_prepare_xwindow_id">
<description>
This will post a &quot;prepare-xwindow-id&quot; element message on the bus
to give applications an opportunity to call 
gst_x_overlay_set_xwindow_id() before a plugin creates its own
window.

This function should only be used by video overlay plugin developers.

</description>
<parameters>
<parameter name="overlay">
<parameter_description> a #GstXOverlay which does not yet have an XWindow.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_byte_reader_peek_int24_be">
<description>
Read a signed 24 bit big endian integer into @val
but keep the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #gint32 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_element_iterate_sink_pads">
<description>
Retrieves an iterator of @element&apos;s sink pads.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement.
</parameter_description>
</parameter>
</parameters>
<return> the #GstIterator of #GstPad. Unref each pad after use.

MT safe.
</return>
</function>

<function name="gst_caps_new_full_valist">
<description>
Creates a new #GstCaps and adds all the structures listed as
arguments.  The list must be NULL-terminated.  The structures
are not copied; the returned #GstCaps owns the structures.


</description>
<parameters>
<parameter name="structure">
<parameter_description> the first structure to add
</parameter_description>
</parameter>
<parameter name="var_args">
<parameter_description> additional structures to add
</parameter_description>
</parameter>
</parameters>
<return> the new #GstCaps
</return>
</function>

<function name="gst_sdp_media_set_information">
<description>
Set the media information of @media to @information.


</description>
<parameters>
<parameter name="media">
<parameter_description> a #GstSDPMedia
</parameter_description>
</parameter>
<parameter name="information">
<parameter_description> the media information
</parameter_description>
</parameter>
</parameters>
<return> #GST_SDP_OK.
</return>
</function>

<function name="gst_rtsp_message_init">
<description>
Initialize @msg. This function is mostly used when @msg is allocated on the
stack. The reverse operation of this is gst_rtsp_message_unset().


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstRTSPMessage
</parameter_description>
</parameter>
</parameters>
<return> a #GstRTSPResult.
</return>
</function>

<function name="gst_plugin_get_version">
<description>
get the version of the plugin


</description>
<parameters>
<parameter name="plugin">
<parameter_description> plugin to get the version of
</parameter_description>
</parameter>
</parameters>
<return> the version of the plugin
</return>
</function>

<function name="gst_element_class_install_std_props">
<description>
Adds a list of standardized properties with types to the @klass.
the id is for the property switch in your get_prop method, and
the flags determine readability / writeability.

</description>
<parameters>
<parameter name="klass">
<parameter_description> the #GstElementClass to add the properties to.
</parameter_description>
</parameter>
<parameter name="first_name">
<parameter_description> the name of the first property.
in a NULL terminated
</parameter_description>
</parameter>
<parameter name="Varargs">
<parameter_description> the id and flags of the first property, followed by
further &apos;name&apos;, &apos;id&apos;, &apos;flags&apos; triplets and terminated by NULL.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_element_link_filtered">
<description>
Links @src to @dest using the given caps as filtercaps.
The link must be from source to
destination; the other direction will not be tried. The function looks for
existing pads that aren&apos;t linked yet. It will request new pads if necessary.
If multiple links are possible, only one is established.

Make sure you have added your elements to a bin or pipeline with
gst_bin_add() before trying to link them.


</description>
<parameters>
<parameter name="src">
<parameter_description> a #GstElement containing the source pad.
</parameter_description>
</parameter>
<parameter name="dest">
<parameter_description> the #GstElement containing the destination pad.
</parameter_description>
</parameter>
<parameter name="filter">
<parameter_description> the #GstCaps to filter the link, or #NULL for no filter.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the pads could be linked, FALSE otherwise.
</return>
</function>

<function name="gst_segment_set_newsegment">
<description>
Update the segment structure with the field values of a new segment event and
with a default applied_rate of 1.0.

Since: 0.10.6

</description>
<parameters>
<parameter name="segment">
<parameter_description> a #GstSegment structure.
</parameter_description>
</parameter>
<parameter name="update">
<parameter_description> flag indicating a new segment is started or updated
</parameter_description>
</parameter>
<parameter name="rate">
<parameter_description> the rate of the segment.
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> the format of the segment.
</parameter_description>
</parameter>
<parameter name="start">
<parameter_description> the new start value
</parameter_description>
</parameter>
<parameter name="stop">
<parameter_description> the new stop value
</parameter_description>
</parameter>
<parameter name="time">
<parameter_description> the new stream time
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_sdp_message_phones_len">
<description>
Get the number of phones in @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
</parameters>
<return> the number of phones in @msg.
</return>
</function>

<function name="gst_query_parse_duration">
<description>
Parse a duration query answer. Write the format of the duration into @format,
and the value into @duration, if the respective variables are non-NULL.

</description>
<parameters>
<parameter name="query">
<parameter_description> a #GstQuery
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> the storage for the #GstFormat of the duration value, or NULL.
</parameter_description>
</parameter>
<parameter name="duration">
<parameter_description> the storage for the total duration, or NULL.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_index_get_certainty">
<description>
Get the certainty of the given index.


</description>
<parameters>
<parameter name="index">
<parameter_description> the index to get the certainty of
</parameter_description>
</parameter>
</parameters>
<return> the certainty of the index.
</return>
</function>

<function name="gst_query_parse_latency">
<description>
Parse a latency query answer. 

Since: 0.10.12

</description>
<parameters>
<parameter name="query">
<parameter_description> a #GstQuery
</parameter_description>
</parameter>
<parameter name="live">
<parameter_description> storage for live or NULL 
</parameter_description>
</parameter>
<parameter name="min_latency">
<parameter_description> the storage for the min latency or NULL
</parameter_description>
</parameter>
<parameter name="max_latency">
<parameter_description> the storage for the max latency or NULL
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_bit_reader_new">
<description>
Create a new #GstBitReader instance, which will read from @data.


</description>
<parameters>
<parameter name="data">
<parameter_description> Data from which the #GstBitReader should read
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> Size of @data in bytes
</parameter_description>
</parameter>
</parameters>
<return> a new #GstBitReader instance

Since: 0.10.22
</return>
</function>

<function name="gst_controller_get_value_array">
<description>
Function to be able to get an array of values for one element property.

All fields of @value_array must be filled correctly. Especially the
@value_array-&amp;gt;values array must be big enough to keep the requested amount
of values.

The type of the values in the array is the same as the property&apos;s type.

&amp;lt;note&amp;gt;&amp;lt;para&amp;gt;This doesn&apos;t modify the controlled GObject property!&amp;lt;/para&amp;gt;&amp;lt;/note&amp;gt;


</description>
<parameters>
<parameter name="self">
<parameter_description> the controller that handles the values
</parameter_description>
</parameter>
<parameter name="timestamp">
<parameter_description> the time that should be processed
</parameter_description>
</parameter>
<parameter name="value_array">
<parameter_description> array to put control-values in
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the given array could be filled, %FALSE otherwise
</return>
</function>

<function name="gst_missing_uri_source_message_new">
<description>
Creates a missing-plugin message for @element to notify the application
that a source element for a particular URI protocol is missing. This
function is mainly for use in plugins.


</description>
<parameters>
<parameter name="element">
<parameter_description> the #GstElement posting the message
</parameter_description>
</parameter>
<parameter name="protocol">
<parameter_description> the URI protocol the missing source needs to implement,
e.g. &quot;http&quot; or &quot;mms&quot;
</parameter_description>
</parameter>
</parameters>
<return> a new #GstMessage, or NULL on error
</return>
</function>

<function name="gst_bus_post">
<description>
Post a message on the given bus. Ownership of the message
is taken by the bus.


</description>
<parameters>
<parameter name="bus">
<parameter_description> a #GstBus to post on
</parameter_description>
</parameter>
<parameter name="message">
<parameter_description> The #GstMessage to post
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the message could be posted, FALSE if the bus is flushing.

MT safe.
</return>
</function>

<function name="gst_structure_get_fraction">
<description>
Sets the integers pointed to by @value_numerator and @value_denominator 
corresponding to the value of the given field.  Caller is responsible 
for making sure the field exists and has the correct type.


</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="fieldname">
<parameter_description> the name of a field
</parameter_description>
</parameter>
<parameter name="value_numerator">
<parameter_description> a pointer to an int to set
</parameter_description>
</parameter>
<parameter name="value_denominator">
<parameter_description> a pointer to an int to set
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the values could be set correctly. If there was no field
with @fieldname or the existing field did not contain a GstFraction, this 
function returns FALSE.
</return>
</function>

<function name="gst_parse_context_free">
<description>
Frees a parse context previously allocated with gst_parse_context_new().

Since: 0.10.20

</description>
<parameters>
<parameter name="context">
<parameter_description> a #GstParseContext
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_structure_set_value">
<description>
Sets the field with the given name @field to @value.  If the field
does not exist, it is created.  If the field exists, the previous
value is replaced and freed.

</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="fieldname">
<parameter_description> the name of the field to set
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> the new value of the field
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_property_probe_get_values_name">
<description>
Same as gst_property_probe_get_values ().


</description>
<parameters>
<parameter name="probe">
<parameter_description> the #GstPropertyProbe object.
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> the name of the property to get values for.
</parameter_description>
</parameter>
</parameters>
<return> A list of valid values for the given property.
</return>
</function>

<function name="gst_event_parse_tag">
<description>
Parses a tag @event and stores the results in the given @taglist location.

</description>
<parameters>
<parameter name="event">
<parameter_description> a tag event
</parameter_description>
</parameter>
<parameter name="taglist">
<parameter_description> pointer to metadata list
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_value_array_append_value">
<description>
Appends @append_value to the GstValueArray in @value.

</description>
<parameters>
<parameter name="value">
<parameter_description> a #GValue of type #GST_TYPE_ARRAY
</parameter_description>
</parameter>
<parameter name="append_value">
<parameter_description> the value to append
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_alloc_trace_set_flags_all">
<description>
Enable the specified options on all registered alloc trace
objects.

</description>
<parameters>
<parameter name="flags">
<parameter_description> the options to enable
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_query_new_uri">
<description>
Constructs a new query URI query object. Use gst_query_unref()
when done with it. An URI query is used to query the current URI
that is used by the source or sink.


</description>
<parameters>
</parameters>
<return> A #GstQuery

Since: 0.10.22
</return>
</function>

<function name="gst_tag_list_to_vorbiscomment_buffer">
<description>
Creates a new vorbiscomment buffer from a tag list.


</description>
<parameters>
<parameter name="list">
<parameter_description> tag list to convert
</parameter_description>
</parameter>
<parameter name="id_data">
<parameter_description> identification data at start of stream
</parameter_description>
</parameter>
<parameter name="id_data_length">
<parameter_description> length of identification data, may be 0 if @id_data is NULL
</parameter_description>
</parameter>
<parameter name="vendor_string">
<parameter_description> string that describes the vendor string or NULL
</parameter_description>
</parameter>
</parameters>
<return> A new #GstBuffer containing a vorbiscomment buffer with all tags
that could be converted from the given tag list.
</return>
</function>

<function name="gst_tag_list_new_from_id3v1">
<description>
Parses the data containing an ID3v1 tag and returns a #GstTagList from the
parsed data.


</description>
<parameters>
<parameter name="data">
<parameter_description> 128 bytes of data containing the ID3v1 tag
</parameter_description>
</parameter>
</parameters>
<return> A new tag list or NULL if the data was not an ID3v1 tag.
</return>
</function>

<function name="gst_debug_unset_threshold_for_name">
<description>
Resets all categories with the given name back to the default level.

</description>
<parameters>
<parameter name="name">
<parameter_description> name of the categories to set
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_query_type_register">
<description>
Create a new GstQueryType based on the nick or return an
already registered query with that nick


</description>
<parameters>
<parameter name="nick">
<parameter_description> The nick of the new query
</parameter_description>
</parameter>
<parameter name="description">
<parameter_description> The description of the new query
</parameter_description>
</parameter>
</parameters>
<return> A new GstQueryType or an already registered query
with the same nick.
</return>
</function>

<function name="gst_data_queue_pop">
<description>
Retrieves the first @item available on the @queue. If the queue is currently
empty, the call will block until at least one item is available, OR the
@queue is set to the flushing state.
MT safe.


</description>
<parameters>
<parameter name="queue">
<parameter_description> a #GstDataQueue.
</parameter_description>
</parameter>
<parameter name="item">
<parameter_description> pointer to store the returned #GstDataQueueItem.
</parameter_description>
</parameter>
</parameters>
<return> #TRUE if an @item was successfully retrieved from the @queue.
</return>
</function>

<function name="gst_rtcp_packet_get_length">
<description>
Get the length field of @packet. This is the length of the packet in 
32-bit words minus one.


</description>
<parameters>
<parameter name="packet">
<parameter_description> a valid #GstRTCPPacket
</parameter_description>
</parameter>
</parameters>
<return> The length field of @packet.
</return>
</function>

<function name="gst_xml_new">
<description>
Create a new GstXML parser object.


</description>
<parameters>
</parameters>
<return> a pointer to a new GstXML object.
</return>
</function>

<function name="gst_object_save_thyself">
<description>
Saves @object into the parent XML node.


</description>
<parameters>
<parameter name="object">
<parameter_description> a #GstObject to save
</parameter_description>
</parameter>
<parameter name="parent">
<parameter_description> The parent XML node to save @object into
</parameter_description>
</parameter>
</parameters>
<return> the new xmlNodePtr with the saved object
</return>
</function>

<function name="gst_missing_decoder_message_new">
<description>
Creates a missing-plugin message for @element to notify the application
that a decoder element for a particular set of (fixed) caps is missing.
This function is mainly for use in plugins.


</description>
<parameters>
<parameter name="element">
<parameter_description> the #GstElement posting the message
</parameter_description>
</parameter>
<parameter name="decode_caps">
<parameter_description> the (fixed) caps for which a decoder element is needed
</parameter_description>
</parameter>
</parameters>
<return> a new #GstMessage, or NULL on error
</return>
</function>

<function name="gst_pipeline_use_clock">
<description>
Force @pipeline to use the given @clock. The pipeline will
always use the given clock even if new clock providers are added
to this pipeline.

If @clock is NULL all clocking will be disabled which will make
the pipeline run as fast as possible.

MT safe.

</description>
<parameters>
<parameter name="pipeline">
<parameter_description> a #GstPipeline
</parameter_description>
</parameter>
<parameter name="clock">
<parameter_description> the clock to use
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_caps_make_writable">
<description>
Returns: the same #GstCaps object.

</description>
<parameters>
<parameter name="caps">
<parameter_description> the #GstCaps to make writable
</parameter_description>
</parameter>
</parameters>
<return> the same #GstCaps object.
</return>
</function>

<function name="gst_color_balance_set_value">
<description>
Sets the current value of the channel to the passed value, which must
be between min_value and max_value.

See Also: The #GstColorBalanceChannel::min_value and
#GstColorBalanceChannel::max_value members of the
#GstColorBalanceChannel object.

</description>
<parameters>
<parameter name="balance">
<parameter_description> A #GstColorBalance instance
</parameter_description>
</parameter>
<parameter name="channel">
<parameter_description> A #GstColorBalanceChannel instance
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> The new value for the channel.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_buffer_straw_get_buffer">
<description>
Get one buffer from @pad. Implemented via buffer probes. This function will
block until the pipeline passes a buffer over @pad, so for robust behavior
in unit tests, you need to use check&apos;s timeout to fail out in the case that a
buffer never arrives.

You must have previously called gst_buffer_straw_start_pipeline() on
@pipeline and @pad.


</description>
<parameters>
<parameter name="bin">
<parameter_description> the pipeline previously started via gst_buffer_straw_start_pipeline()
</parameter_description>
</parameter>
<parameter name="pad">
<parameter_description> the pad previously passed to gst_buffer_straw_start_pipeline()
</parameter_description>
</parameter>
</parameters>
<return> the captured #GstBuffer.
</return>
</function>

<function name="gst_iterator_fold">
<description>
Folds @func over the elements of @iter. That is to say, @func will be called
as @func (object, @ret, @user_data) for each object in @it. The normal use
of this procedure is to accumulate the results of operating on the objects in
@ret.

This procedure can be used (and is used internally) to implement the foreach
and find_custom operations.

The fold will proceed as long as @func returns TRUE. When the iterator has no
more arguments, #GST_ITERATOR_DONE will be returned. If @func returns FALSE,
the fold will stop, and #GST_ITERATOR_OK will be returned. Errors or resyncs
will cause fold to return #GST_ITERATOR_ERROR or #GST_ITERATOR_RESYNC as
appropriate.

The iterator will not be freed.


</description>
<parameters>
<parameter name="it">
<parameter_description> The #GstIterator to fold over
</parameter_description>
</parameter>
<parameter name="func">
<parameter_description> the fold function
</parameter_description>
</parameter>
<parameter name="ret">
<parameter_description> the seed value passed to the fold function
</parameter_description>
</parameter>
<parameter name="user_data">
<parameter_description> user data passed to the fold function
</parameter_description>
</parameter>
</parameters>
<return> A #GstIteratorResult, as described above.

MT safe.
</return>
</function>

<function name="gst_object_unref">
<description>
Decrements the reference count on @object.  If reference count hits
zero, destroy @object. This function does not take the lock
on @object as it relies on atomic refcounting.

The unref method should never be called with the LOCK held since
this might deadlock the dispose function.

</description>
<parameters>
<parameter name="object">
<parameter_description> a #GstObject to unreference
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_fft_f32_window">
<description>
This calls the window function @window on the @timedata sample buffer.


</description>
<parameters>
<parameter name="self">
<parameter_description> #GstFFTF32 instance for this call
</parameter_description>
</parameter>
<parameter name="timedata">
<parameter_description> Time domain samples
</parameter_description>
</parameter>
<parameter name="window">
<parameter_description> Window function to apply
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_riff_parse_info">
<description>
Parses stream metadata from input data.

</description>
<parameters>
<parameter name="element">
<parameter_description> caller element (used for debugging/error).
</parameter_description>
</parameter>
<parameter name="buf">
<parameter_description> input data to be used for parsing, stripped from header.
</parameter_description>
</parameter>
<parameter name="taglist">
<parameter_description> a pointer to a taglist (returned by this function)
containing information about this stream. May be
NULL if no supported tags were found.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_tag_list_add_values">
<description>
Sets the GValues for the given tags using the specified mode.

</description>
<parameters>
<parameter name="list">
<parameter_description> list to set tags in
</parameter_description>
</parameter>
<parameter name="mode">
<parameter_description> the mode to use
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag
</parameter_description>
</parameter>
<parameter name="Varargs">
<parameter_description> GValues to set
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_sdp_message_get_session_name">
<description>
Get the session name in @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPResult.
</return>
</function>

<function name="gst_event_parse_buffer_size">
<description>
Get the format, minsize, maxsize and async-flag in the buffersize event.

</description>
<parameters>
<parameter name="event">
<parameter_description> The event to query
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> A pointer to store the format in
</parameter_description>
</parameter>
<parameter name="minsize">
<parameter_description> A pointer to store the minsize in
</parameter_description>
</parameter>
<parameter name="maxsize">
<parameter_description> A pointer to store the maxsize in
</parameter_description>
</parameter>
<parameter name="async">
<parameter_description> A pointer to store the async-flag in
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_plugin_get_license">
<description>
get the license of the plugin


</description>
<parameters>
<parameter name="plugin">
<parameter_description> plugin to get the license of
</parameter_description>
</parameter>
</parameters>
<return> the license of the plugin
</return>
</function>

<function name="gst_pad_use_fixed_caps">
<description>
A helper function you can use that sets the
@gst_pad_get_fixed_caps_func as the getcaps function for the
pad. This way the function will always return the negotiated caps
or in case the pad is not negotiated, the padtemplate caps.

Use this function on a pad that, once _set_caps() has been called
on it, cannot be renegotiated to something else.

</description>
<parameters>
<parameter name="pad">
<parameter_description> the pad to use
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="GstElement">
<description>
This signals that the element will not generate more dynamic pads.

</description>
<parameters>
<parameter name="gstelement">
<parameter_description> the object which received the signal
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_collect_pads_set_flushing">
<description>
Change the flushing state of all the pads in the collection. No pad
is able to accept anymore data when @flushing is %TRUE. Calling this
function with @flushing %FALSE makes @pads accept data again.

MT safe.

Since: 0.10.7.

</description>
<parameters>
<parameter name="pads">
<parameter_description> the collectspads to use
</parameter_description>
</parameter>
<parameter name="flushing">
<parameter_description> desired state of the pads
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_check_element_push_buffer">
<description>
Create an @element with the factory with the name and push the
@buffer_in to this element. The element should create one buffer
and this will be compared with @buffer_out. We only check the caps
and the data of the buffers. This function unrefs the buffers.

Since: 0.10.18

</description>
<parameters>
<parameter name="element_name">
<parameter_description> name of the element that needs to be created
</parameter_description>
</parameter>
<parameter name="buffer_in">
<parameter_description> push this buffer to the element
</parameter_description>
</parameter>
<parameter name="buffer_out">
<parameter_description> compare the result with this buffer
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_byte_reader_init_from_buffer">
<description>
Initializes a #GstByteReader instance to read from @buffer. This function
can be called on already initialized instances.

Since: 0.10.22

</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="buffer">
<parameter_description> Buffer from which the #GstByteReader should read
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_value_get_double_range_min">
<description>
Gets the minimum of the range specified by @value.


</description>
<parameters>
<parameter name="value">
<parameter_description> a GValue initialized to GST_TYPE_DOUBLE_RANGE
</parameter_description>
</parameter>
</parameters>
<return> the minimum of the range
</return>
</function>

<function name="gst_byte_reader_get_float64_le">
<description>
Read a 64 bit little endian integer into @val
and update the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #gdouble to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_index_factory_find">
<description>
Search for an indexfactory of the given name.


</description>
<parameters>
<parameter name="name">
<parameter_description> name of indexfactory to find
</parameter_description>
</parameter>
</parameters>
<return> #GstIndexFactory if found, NULL otherwise
</return>
</function>

<function name="gst_pad_load_and_link">
<description>
Reads the pad definition from the XML node and links the given pad
in the element to a pad of an element up in the hierarchy.

</description>
<parameters>
<parameter name="self">
<parameter_description> an #xmlNodePtr to read the description from.
</parameter_description>
</parameter>
<parameter name="parent">
<parameter_description> the #GstObject element that owns the pad.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_accept_caps">
<description>
Check if the given pad accepts the caps.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad to check
</parameter_description>
</parameter>
<parameter name="caps">
<parameter_description> a #GstCaps to check on the pad
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the pad can accept the caps.
</return>
</function>

<function name="gst_object_uncontrol_properties">
<description>
Convenience function for GObject

Removes the given element&apos;s properties from it&apos;s controller


</description>
<parameters>
<parameter name="object">
<parameter_description> the object of which some properties should not be controlled anymore
</parameter_description>
</parameter>
<parameter name="Varargs">
<parameter_description> %NULL terminated list of property names that should be controlled
</parameter_description>
</parameter>
</parameters>
<return> %FALSE if one of the given property names isn&apos;t handled by the
controller, %TRUE otherwise
Since: 0.9
</return>
</function>

<function name="gst_poll_fd_can_read">
<description>
Check if @fd in @set has data to be read.


</description>
<parameters>
<parameter name="set">
<parameter_description> a file descriptor set.
</parameter_description>
</parameter>
<parameter name="fd">
<parameter_description> a file descriptor.
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the descriptor has data to be read.

Since: 0.10.18
</return>
</function>

<function name="gst_caps_intersect">
<description>
Creates a new #GstCaps that contains all the formats that are common
to both @caps1 and @caps2.


</description>
<parameters>
<parameter name="caps1">
<parameter_description> a #GstCaps to intersect
</parameter_description>
</parameter>
<parameter name="caps2">
<parameter_description> a #GstCaps to intersect
</parameter_description>
</parameter>
</parameters>
<return> the new #GstCaps
</return>
</function>

<function name="gst_clock_add_observation">
<description>
The time @master of the master clock and the time @slave of the slave
clock are added to the list of observations. If enough observations
are available, a linear regression algorithm is run on the
observations and @clock is recalibrated.

If this functions returns %TRUE, @r_squared will contain the 
correlation coefficient of the interpolation. A value of 1.0
means a perfect regression was performed. This value can
be used to control the sampling frequency of the master and slave
clocks.


</description>
<parameters>
<parameter name="clock">
<parameter_description> a #GstClock 
</parameter_description>
</parameter>
<parameter name="slave">
<parameter_description> a time on the slave
</parameter_description>
</parameter>
<parameter name="master">
<parameter_description> a time on the master
</parameter_description>
</parameter>
<parameter name="r_squared">
<parameter_description> a pointer to hold the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if enough observations were added to run the 
regression algorithm.

MT safe.
</return>
</function>

<function name="gst_value_set_fraction_range_full">
<description>
Sets @value to the range specified by @numerator_start/@denominator_start
and @numerator_end/@denominator_end.

</description>
<parameters>
<parameter name="value">
<parameter_description> a GValue initialized to GST_TYPE_FRACTION_RANGE
</parameter_description>
</parameter>
<parameter name="numerator_start">
<parameter_description> the numerator start of the range
</parameter_description>
</parameter>
<parameter name="denominator_start">
<parameter_description> the denominator start of the range
</parameter_description>
</parameter>
<parameter name="numerator_end">
<parameter_description> the numerator end of the range
</parameter_description>
</parameter>
<parameter name="denominator_end">
<parameter_description> the denominator end of the range
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_util_set_value_from_string">
<description>
Converts the string to the type of the value and
sets the value with it.

</description>
<parameters>
<parameter name="value">
<parameter_description> the value to set
</parameter_description>
</parameter>
<parameter name="value_str">
<parameter_description> the string to get the value from
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_value_fraction_multiply">
<description>
Multiplies the two GValues containing a GstFraction and sets @product
to the product of the two fractions.


</description>
<parameters>
<parameter name="product">
<parameter_description> a GValue initialized to #GST_TYPE_FRACTION
</parameter_description>
</parameter>
<parameter name="factor1">
<parameter_description> a GValue initialized to #GST_TYPE_FRACTION
</parameter_description>
</parameter>
<parameter name="factor2">
<parameter_description> a GValue initialized to #GST_TYPE_FRACTION
</parameter_description>
</parameter>
</parameters>
<return> FALSE in case of an error (like integer overflow), TRUE otherwise.
</return>
</function>

<function name="gst_netaddress_equal">
<description>
Compare two #GstNetAddress structures


</description>
<parameters>
<parameter name="naddr1">
<parameter_description> The first #GstNetAddress
</parameter_description>
</parameter>
<parameter name="naddr2">
<parameter_description> The second #GstNetAddress
</parameter_description>
</parameter>
</parameters>
<return> TRUE if they are identical, FALSE otherwise

Since: 0.10.18
</return>
</function>

<function name="GstTunerChannel">
<description>
Reports that the signal strength has changed.

See Also: gst_tuner_signal_strength()

</description>
<parameters>
<parameter name="tunerchannel">
<parameter_description> The #GstTunerChannel
</parameter_description>
</parameter>
<parameter name="signal">
<parameter_description> The new signal strength (an integer)
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_tag_list_free">
<description>
Frees the given list and all associated values.

</description>
<parameters>
<parameter name="list">
<parameter_description> the list to free
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_fft_s32_inverse_fft">
<description>
This performs the inverse FFT on @freqdata and puts the result in @timedata.

@freqdata must have @len/2 + 1 samples, where @len is the parameter specified
while allocating the #GstFFTS32 instance with gst_fft_s32_new().

@timedata must be large enough to hold @len time domain samples.


</description>
<parameters>
<parameter name="self">
<parameter_description> #GstFFTS32 instance for this call
</parameter_description>
</parameter>
<parameter name="freqdata">
<parameter_description> Buffer of the samples in the frequency domain
</parameter_description>
</parameter>
<parameter name="timedata">
<parameter_description> Target buffer for the samples in the time domain
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_object_get_path_string">
<description>
Generates a string describing the path of @object in
the object hierarchy. Only useful (or used) for debugging.


</description>
<parameters>
<parameter name="object">
<parameter_description> a #GstObject
</parameter_description>
</parameter>
</parameters>
<return> a string describing the path of @object. You must
g_free() the string after usage.

MT safe. Grabs and releases the #GstObject&apos;s LOCK for all objects
in the hierarchy.
</return>
</function>

<function name="gst_element_state_get_name">
<description>
Gets a string representing the given state.


</description>
<parameters>
<parameter name="state">
<parameter_description> a #GstState to get the name of.
</parameter_description>
</parameter>
</parameters>
<return> a string with the name of the state.
</return>
</function>

<function name="gst_bin_remove">
<description>
Removes the element from the bin, unparenting it as well.
Unparenting the element means that the element will be dereferenced,
so if the bin holds the only reference to the element, the element
will be freed in the process of removing it from the bin.  If you
want the element to still exist after removing, you need to call
gst_object_ref() before removing it from the bin.

If the element&apos;s pads are linked to other pads, the pads will be unlinked
before the element is removed from the bin.

MT safe.


</description>
<parameters>
<parameter name="bin">
<parameter_description> a #GstBin
</parameter_description>
</parameter>
<parameter name="element">
<parameter_description> the #GstElement to remove
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the element could be removed, FALSE if
the bin does not want to remove the element.
</return>
</function>

<function name="gst_query_parse_segment">
<description>
Parse a segment query answer. Any of @rate, @format, @start_value, and 
@stop_value may be NULL, which will cause this value to be omitted.

See gst_query_set_segment() for an explanation of the function arguments.

</description>
<parameters>
<parameter name="query">
<parameter_description> a #GstQuery
</parameter_description>
</parameter>
<parameter name="rate">
<parameter_description> the storage for the rate of the segment, or NULL
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> the storage for the #GstFormat of the values, or NULL
</parameter_description>
</parameter>
<parameter name="start_value">
<parameter_description> the storage for the start value, or NULL
</parameter_description>
</parameter>
<parameter name="stop_value">
<parameter_description> the storage for the stop value, or NULL
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_message_parse_clock_provide">
<description>
Extracts the clock and ready flag from the GstMessage.
The clock object returned remains valid until the message is freed.

MT safe.

</description>
<parameters>
<parameter name="message">
<parameter_description> A valid #GstMessage of type GST_MESSAGE_CLOCK_PROVIDE.
</parameter_description>
</parameter>
<parameter name="clock">
<parameter_description> A pointer to  hold a clock object.
</parameter_description>
</parameter>
<parameter name="ready">
<parameter_description> A pointer to hold the ready flag.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_video_format_has_alpha">
<description>
Returns: TRUE if @format has an alpha channel

</description>
<parameters>
<parameter name="format">
<parameter_description> a #GstVideoFormat
</parameter_description>
</parameter>
</parameters>
<return> TRUE if @format has an alpha channel
</return>
</function>

<function name="gst_debug_log_default">
<description>
The default logging handler used by GStreamer. Logging functions get called
whenever a macro like GST_DEBUG or similar is used. This function outputs the
message and additional info using the glib error handler.
You can add other handlers by using gst_debug_add_log_function().
And you can remove this handler by calling
gst_debug_remove_log_function(gst_debug_log_default);

</description>
<parameters>
<parameter name="category">
<parameter_description> category to log
</parameter_description>
</parameter>
<parameter name="level">
<parameter_description> level of the message
</parameter_description>
</parameter>
<parameter name="file">
<parameter_description> the file that emitted the message, usually the __FILE__ identifier
</parameter_description>
</parameter>
<parameter name="function">
<parameter_description> the function that emitted the message
</parameter_description>
</parameter>
<parameter name="line">
<parameter_description> the line from that the message was emitted, usually __LINE__
</parameter_description>
</parameter>
<parameter name="message">
<parameter_description> the actual message
</parameter_description>
</parameter>
<parameter name="object">
<parameter_description> the object this message relates to or NULL if none
</parameter_description>
</parameter>
<parameter name="unused">
<parameter_description> an unused variable, reserved for some user_data.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_ghost_pad_construct">
<description>
Finish initialization of a newly allocated ghost pad.

This function is most useful in language bindings and when subclassing
#GstGhostPad; plugin and application developers normally will not call this
function. Call this function directly after a call to g_object_new
(GST_TYPE_GHOST_PAD, &quot;direction&quot;, @dir, ..., NULL).


</description>
<parameters>
<parameter name="gpad">
<parameter_description> the newly allocated ghost pad
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the construction succeeds, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_rtsp_transport_get_manager">
<description>
Get the #GStreamer element that can handle the buffers transported over
@trans.

It is possible that there are several managers available, use @option to
selected one.

@manager will contain an element name or #NULL when no manager is
needed/available for @trans.


</description>
<parameters>
<parameter name="trans">
<parameter_description> a #GstRTSPTransMode
</parameter_description>
</parameter>
<parameter name="manager">
<parameter_description> location to hold the result
</parameter_description>
</parameter>
<parameter name="option">
<parameter_description> option index.
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK. 
</return>
</function>

<function name="gst_child_proxy_set_property">
<description>
Sets a single property using the GstChildProxy mechanism.

</description>
<parameters>
<parameter name="object">
<parameter_description> the parent object
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> name of the property to set
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> new #GValue for the property
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_alloc_buffer_and_set_caps">
<description>
In addition to the function gst_pad_alloc_buffer(), this function
automatically calls gst_pad_set_caps() when the caps of the
newly allocated buffer are different from the @pad caps.

After a renegotiation, the size of the new buffer returned in @buf could
be of the wrong size for the new format and must be unreffed an reallocated
in that case.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a source #GstPad
</parameter_description>
</parameter>
<parameter name="offset">
<parameter_description> the offset of the new buffer in the stream
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> the size of the new buffer
</parameter_description>
</parameter>
<parameter name="caps">
<parameter_description> the caps of the new buffer
</parameter_description>
</parameter>
<parameter name="buf">
<parameter_description> a newly allocated buffer
</parameter_description>
</parameter>
</parameters>
<return> a result code indicating success of the operation. Any
result code other than #GST_FLOW_OK is an error and @buf should
not be used.
An error can occur if the pad is not connected or when the downstream
peer elements cannot provide an acceptable buffer.

MT safe.
</return>
</function>

<function name="gst_alloc_trace_print_live">
<description>
Print the status of all registered alloc trace objects, ignoring those
without live objects.

</description>
<parameters>
</parameters>
<return></return>
</function>

<function name="gst_parse_context_new">
<description>
Allocates a parse context for use with gst_parse_launch_full() or
gst_parse_launchv_full().


</description>
<parameters>
</parameters>
<return> a newly-allocated parse context. Free with gst_parse_context_free()
when no longer needed.

Since: 0.10.20
</return>
</function>

<function name="gst_rtcp_packet_sdes_next_entry">
<description>
Move to the next SDES entry in the current item.


</description>
<parameters>
<parameter name="packet">
<parameter_description> a valid SDES #GstRTCPPacket
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if there was a next entry.
</return>
</function>

<function name="gst_data_queue_flush">
<description>
Flushes all the contents of the @queue. Any call to #gst_data_queue_pull and
#gst_data_queue_pop will be released.
MT safe.

</description>
<parameters>
<parameter name="queue">
<parameter_description> a #GstDataQueue.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_query_type_get_by_nick">
<description>
Get the query type registered with @nick.


</description>
<parameters>
<parameter name="nick">
<parameter_description> The nick of the query
</parameter_description>
</parameter>
</parameters>
<return> The query registered with @nick or #GST_QUERY_NONE
if the query was not registered.
</return>
</function>

<function name="gst_byte_reader_get_int24_le">
<description>
Read a signed 24 bit little endian integer into @val
and update the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #gint32 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_version_string">
<description>
This function returns a string that is useful for describing this version
of GStreamer to the outside world: user agent strings, logging, ...


</description>
<parameters>
</parameters>
<return> a newly allocated string describing this version of GStreamer.
</return>
</function>

<function name="gst_plugin_is_loaded">
<description>
queries if the plugin is loaded into memory


</description>
<parameters>
<parameter name="plugin">
<parameter_description> plugin to query
</parameter_description>
</parameter>
</parameters>
<return> TRUE is loaded, FALSE otherwise
</return>
</function>

<function name="gst_controller_set_interpolation_mode">
<description>
Sets the given interpolation mode on the given property.

&amp;lt;note&amp;gt;&amp;lt;para&amp;gt;User interpolation is not yet available and quadratic interpolation
is deprecated and maps to cubic interpolation.&amp;lt;/para&amp;gt;&amp;lt;/note&amp;gt;

Deprecated: Use #GstControlSource, for example #GstInterpolationControlSource
directly.


</description>
<parameters>
<parameter name="self">
<parameter_description> the controller object
</parameter_description>
</parameter>
<parameter name="property_name">
<parameter_description> the name of the property for which to change the interpolation
</parameter_description>
</parameter>
<parameter name="mode">
<parameter_description> interpolation mode
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the property is handled by the controller, %FALSE otherwise
</return>
</function>

<function name="gst_sdp_message_medias_len">
<description>
Get the number of media descriptions in @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
</parameters>
<return> the number of media descriptions in @msg.
</return>
</function>

<function name="gst_is_missing_plugin_message">
<description>
Checks whether @msg is a missing plugins message.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstMessage
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if @msg is a missing-plugins message, otherwise %FALSE.
</return>
</function>

<function name="gst_debug_remove_log_function">
<description>
Removes all registered instances of the given logging functions.


</description>
<parameters>
<parameter name="func">
<parameter_description> the log function to remove
</parameter_description>
</parameter>
</parameters>
<return> How many instances of the function were removed
</return>
</function>

<function name="gst_sdp_media_add_connection">
<description>
Add the given connection parameters to @media.


</description>
<parameters>
<parameter name="media">
<parameter_description> a #GstSDPMedia
</parameter_description>
</parameter>
<parameter name="nettype">
<parameter_description> the type of network. &quot;IN&quot; is defined to have the meaning
&quot;Internet&quot;.
</parameter_description>
</parameter>
<parameter name="addrtype">
<parameter_description> the type of address.
</parameter_description>
</parameter>
<parameter name="address">
<parameter_description> the address
</parameter_description>
</parameter>
<parameter name="ttl">
<parameter_description> the time to live of the address
</parameter_description>
</parameter>
<parameter name="addr_number">
<parameter_description> the number of layers
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPResult.
</return>
</function>

<function name="gst_caps_is_any">
<description>
Determines if @caps represents any media format.


</description>
<parameters>
<parameter name="caps">
<parameter_description> the #GstCaps to test
</parameter_description>
</parameter>
</parameters>
<return> TRUE if @caps represents any format.
</return>
</function>

<function name="gst_bin_find_unconnected_pad">
<description>
Recursively looks for elements with an unlinked pad of the given
direction within the specified bin and returns an unlinked pad
if one is found, or NULL otherwise. If a pad is found, the caller
owns a reference to it and should use gst_object_unref() on the
pad when it is not needed any longer.


</description>
<parameters>
<parameter name="bin">
<parameter_description> bin in which to look for elements with unlinked pads
</parameter_description>
</parameter>
<parameter name="direction">
<parameter_description> whether to look for an unlinked source or sink pad
</parameter_description>
</parameter>
</parameters>
<return> unlinked pad of the given direction, or NULL.

Since: 0.10.3

Deprecated: use gst_bin_find_unlinked_pad() instead.
</return>
</function>

<function name="gst_plugin_list_feature_filter">
<description>
Runs a filter against all plugin features of the plugins in the given
list and returns a GList with the results.
If the first flag is set, only the first match is
returned (as a list with a single object).


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GList of plugins to query
</parameter_description>
</parameter>
<parameter name="filter">
<parameter_description> the filter function to use
</parameter_description>
</parameter>
<parameter name="first">
<parameter_description> only return first match
</parameter_description>
</parameter>
<parameter name="user_data">
<parameter_description> user data passed to the filter function
</parameter_description>
</parameter>
</parameters>
<return> a GList of features, g_list_free after use.
</return>
</function>

<function name="gst_structure_to_string">
<description>
Converts @structure to a human-readable string representation.


</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
</parameters>
<return> a pointer to string allocated by g_malloc(). g_free() after
usage.
</return>
</function>

<function name="gst_base_transform_set_passthrough">
<description>
Set passthrough mode for this filter by default. This is mostly
useful for filters that do not care about negotiation.

Always TRUE for filters which don&apos;t implement either a transform
or transform_ip method.

MT safe.

</description>
<parameters>
<parameter name="trans">
<parameter_description> the #GstBaseTransform to set
</parameter_description>
</parameter>
<parameter name="passthrough">
<parameter_description> boolean indicating passthrough mode.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_base_rtp_audio_payload_set_frame_options">
<description>
Sets the options for frame based audio codecs.


</description>
<parameters>
<parameter name="basertpaudiopayload">
<parameter_description> a pointer to the element.
</parameter_description>
</parameter>
<parameter name="frame_duration">
<parameter_description> The duraction of an audio frame in milliseconds.
</parameter_description>
</parameter>
<parameter name="frame_size">
<parameter_description> The size of an audio frame in bytes.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_tag_merge_use_first">
<description>
This is a convenience function for the func argument of gst_tag_register().
It creates a copy of the first value from the list.

</description>
<parameters>
<parameter name="dest">
<parameter_description> uninitialized GValue to store result in
</parameter_description>
</parameter>
<parameter name="src">
<parameter_description> GValue to copy from
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_get_parent_element">
<description>
Gets the parent of @pad, cast to a #GstElement. If a @pad has no parent or
its parent is not an element, return NULL.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a pad
</parameter_description>
</parameter>
</parameters>
<return> The parent of the pad. The caller has a reference on the parent, so
unref when you&apos;re finished with it.

MT safe.
</return>
</function>

<function name="gst_value_subtract">
<description>
Subtracts @subtrahend from @minuend and stores the result in @dest.
Note that this means subtraction as in sets, not as in mathematics.


</description>
<parameters>
<parameter name="dest">
<parameter_description> the destination value for the result if the subtraction is not empty
</parameter_description>
</parameter>
<parameter name="minuend">
<parameter_description> the value to subtract from
</parameter_description>
</parameter>
<parameter name="subtrahend">
<parameter_description> the value to subtract
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the subtraction is not empty
</return>
</function>

<function name="gst_ring_buffer_set_sample">
<description>
Make sure that the next sample written to the device is
accounted for as being the @sample sample written to the
device. This value will be used in reporting the current
sample position of the ringbuffer.

This function will also clear the buffer with silence.

MT safe.

</description>
<parameters>
<parameter name="buf">
<parameter_description> the #GstRingBuffer to use
</parameter_description>
</parameter>
<parameter name="sample">
<parameter_description> the sample number to set
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_debug_is_active">
<description>
Checks if debugging output is activated.


</description>
<parameters>
</parameters>
<return> TRUE, if debugging is activated
</return>
</function>

<function name="gst_pad_link">
<description>
Links the source pad and the sink pad.


</description>
<parameters>
<parameter name="srcpad">
<parameter_description> the source #GstPad to link.
</parameter_description>
</parameter>
<parameter name="sinkpad">
<parameter_description> the sink #GstPad to link.
</parameter_description>
</parameter>
</parameters>
<return> A result code indicating if the connection worked or
what went wrong.

MT Safe.
</return>
</function>

<function name="gst_rtcp_packet_rr_set_ssrc">
<description>
Set the ssrc field of the RR @packet.

</description>
<parameters>
<parameter name="packet">
<parameter_description> a valid RR #GstRTCPPacket
</parameter_description>
</parameter>
<parameter name="ssrc">
<parameter_description> the SSRC to set
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_dp_packetizer_free">
<description>
Free the given packetizer.

</description>
<parameters>
<parameter name="packetizer">
<parameter_description> the #GstDPPacketizer to free.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_value_get_int_range_max">
<description>
Gets the maximum of the range specified by @value.


</description>
<parameters>
<parameter name="value">
<parameter_description> a GValue initialized to GST_TYPE_INT_RANGE
</parameter_description>
</parameter>
</parameters>
<return> the maxumum of the range
</return>
</function>

<function name="SECTION">
<description>
&amp;lt;refsect2&amp;gt;
&amp;lt;para&amp;gt;
This library contains some helper functions and includes the 
videosink and videofilter base classes.
&amp;lt;/para&amp;gt;
&amp;lt;/refsect2&amp;gt;

</description>
<parameters>
<parameter name="short_description">
<parameter_description> Support library for video operations
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_controller_unset_all">
<description>
Used to remove all time-stamped values of given controller-handled property

Deprecated: Use #GstControlSource, for example #GstInterpolationControlSource
directly.


</description>
<parameters>
<parameter name="self">
<parameter_description> the controller object which handles the properties
</parameter_description>
</parameter>
<parameter name="property_name">
<parameter_description> the name of the property to unset
</parameter_description>
</parameter>
</parameters>
<return> %FALSE if the values couldn&apos;t be unset (ex : properties not handled
by controller), %TRUE otherwise
Since: 0.10.5
</return>
</function>

<function name="gst_pad_get_fixed_caps_func">
<description>
A helper function you can use as a GetCaps function that
will return the currently negotiated caps or the padtemplate
when NULL.


</description>
<parameters>
<parameter name="pad">
<parameter_description> the pad to use
</parameter_description>
</parameter>
</parameters>
<return> The currently negotiated caps or the padtemplate.
</return>
</function>

<function name="gst_audio_set_channel_positions">
<description>
Adds a &quot;channel-positions&quot; field to the given #GstStructure,
which will represent the channel positions as given in the
provided #GstAudioChannelPosition array.

</description>
<parameters>
<parameter name="str">
<parameter_description> A #GstStructure to set channel positions on.
</parameter_description>
</parameter>
<parameter name="pos">
<parameter_description> an array of channel positions. The number of members
in this array should be equal to the (fixed!) number
of the &quot;channels&quot; field in the given #GstStructure.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_message_new_async_start">
<description>
This message is posted by elements when they start an ASYNC state change. 
@new_base_time is set to TRUE when the element lost its state when it was
PLAYING.


</description>
<parameters>
<parameter name="src">
<parameter_description> The object originating the message.
</parameter_description>
</parameter>
<parameter name="new_base_time">
<parameter_description> if a new base_time should be set on the element
</parameter_description>
</parameter>
</parameters>
<return> The new async_start message. 

MT safe.

Since: 0.10.13
</return>
</function>

<function name="gst_index_factory_create">
<description>
Create a new #GstIndex instance from the
given indexfactory.


</description>
<parameters>
<parameter name="factory">
<parameter_description> the factory used to create the instance
</parameter_description>
</parameter>
</parameters>
<return> A new #GstIndex instance.
</return>
</function>

<function name="gst_rtp_buffer_compare_seqnum">
<description>
Compare two sequence numbers, taking care of wraparounds. This function
Returns: a negative value if @seqnum1 is bigger than @seqnum2, 0 if they

</description>
<parameters>
<parameter name="seqnum1">
<parameter_description> a sequence number
</parameter_description>
</parameter>
<parameter name="seqnum2">
<parameter_description> a sequence number
</parameter_description>
</parameter>
</parameters>
<return> a negative value if @seqnum1 is bigger than @seqnum2, 0 if they
are equal or a positive value if @seqnum1 is smaller than @segnum2.

Since: 0.10.15
</return>
</function>

<function name="gst_plugin_get_name">
<description>
Get the short name of the plugin


</description>
<parameters>
<parameter name="plugin">
<parameter_description> plugin to get the name of
</parameter_description>
</parameter>
</parameters>
<return> the name of the plugin
</return>
</function>

<function name="gst_message_new_tag">
<description>
Create a new tag message. The message will take ownership of the tag list.
The message is posted by elements that discovered a new taglist.


</description>
<parameters>
<parameter name="src">
<parameter_description> The object originating the message.
</parameter_description>
</parameter>
<parameter name="tag_list">
<parameter_description> The tag list for the message.
</parameter_description>
</parameter>
</parameters>
<return> The new tag message.

MT safe.
</return>
</function>

<function name="GstMixerTrack">
<description>
Index of the mixer track, if available. Mixer track implementations
must set this at construct time. This can be used to discern between
multiple tracks with identical labels.

Since: 0.10.21

</description>
<parameters>
</parameters>
<return></return>
</function>

<function name="gst_task_stop">
<description>
Stops @task. This method merely schedules the task to stop and
will not wait for the task to have completely stopped. Use
gst_task_join() to stop and wait for completion.


</description>
<parameters>
<parameter name="task">
<parameter_description> The #GstTask to stop
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the task could be stopped.

MT safe.
</return>
</function>

<function name="gst_object_set_control_rate">
<description>
Change the control-rate for this @object. Audio processing #GstElement
objects will use this rate to sub-divide their processing loop and call
gst_object_sync_values() inbetween. The length of the processing segment
should be up to @control-rate nanoseconds.

The control-rate should not change if the element is in %GST_STATE_PAUSED or
%GST_STATE_PLAYING.

Since: 0.10.10

</description>
<parameters>
<parameter name="object">
<parameter_description> the object that has controlled properties
</parameter_description>
</parameter>
<parameter name="control_rate">
<parameter_description> the new control-rate in nanoseconds.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_value_set_fraction">
<description>
Sets @value to the fraction specified by @numerator over @denominator.
The fraction gets reduced to the smallest numerator and denominator,
and if necessary the sign is moved to the numerator.

</description>
<parameters>
<parameter name="value">
<parameter_description> a GValue initialized to #GST_TYPE_FRACTION
</parameter_description>
</parameter>
<parameter name="numerator">
<parameter_description> the numerator of the fraction
</parameter_description>
</parameter>
<parameter name="denominator">
<parameter_description> the denominator of the fraction
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtcp_packet_sdes_add_entry">
<description>
Add a new SDES entry to the current item in @packet.


</description>
<parameters>
<parameter name="packet">
<parameter_description> a valid SDES #GstRTCPPacket
</parameter_description>
</parameter>
<parameter name="type">
<parameter_description> the #GstRTCPSDESType of the SDES entry
</parameter_description>
</parameter>
<parameter name="len">
<parameter_description> the data length
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> the data
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the item could be added, %FALSE if the MTU has been
reached.
</return>
</function>

<function name="gst_base_sink_set_sync">
<description>
Configures @sink to synchronize on the clock or not. When
@sync is FALSE, incomming samples will be played as fast as
possible. If @sync is TRUE, the timestamps of the incomming
buffers will be used to schedule the exact render time of its
contents.

Since: 0.10.4

</description>
<parameters>
<parameter name="sink">
<parameter_description> the sink
</parameter_description>
</parameter>
<parameter name="sync">
<parameter_description> the new sync value.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_message_parse_buffering">
<description>
Extracts the buffering percent from the GstMessage. see also
gst_message_new_buffering().

Since: 0.10.11

MT safe.

</description>
<parameters>
<parameter name="message">
<parameter_description> A valid #GstMessage of type GST_MESSAGE_BUFFERING.
</parameter_description>
</parameter>
<parameter name="percent">
<parameter_description> Return location for the percent.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_clock_adjust_unlocked">
<description>
Converts the given @internal clock time to the external time, adjusting for the
rate and reference time set with gst_clock_set_calibration() and making sure
that the returned time is increasing. This function should be called with the
clock&apos;s OBJECT_LOCK held and is mainly used by clock subclasses.

This function is the reverse of gst_clock_unadjust_unlocked().


</description>
<parameters>
<parameter name="clock">
<parameter_description> a #GstClock to use
</parameter_description>
</parameter>
<parameter name="internal">
<parameter_description> a clock time
</parameter_description>
</parameter>
</parameters>
<return> the converted time of the clock.
</return>
</function>

<function name="gst_rtp_buffer_get_packet_len">
<description>
Return the total length of the packet in @buffer.


</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer
</parameter_description>
</parameter>
</parameters>
<return> The total length of the packet in @buffer.
</return>
</function>

<function name="gst_basertppayload_is_filled">
<description>
Check if the packet with @size and @duration would exceed the configure
maximum size.


</description>
<parameters>
<parameter name="payload">
<parameter_description> a #GstBaseRTPPayload
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> the size of the packet
</parameter_description>
</parameter>
<parameter name="duration">
<parameter_description> the duration of the packet
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the packet of @size and @duration would exceed the
configured MTU or max_ptime.
</return>
</function>

<function name="gst_structure_get_fourcc">
<description>
Sets the #GstFourcc pointed to by @value corresponding to the value of the
given field.  Caller is responsible for making sure the field exists
and has the correct type.

returns FALSE.

</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="fieldname">
<parameter_description> the name of a field
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> a pointer to a #GstFourcc to set
</parameter_description>
</parameter>
</parameters>
<return>FALSE.
</return>
</function>

<function name="gst_bin_add">
<description>
Adds the given element to the bin.  Sets the element&apos;s parent, and thus
takes ownership of the element. An element can only be added to one bin.

If the element&apos;s pads are linked to other pads, the pads will be unlinked
before the element is added to the bin.

MT safe.


</description>
<parameters>
<parameter name="bin">
<parameter_description> a #GstBin
</parameter_description>
</parameter>
<parameter name="element">
<parameter_description> the #GstElement to add
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the element could be added, FALSE if
the bin does not want to accept the element.
</return>
</function>

<function name="gst_message_new_buffering">
<description>
Create a new buffering message. This message can be posted by an element that
needs to buffer data before it can continue processing. @percent should be a
value between 0 and 100. A value of 100 means that the buffering completed.

When @percent is &amp;lt; 100 the application should PAUSE a PLAYING pipeline. When
@percent is 100, the application can set the pipeline (back) to PLAYING.
The application must be prepared to receive BUFFERING messages in the
PREROLLING state and may only set the pipeline to PLAYING after receiving a
message with @percent set to 100, which can happen after the pipeline
completed prerolling. 


</description>
<parameters>
<parameter name="src">
<parameter_description> The object originating the message.
</parameter_description>
</parameter>
<parameter name="percent">
<parameter_description> The buffering percent
</parameter_description>
</parameter>
</parameters>
<return> The new buffering message.

Since: 0.10.11

MT safe.
</return>
</function>

<function name="gst_mixer_get_volume">
<description>
Get the current volume(s) on the given track.

</description>
<parameters>
<parameter name="mixer">
<parameter_description> the #GstMixer (a #GstElement) that owns the track
</parameter_description>
</parameter>
<parameter name="track">
<parameter_description> the GstMixerTrack to get the volume from.
</parameter_description>
</parameter>
<parameter name="volumes">
<parameter_description> a pre-allocated array of integers (of size
track-&amp;gt;num_channels) to store the current volume
of each channel in the given track in.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_iterator_new">
<description>
Create a new iterator. This function is mainly used for objects
implementing the next/resync/free function to iterate a data structure.

For each item retrieved, the @item function is called with the lock
held. The @free function is called when the iterator is freed.


</description>
<parameters>
<parameter name="size">
<parameter_description> the size of the iterator structure
</parameter_description>
</parameter>
<parameter name="type">
<parameter_description> #GType of children
</parameter_description>
</parameter>
<parameter name="lock">
<parameter_description> pointer to a #GMutex.
</parameter_description>
</parameter>
<parameter name="master_cookie">
<parameter_description> pointer to a guint32 that is changed when the items in the
iterator changed.
</parameter_description>
</parameter>
<parameter name="next">
<parameter_description> function to get next item
</parameter_description>
</parameter>
<parameter name="item">
<parameter_description> function to call on each item retrieved
</parameter_description>
</parameter>
<parameter name="resync">
<parameter_description> function to resync the iterator
</parameter_description>
</parameter>
<parameter name="free">
<parameter_description> function to free the iterator
</parameter_description>
</parameter>
</parameters>
<return> the new #GstIterator.

MT safe.
</return>
</function>

<function name="gst_element_add_pad">
<description>
Adds a pad (link point) to @element. @pad&apos;s parent will be set to @element;
see gst_object_set_parent() for refcounting information.

Pads are not automatically activated so elements should perform the needed
steps to activate the pad in case this pad is added in the PAUSED or PLAYING
state. See gst_pad_set_active() for more information about activating pads.

The pad and the element should be unlocked when calling this function.

This function will emit the #GstElement::pad-added signal on the element.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement to add the pad to.
</parameter_description>
</parameter>
<parameter name="pad">
<parameter_description> the #GstPad to add to the element.
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the pad could be added. This function can fail when
a pad with the same name already existed or the pad already had another
parent.

MT safe.
</return>
</function>

<function name="gst_query_set_buffering_stats">
<description>
Configures the buffering stats values in @query.

Since: 0.10.20

</description>
<parameters>
<parameter name="query">
<parameter_description> A valid #GstQuery of type GST_QUERY_BUFFERING.
</parameter_description>
</parameter>
<parameter name="mode">
<parameter_description> a buffering mode 
</parameter_description>
</parameter>
<parameter name="avg_in">
<parameter_description> the average input rate
</parameter_description>
</parameter>
<parameter name="avg_out">
<parameter_description> the average output rate
</parameter_description>
</parameter>
<parameter name="buffering_left">
<parameter_description> amount of buffering time left
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_structure_set_parent_refcount">
<description>
Sets the parent_refcount field of #GstStructure. This field is used to
determine whether a structure is mutable or not. This function should only be
called by code implementing parent objects of #GstStructure, as described in
the MT Refcounting section of the design documents.

</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="refcount">
<parameter_description> a pointer to the parent&apos;s refcount
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_tag_list_get_string_index">
<description>
Gets the value that is at the given index for the given tag in the given
list.

The resulting string in @value will be in UTF-8 encoding and should be
freed by the caller using g_free when no longer needed.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList to get the tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
<parameter name="index">
<parameter_description> number of entry to read out
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> location for the result
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if a value was copied, FALSE if the tag didn&apos;t exist in the
given list.
</return>
</function>

<function name="gst_event_new_custom">
<description>
Create a new custom-typed event. This can be used for anything not
handled by other event-specific functions to pass an event to another
element.

Make sure to allocate an event type with the #GST_EVENT_MAKE_TYPE macro,
assigning a free number and filling in the correct direction and
serialization flags.

New custom events can also be created by subclassing the event type if
needed.


</description>
<parameters>
<parameter name="type">
<parameter_description> The type of the new event
</parameter_description>
</parameter>
<parameter name="structure">
<parameter_description> The structure for the event. The event will take ownership of
the structure.
</parameter_description>
</parameter>
</parameters>
<return> The new custom event.
</return>
</function>

<function name="gst_ring_buffer_activate">
<description>
Activate @buf to start or stop pulling data.


</description>
<parameters>
<parameter name="buf">
<parameter_description> the #GstRingBuffer to activate
</parameter_description>
</parameter>
<parameter name="active">
<parameter_description> the new mode
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the device could be activated in the requested mode,
FALSE on error.

Since: 0.10.22.

MT safe.
</return>
</function>

<function name="gst_param_spec_fraction">
<description>
This function creates a fraction GParamSpec for use by objects/elements
that want to expose properties of fraction type. This function is typically
used in connection with g_object_class_install_property() in a GObjects&apos;s
instance_init function.


</description>
<parameters>
<parameter name="name">
<parameter_description> canonical name of the property specified
</parameter_description>
</parameter>
<parameter name="nick">
<parameter_description> nick name for the property specified
</parameter_description>
</parameter>
<parameter name="blurb">
<parameter_description> description of the property specified
</parameter_description>
</parameter>
<parameter name="min_num">
<parameter_description> minimum value (fraction numerator)
</parameter_description>
</parameter>
<parameter name="min_denom">
<parameter_description> minimum value (fraction denominator)
</parameter_description>
</parameter>
<parameter name="max_num">
<parameter_description> maximum value (fraction numerator)
</parameter_description>
</parameter>
<parameter name="max_denom">
<parameter_description> maximum value (fraction denominator)
</parameter_description>
</parameter>
<parameter name="default_num">
<parameter_description> default value (fraction numerator)
</parameter_description>
</parameter>
<parameter name="default_denom">
<parameter_description> default value (fraction denominator)
</parameter_description>
</parameter>
<parameter name="flags">
<parameter_description> flags for the property specified
</parameter_description>
</parameter>
</parameters>
<return> a newly created parameter specification

Since: 0.10.14
</return>
</function>

<function name="gst_bin_iterate_sources">
<description>
Gets an iterator for all elements in the bin that have no sinkpads and have
the #GST_ELEMENT_IS_SINK flag unset.

Each element yielded by the iterator will have its refcount increased, so
unref after use.

MT safe.  Caller owns returned value.


</description>
<parameters>
<parameter name="bin">
<parameter_description> a #GstBin
</parameter_description>
</parameter>
</parameters>
<return> a #GstIterator of #GstElement, or NULL
</return>
</function>

<function name="gst_rtcp_packet_get_type">
<description>
Get the packet type of the packet pointed to by @packet.


</description>
<parameters>
<parameter name="packet">
<parameter_description> a valid #GstRTCPPacket
</parameter_description>
</parameter>
</parameters>
<return> The packet type.
</return>
</function>

<function name="gst_debug_get_default_threshold">
<description>
Returns: the default threshold level

</description>
<parameters>
</parameters>
<return> the default threshold level
</return>
</function>

<function name="gst_debug_print_stack_trace">
<description>
If GST_ENABLE_FUNC_INSTRUMENTATION is defined a stacktrace is available for
gstreamer code, which can be printed with this function.

</description>
<parameters>
</parameters>
<return></return>
</function>

<function name="gst_property_probe_needs_probe_name">
<description>
Same as gst_property_probe_needs_probe ().


</description>
<parameters>
<parameter name="probe">
<parameter_description> the #GstPropertyProbe object to which the given property belongs.
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> the name of the property to check.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the property needs a new probe, FALSE if not.
</return>
</function>

<function name="GstBaseRTPAudioPayload">
<description>
Minimum duration of the packet data in ns (can&apos;t go above MTU)

Since: 0.10.13

</description>
<parameters>
</parameters>
<return></return>
</function>

<function name="gst_pad_set_activatepush_function">
<description>
Sets the given activate_push function for the pad. An activate_push function
prepares the element for pushing. See XXX part-activation.txt for details.

</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad.
</parameter_description>
</parameter>
<parameter name="activatepush">
<parameter_description> the #GstPadActivateModeFunction to set.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_segment_to_stream_time">
<description>
Translate @position to stream time using the currently configured 
segment. The @position value must be between @segment start and
stop value. 

This function is typically used by elements that need to operate on
the stream time of the buffers it receives, such as effect plugins.
In those use cases, @position is typically the buffer timestamp or 
clock time that one wants to convert to the stream time.
The stream time is always between 0 and the total duration of the 
media stream. 


</description>
<parameters>
<parameter name="segment">
<parameter_description> a #GstSegment structure.
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> the format of the segment.
</parameter_description>
</parameter>
<parameter name="position">
<parameter_description> the position in the segment
</parameter_description>
</parameter>
</parameters>
<return> the position in stream_time or -1 when an invalid position
was given.
</return>
</function>

<function name="GstBus">
<description>
A message has been posted on the bus. This signal is emitted from a
GSource added to the mainloop. this signal will only be emitted when
there is a mainloop running.

</description>
<parameters>
<parameter name="bus">
<parameter_description> the object which received the signal
</parameter_description>
</parameter>
<parameter name="message">
<parameter_description> the message that has been posted asynchronously
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_dp_validate_header">
<description>
Validates the given packet header by checking the CRC checksum.


</description>
<parameters>
<parameter name="header_length">
<parameter_description> the length of the packet header
</parameter_description>
</parameter>
<parameter name="header">
<parameter_description> the byte array of the packet header
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the CRC matches, or no CRC checksum is present.
</return>
</function>

<function name="gst_missing_uri_source_installer_detail_new">
<description>
Returns: a newly-allocated detail string, or NULL on error. Free string

</description>
<parameters>
<parameter name="protocol">
<parameter_description> the URI protocol the missing source needs to implement,
e.g. &quot;http&quot; or &quot;mms&quot;
</parameter_description>
</parameter>
</parameters>
<return> a newly-allocated detail string, or NULL on error. Free string
with g_free() when not needed any longer.

Since: 0.10.15
</return>
</function>

<function name="gst_data_queue_limits_changed">
<description>
Inform the queue that the limits for the fullness check have changed and that
any blocking gst_data_queue_push() should be unblocked to recheck the limts.

</description>
<parameters>
<parameter name="queue">
<parameter_description> The #GstDataQueue 
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_adapter_push">
<description>
Adds the data from @buf to the data stored inside @adapter and takes
ownership of the buffer.

</description>
<parameters>
<parameter name="adapter">
<parameter_description> a #GstAdapter
</parameter_description>
</parameter>
<parameter name="buf">
<parameter_description> a #GstBuffer to add to queue in the adapter
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_message_new_duration">
<description>
Create a new duration message. This message is posted by elements that
know the duration of a stream in a specific format. This message
is received by bins and is used to calculate the total duration of a
pipeline. Elements may post a duration message with a duration of
GST_CLOCK_TIME_NONE to indicate that the duration has changed and the 
cached duration should be discarded. The new duration can then be 
retrieved via a query.


</description>
<parameters>
<parameter name="src">
<parameter_description> The object originating the message.
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> The format of the duration
</parameter_description>
</parameter>
<parameter name="duration">
<parameter_description> The new duration 
</parameter_description>
</parameter>
</parameters>
<return> The new duration message.

MT safe.
</return>
</function>

<function name="gst_event_parse_new_segment">
<description>
Get the update flag, rate, format, start, stop and position in the 
newsegment event. In general, gst_event_parse_new_segment_full() should
be used instead of this, to also retrieve the applied_rate value of the
segment. See gst_event_new_new_segment_full() for a full description 
of the newsegment event.

</description>
<parameters>
<parameter name="event">
<parameter_description> The event to query
</parameter_description>
</parameter>
<parameter name="update">
<parameter_description> A pointer to the update flag of the segment
</parameter_description>
</parameter>
<parameter name="rate">
<parameter_description> A pointer to the rate of the segment
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> A pointer to the format of the newsegment values
</parameter_description>
</parameter>
<parameter name="start">
<parameter_description> A pointer to store the start value in
</parameter_description>
</parameter>
<parameter name="stop">
<parameter_description> A pointer to store the stop value in
</parameter_description>
</parameter>
<parameter name="position">
<parameter_description> A pointer to store the stream time in
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_mini_object_new">
<description>
Creates a new mini-object of the desired type.

MT safe


</description>
<parameters>
<parameter name="type">
<parameter_description> the #GType of the mini-object to create
</parameter_description>
</parameter>
</parameters>
<return> the new mini-object.
</return>
</function>

<function name="gst_event_get_seqnum">
<description>
Retrieve the sequence number of a event.

Events have ever-incrementing sequence numbers, which may also be set
explicitly via gst_event_set_seqnum(). Sequence numbers are typically used to
indicate that a event corresponds to some other set of events or messages,
for example an EOS event corresponding to a SEEK event. It is considered good
practice to make this correspondence when possible, though it is not
required.

Note that events and messages share the same sequence number incrementor;
two events or messages will never not have the same sequence number unless
that correspondence was made explicitly.


</description>
<parameters>
<parameter name="event">
<parameter_description> A #GstEvent.
</parameter_description>
</parameter>
</parameters>
<return> The event&apos;s sequence number.

MT safe.

Since: 0.10.22
</return>
</function>

<function name="gst_sdp_message_add_zone">
<description>
Add time zone information to @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
<parameter name="adj_time">
<parameter_description> the NTP time that a time zone adjustment happens
</parameter_description>
</parameter>
<parameter name="typed_time">
<parameter_description> the offset from the time when the session was first scheduled
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPResult.
</return>
</function>

<function name="gst_preset_load_preset">
<description>
Load the given preset.


</description>
<parameters>
<parameter name="preset">
<parameter_description> a #GObject that implements #GstPreset
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> preset name to load
</parameter_description>
</parameter>
</parameters>
<return> %TRUE for success, %FALSE if e.g. there is no preset with that @name

Since: 0.10.20
</return>
</function>

<function name="gst_riff_parse_strf_auds">
<description>
Parses an audio stream´s strf structure plus optionally some
extradata from input data. This function takes ownership of @buf.
use.


</description>
<parameters>
<parameter name="element">
<parameter_description> caller element (used for debugging/error).
</parameter_description>
</parameter>
<parameter name="buf">
<parameter_description> input data to be used for parsing, stripped from header.
</parameter_description>
</parameter>
<parameter name="strf">
<parameter_description> a pointer (returned by this function) to a filled-in
strf/auds structure. Caller should free it.
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> a pointer (returned by this function) to a buffer
containing extradata for this particular stream (e.g.
codec initialization data).
</parameter_description>
</parameter>
</parameters>
<return> TRUE if parsing succeeded, otherwise FALSE. The stream
should be skipped on error, but it is not fatal.
</return>
</function>

<function name="GstPadTemplate">
<description>
The capabilities of the pad described by the pad template.

Since: 0.10.21

</description>
<parameters>
</parameters>
<return></return>
</function>

<function name="gst_structure_new_valist">
<description>
Creates a new #GstStructure with the given @name.  Structure fields
are set according to the varargs in a manner similar to
gst_structure_new().

See gst_structure_set_name() for constraints on the @name parameter.


</description>
<parameters>
<parameter name="name">
<parameter_description> name of new structure
</parameter_description>
</parameter>
<parameter name="firstfield">
<parameter_description> name of first field to set
</parameter_description>
</parameter>
<parameter name="varargs">
<parameter_description> variable argument list
</parameter_description>
</parameter>
</parameters>
<return> a new #GstStructure
</return>
</function>

<function name="gst_util_get_timestamp">
<description>
Get a timestamp as GstClockTime to be used for interval meassurements.
The timestamp should not be interpreted in any other way.


</description>
<parameters>
</parameters>
<return> the timestamp

Since: 0.10.16
</return>
</function>

<function name="gst_byte_reader_peek_uint16_be">
<description>
Read a signed 16 bit big endian integer into @val
but keep the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #guint16 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_mixer_list_tracks">
<description>
Returns: A #GList consisting of zero or more #GstMixerTracks.

</description>
<parameters>
<parameter name="mixer">
<parameter_description> the #GstMixer (a #GstElement) to get the tracks from.
</parameter_description>
</parameter>
</parameters>
<return> A #GList consisting of zero or more #GstMixerTracks.
</return>
</function>

<function name="gst_tag_to_id3_tag">
<description>
Looks up the ID3v2 tag for a GStreamer tag.


</description>
<parameters>
<parameter name="gst_tag">
<parameter_description> GStreamer tag to convert to vorbiscomment tag
</parameter_description>
</parameter>
</parameters>
<return> The corresponding ID3v2 tag or NULL if none exists.
</return>
</function>

<function name="gst_byte_reader_get_float32_le">
<description>
Read a 32 bit little endian integer into @val
and update the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #gfloat to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_base_sink_do_preroll">
<description>
If the @sink spawns its own thread for pulling buffers from upstream it
should call this method after it has pulled a buffer. If the element needed
to preroll, this function will perform the preroll and will then block
until the element state is changed.

This function should be called with the PREROLL_LOCK held.

Since 0.10.22


</description>
<parameters>
<parameter name="sink">
<parameter_description> the sink
</parameter_description>
</parameter>
<parameter name="obj">
<parameter_description> the object that caused the preroll
</parameter_description>
</parameter>
</parameters>
<return> #GST_FLOW_OK if the preroll completed and processing can
continue. Any other return value should be returned from the render vmethod.
</return>
</function>

<function name="gst_sdp_media_get_bandwidth">
<description>
Get the bandwidth at position @idx in @media.


</description>
<parameters>
<parameter name="media">
<parameter_description> a #GstSDPMedia
</parameter_description>
</parameter>
<parameter name="idx">
<parameter_description> an index
</parameter_description>
</parameter>
</parameters>
<return> the #GstSDPBandwidth at position @idx.
</return>
</function>

<function name="gst_uri_construct">
<description>
Constructs a URI for a given valid protocol and location.


</description>
<parameters>
<parameter name="protocol">
<parameter_description> Protocol for URI
</parameter_description>
</parameter>
<parameter name="location">
<parameter_description> Location for URI
</parameter_description>
</parameter>
</parameters>
<return> a new string for this URI. Returns NULL if the given URI protocol
is not valid, or the given location is NULL.
</return>
</function>

<function name="gst_pipeline_new">
<description>
Create a new pipeline with the given name.


</description>
<parameters>
<parameter name="name">
<parameter_description> name of new pipeline
</parameter_description>
</parameter>
</parameters>
<return> newly created GstPipeline

MT safe.
</return>
</function>

<function name="gst_buffer_straw_start_pipeline">
<description>
Sets up a pipeline for buffer sucking. This will allow you to call
gst_buffer_straw_get_buffer() to access buffers as they pass over @pad.

This function is normally used in unit tests that want to verify that a
particular element is outputting correct buffers. For example, you would make
a pipeline via gst_parse_launch(), pull out the pad you want to monitor, then
call gst_buffer_straw_get_buffer() to get the buffers that pass through @pad.
The pipeline will block until you have sucked off the buffers.

This function will set the state of @bin to PLAYING; to clean up, be sure to
call gst_buffer_straw_stop_pipeline().

Note that you may not start two buffer straws at the same time. This function
is intended for unit tests, not general API use. In fact it calls fail_if
from libcheck, so you cannot use it outside unit tests.

</description>
<parameters>
<parameter name="bin">
<parameter_description> the pipeline to run
</parameter_description>
</parameter>
<parameter name="pad">
<parameter_description> a pad on an element in @bin
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_registry_get_path_list">
<description>
Get the list of paths for the given registry.


</description>
<parameters>
<parameter name="registry">
<parameter_description> the registry to get the pathlist of
</parameter_description>
</parameter>
</parameters>
<return> A Glist of paths as strings. g_list_free after use.

MT safe.
</return>
</function>

<function name="gst_mixer_message_parse_mute_toggled">
<description>
Extracts the contents of a mute-toggled bus message. Reads
the GstMixerTrack that has changed, and the new value of the mute
flag.

The GstMixerTrack remains valid until the message is freed.

Since: 0.10.14

</description>
<parameters>
<parameter name="message">
<parameter_description> A mute-toggled change notification message.
</parameter_description>
</parameter>
<parameter name="track">
<parameter_description> Pointer to hold a GstMixerTrack object, or NULL.
</parameter_description>
</parameter>
<parameter name="mute">
<parameter_description> A pointer to a gboolean variable, or NULL.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_structure_remove_fields">
<description>
Removes the fields with the given names. If a field does not exist, the
argument is ignored.

</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="fieldname">
<parameter_description> the name of the field to remove
</parameter_description>
</parameter>
<parameter name="Varargs">
<parameter_description> NULL-terminated list of more fieldnames to remove
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_tag_list_get_int">
<description>
Copies the contents for the given tag into the value, merging multiple values
into one if multiple values are associated with the tag.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList to get the tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> location for the result
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if a value was copied, FALSE if the tag didn&apos;t exist in the
given list.
</return>
</function>

<function name="gst_parse_launchv_full">
<description>
Create a new element based on command line syntax.
@error will contain an error message if an erroneous pipeline is specified.
An error does not mean that the pipeline could not be constructed.


</description>
<parameters>
<parameter name="argv">
<parameter_description> null-terminated array of arguments
</parameter_description>
</parameter>
<parameter name="context">
<parameter_description> a parse context allocated with gst_parse_context_new(), or %NULL
</parameter_description>
</parameter>
<parameter name="flags">
<parameter_description> parsing options, or #GST_PARSE_FLAG_NONE
</parameter_description>
</parameter>
<parameter name="error">
<parameter_description> pointer to a #GError (which must be initialised to %NULL)
</parameter_description>
</parameter>
</parameters>
<return> a new element on success; on failure, either %NULL or a
partially-constructed bin or element will be returned and @error will be set
(unless you passed #GST_PARSE_FLAG_FATAL_ERRORS in @flags, then %NULL will
always be returned on failure)

Since: 0.10.20
</return>
</function>

<function name="gst_rtcp_packet_remove">
<description>
Removes the packet pointed to by @packet and moves pointer to the next one


</description>
<parameters>
<parameter name="packet">
<parameter_description> a #GstRTCPPacket
</parameter_description>
</parameter>
</parameters>
<return> TRUE if @packet is pointing to a valid packet after calling this
function.
</return>
</function>

<function name="gst_pipeline_get_auto_flush_bus">
<description>
Check if @pipeline will automatically flush messages when going to
the NULL state.


</description>
<parameters>
<parameter name="pipeline">
<parameter_description> a #GstPipeline
</parameter_description>
</parameter>
</parameters>
<return> whether the pipeline will automatically flush its bus when
going from READY to NULL state or not.

MT safe.

Since: 0.10.4
</return>
</function>

<function name="gst_preset_set_meta">
<description>
Sets a new @value for an existing meta data item or adds a new item. Meta
data @tag names can be something like e.g. &quot;comment&quot;. Supplying %NULL for the
@value will unset an existing value.


</description>
<parameters>
<parameter name="preset">
<parameter_description> a #GObject that implements #GstPreset
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> preset name
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> meta data item name
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> new value
</parameter_description>
</parameter>
</parameters>
<return> %TRUE for success, %FALSE if e.g. there is no preset with that @name

Since: 0.10.20
</return>
</function>

<function name="gst_pad_add_data_probe">
<description>
Adds a &quot;data probe&quot; to a pad. This function will be called whenever data
passes through a pad. In this case data means both events and buffers. The
probe will be called with the data as an argument, meaning @handler should
have the same callback signature as the #GstPad::have-data signal.
Note that the data will have a reference count greater than 1, so it will
be immutable -- you must not change it.

For source pads, the probe will be called after the blocking function, if any
(see gst_pad_set_blocked_async()), but before looking up the peer to chain
to. For sink pads, the probe function will be called before configuring the
sink with new caps, if any, and before calling the pad&apos;s chain function.

Your data probe should return TRUE to let the data continue to flow, or FALSE
to drop it. Dropping data is rarely useful, but occasionally comes in handy
with events.

Although probes are implemented internally by connecting @handler to the
have-data signal on the pad, if you want to remove a probe it is insufficient
to only call g_signal_handler_disconnect on the returned handler id. To
remove a probe, use the appropriate function, such as
gst_pad_remove_data_probe().


</description>
<parameters>
<parameter name="pad">
<parameter_description> pad to add the data probe handler to
</parameter_description>
</parameter>
<parameter name="handler">
<parameter_description> function to call when data is passed over pad
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> data to pass along with the handler
</parameter_description>
</parameter>
</parameters>
<return> The handler id.
</return>
</function>

<function name="gst_byte_reader_get_int64_le">
<description>
Read a signed 64 bit little endian integer into @val
and update the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #gint64 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_rtp_buffer_set_extension_data">
<description>
Set the extension bit of the rtp buffer and fill in the @bits and @length of the
extension header. It will refuse to set the extension data if the buffer is not
large enough.


</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer
</parameter_description>
</parameter>
<parameter name="bits">
<parameter_description> the bits specific for the extension
</parameter_description>
</parameter>
<parameter name="length">
<parameter_description> the length that counts the number of 32-bit words in
the extension, excluding the extension header ( therefore zero is a valid length)
</parameter_description>
</parameter>
</parameters>
<return> True if done.

Since : 0.10.18
</return>
</function>

<function name="gst_caps_append_structure">
<description>
Appends @structure to @caps.  The structure is not copied; @caps
becomes the owner of @structure.

</description>
<parameters>
<parameter name="caps">
<parameter_description> the #GstCaps that will be appended to
</parameter_description>
</parameter>
<parameter name="structure">
<parameter_description> the #GstStructure to append
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_init_get_option_group">
<description>
Returns: a pointer to GStreamer&apos;s option group.

</description>
<parameters>
</parameters>
<return> a pointer to GStreamer&apos;s option group.
</return>
</function>

<function name="gst_data_queue_get_level">
<description>
Get the current level of the queue.

</description>
<parameters>
<parameter name="queue">
<parameter_description> The #GstDataQueue
</parameter_description>
</parameter>
<parameter name="level">
<parameter_description> the location to store the result
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_bus_set_flushing">
<description>
If @flushing, flush out and unref any messages queued in the bus. Releases
references to the message origin objects. Will flush future messages until
gst_bus_set_flushing() sets @flushing to #FALSE.

MT safe.

</description>
<parameters>
<parameter name="bus">
<parameter_description> a #GstBus
</parameter_description>
</parameter>
<parameter name="flushing">
<parameter_description> whether or not to flush the bus
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_structure_fixate_field_boolean">
<description>
Fixates a #GstStructure by changing the given @field_name field to the given
@target boolean if that field is not fixed yet.


</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="field_name">
<parameter_description> a field in @structure
</parameter_description>
</parameter>
<parameter name="target">
<parameter_description> the target value of the fixation
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the structure could be fixated
</return>
</function>

<function name="gst_event_parse_seek">
<description>
Parses a seek @event and stores the results in the given result locations.

</description>
<parameters>
<parameter name="event">
<parameter_description> a seek event
</parameter_description>
</parameter>
<parameter name="rate">
<parameter_description> result location for the rate
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> result location for the stream format
</parameter_description>
</parameter>
<parameter name="flags">
<parameter_description>  result location for the #GstSeekFlags
</parameter_description>
</parameter>
<parameter name="start_type">
<parameter_description> result location for the #GstSeekType of the start position
</parameter_description>
</parameter>
<parameter name="start">
<parameter_description> result location for the start postion expressed in @format
</parameter_description>
</parameter>
<parameter name="stop_type">
<parameter_description>  result location for the #GstSeekType of the stop position
</parameter_description>
</parameter>
<parameter name="stop">
<parameter_description> result location for the stop postion expressed in @format
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_clock_id_get_time">
<description>
Get the time of the clock ID


</description>
<parameters>
<parameter name="id">
<parameter_description> The #GstClockID to query
</parameter_description>
</parameter>
</parameters>
<return> the time of the given clock id.

MT safe.
</return>
</function>

<function name="gst_tag_list_get_int64">
<description>
Copies the contents for the given tag into the value, merging multiple values
into one if multiple values are associated with the tag.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList to get the tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> location for the result
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if a value was copied, FALSE if the tag didn&apos;t exist in the
given list.
</return>
</function>

<function name="gst_pad_alloc_buffer">
<description>
Allocates a new, empty buffer optimized to push to pad @pad.  This
function only works if @pad is a source pad and has a peer.

A new, empty #GstBuffer will be put in the @buf argument.
You need to check the caps of the buffer after performing this
function and renegotiate to the format if needed. If the caps changed, it is
possible that the buffer returned in @buf is not of the right size for the
new format, @buf needs to be unreffed and reallocated if this is the case.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a source #GstPad
</parameter_description>
</parameter>
<parameter name="offset">
<parameter_description> the offset of the new buffer in the stream
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> the size of the new buffer
</parameter_description>
</parameter>
<parameter name="caps">
<parameter_description> the caps of the new buffer
</parameter_description>
</parameter>
<parameter name="buf">
<parameter_description> a newly allocated buffer
</parameter_description>
</parameter>
</parameters>
<return> a result code indicating success of the operation. Any
result code other than #GST_FLOW_OK is an error and @buf should
not be used.
An error can occur if the pad is not connected or when the downstream
peer elements cannot provide an acceptable buffer.

MT safe.
</return>
</function>

<function name="gst_event_new_qos">
<description>
Allocate a new qos event with the given values.
The QOS event is generated in an element that wants an upstream
element to either reduce or increase its rate because of
high/low CPU load or other resource usage such as network performance.
Typically sinks generate these events for each buffer they receive.

@proportion indicates the real-time performance of the streaming in the
element that generated the QoS event (usually the sink). The value is
generally computed based on more long term statistics about the streams
timestamps compared to the clock.
A value &amp;lt; 1.0 indicates that the upstream element is producing data faster
than real-time. A value &amp;gt; 1.0 indicates that the upstream element is not
producing data fast enough. 1.0 is the ideal @proportion value. The
proportion value can safely be used to lower or increase the quality of
the element.

@diff is the difference against the clock in running time of the last
buffer that caused the element to generate the QOS event. A negative value
means that the buffer with @timestamp arrived in time. A positive value
indicates how late the buffer with @timestamp was.

@timestamp is the timestamp of the last buffer that cause the element
to generate the QOS event. It is expressed in running time and thus an ever
increasing value.

The upstream element can use the @diff and @timestamp values to decide
whether to process more buffers. For possitive @diff, all buffers with
timestamp &amp;lt;= @timestamp + @diff will certainly arrive late in the sink
as well. A (negative) @diff value so that @timestamp + @diff would yield a
result smaller than 0 is not allowed.

The application can use general event probes to intercept the QoS
event and implement custom application specific QoS handling.


</description>
<parameters>
<parameter name="proportion">
<parameter_description> the proportion of the qos message
</parameter_description>
</parameter>
<parameter name="diff">
<parameter_description> The time difference of the last Clock sync
</parameter_description>
</parameter>
<parameter name="timestamp">
<parameter_description> The timestamp of the buffer
</parameter_description>
</parameter>
</parameters>
<return> A new QOS event.
</return>
</function>

<function name="GstColorBalance">
<description>
Fired when the value of the indicated channel has changed.

</description>
<parameters>
<parameter name="colorbalance">
<parameter_description> The GstColorBalance instance
</parameter_description>
</parameter>
<parameter name="channel">
<parameter_description> The #GstColorBalanceChannel
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> The new value
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_sdp_message_get_information">
<description>
Get the information in @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPResult.
</return>
</function>

<function name="gst_base_sink_set_render_delay">
<description>
Set the render delay in @sink to @delay. The render delay is the time 
between actual rendering of a buffer and its synchronisation time. Some
devices might delay media rendering which can be compensated for with this
function. 

After calling this function, this sink will report additional latency and
other sinks will adjust their latency to delay the rendering of their media.

This function is usually called by subclasses.

Since: 0.10.21

</description>
<parameters>
<parameter name="sink">
<parameter_description> a #GstBaseSink
</parameter_description>
</parameter>
<parameter name="delay">
<parameter_description> the new delay
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_value_get_structure">
<description>
Gets the contents of @value.


</description>
<parameters>
<parameter name="value">
<parameter_description> a GValue initialized to GST_TYPE_STRUCTURE
</parameter_description>
</parameter>
</parameters>
<return> the contents of @value

Since: 0.10.15
</return>
</function>

<function name="gst_rtp_buffer_get_payload">
<description>
Get a pointer to the payload data in @buffer. This pointer is valid as long
as a reference to @buffer is held.


</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer
</parameter_description>
</parameter>
</parameters>
<return> A pointer to the payload data in @buffer.
</return>
</function>

<function name="gst_sdp_media_set_port_info">
<description>
Set the port information in @media.


</description>
<parameters>
<parameter name="media">
<parameter_description> a #GstSDPMedia
</parameter_description>
</parameter>
<parameter name="port">
<parameter_description> the port number
</parameter_description>
</parameter>
<parameter name="num_ports">
<parameter_description> the number of ports
</parameter_description>
</parameter>
</parameters>
<return> #GST_SDP_OK.
</return>
</function>

<function name="gst_plugin_find_feature_by_name">
<description>
Find a feature of the given name in the given plugin.


</description>
<parameters>
<parameter name="plugin">
<parameter_description> plugin to get the feature from
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> The name of the feature to find
</parameter_description>
</parameter>
</parameters>
<return> a GstPluginFeature or NULL if the feature was not found.
</return>
</function>

<function name="gst_ghost_pad_new_no_target">
<description>
Create a new ghostpad without a target with the given direction.
A target can be set on the ghostpad later with the
gst_ghost_pad_set_target() function.

The created ghostpad will not have a padtemplate.


</description>
<parameters>
<parameter name="name">
<parameter_description> the name of the new pad, or NULL to assign a default name.
</parameter_description>
</parameter>
<parameter name="dir">
<parameter_description> the direction of the ghostpad
</parameter_description>
</parameter>
</parameters>
<return> a new #GstPad, or NULL in case of an error.
</return>
</function>

<function name="gst_mixer_message_parse_options_list_changed">
<description>
Extracts the GstMixerOptions whose value list has changed from an
options-list-changed bus notification message.

The options object returned remains valid until the message is freed. You
do not need to unref it.

Since: 0.10.18

</description>
<parameters>
<parameter name="message">
<parameter_description> A volume-changed change notification message.
</parameter_description>
</parameter>
<parameter name="options">
<parameter_description> Pointer to hold a GstMixerOptions object, or NULL.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_fft_f32_fft">
<description>
This performs the FFT on @timedata and puts the result in @freqdata.

@timedata must have as many samples as specified with the @len parameter while
allocating the #GstFFTF32 instance with gst_fft_f32_new().

@freqdata must be large enough to hold @len/2 + 1 #GstFFTF32Complex frequency
domain samples.


</description>
<parameters>
<parameter name="self">
<parameter_description> #GstFFTF32 instance for this call
</parameter_description>
</parameter>
<parameter name="timedata">
<parameter_description> Buffer of the samples in the time domain
</parameter_description>
</parameter>
<parameter name="freqdata">
<parameter_description> Target buffer for the samples in the frequency domain
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pb_utils_get_decoder_description">
<description>
Returns: a newly-allocated description string, or NULL on error. Free

</description>
<parameters>
<parameter name="caps">
<parameter_description> the (fixed) #GstCaps for which an decoder description is needed
</parameter_description>
</parameter>
</parameters>
<return> a newly-allocated description string, or NULL on error. Free
string with g_free() when not needed any longer.
</return>
</function>

<function name="gst_debug_category_get_threshold">
<description>
Returns: the #GstDebugLevel that is used as threshold.

</description>
<parameters>
<parameter name="category">
<parameter_description> a #GstDebugCategory to get threshold of.
</parameter_description>
</parameter>
</parameters>
<return> the #GstDebugLevel that is used as threshold.
</return>
</function>

<function name="gst_base_rtp_audio_payload_push">
<description>
Create an RTP buffer and store @payload_len bytes of @data as the
payload. Set the timestamp on the new buffer to @timestamp before pushing
the buffer downstream.


</description>
<parameters>
<parameter name="baseaudiopayload">
<parameter_description> a #GstBaseRTPPayload
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> data to set as payload
</parameter_description>
</parameter>
<parameter name="payload_len">
<parameter_description> length of payload
</parameter_description>
</parameter>
<parameter name="timestamp">
<parameter_description> a #GstClockTime
</parameter_description>
</parameter>
</parameters>
<return> a #GstFlowReturn

Since: 0.10.13
</return>
</function>

<function name="gst_byte_reader_peek_int32_le">
<description>
Read a signed 32 bit little endian integer into @val
but keep the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #gint32 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_ring_buffer_open_device">
<description>
Open the audio device associated with the ring buffer. Does not perform any
setup on the device. You must open the device before acquiring the ring
buffer.


</description>
<parameters>
<parameter name="buf">
<parameter_description> the #GstRingBuffer
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the device could be opened, FALSE on error.

MT safe.
</return>
</function>

<function name="gst_rtcp_packet_sr_get_sender_info">
<description>
Parse the SR sender info and store the values.

</description>
<parameters>
<parameter name="packet">
<parameter_description> a valid SR #GstRTCPPacket
</parameter_description>
</parameter>
<parameter name="ssrc">
<parameter_description> result SSRC
</parameter_description>
</parameter>
<parameter name="ntptime">
<parameter_description> result NTP time
</parameter_description>
</parameter>
<parameter name="rtptime">
<parameter_description> result RTP time
</parameter_description>
</parameter>
<parameter name="packet_count">
<parameter_description> result packet count
</parameter_description>
</parameter>
<parameter name="octet_count">
<parameter_description> result octect count
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_child_proxy_get_valist">
<description>
Gets properties of the parent object and its children.

</description>
<parameters>
<parameter name="object">
<parameter_description> the object to query
</parameter_description>
</parameter>
<parameter name="first_property_name">
<parameter_description> name of the first property to get
</parameter_description>
</parameter>
<parameter name="var_args">
<parameter_description> return location for the first property, followed optionally by more name/return location pairs, followed by NULL
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_structure_set_name">
<description>
Sets the name of the structure to the given @name.  The string
provided is copied before being used. It must not be empty, start with a
letter and can be followed by letters, numbers and any of &quot;/-_.:&quot;.

</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> the new name of the structure
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_ring_buffer_debug_spec_caps">
<description>
Print debug info about the parsed caps in @spec to the debug log.

</description>
<parameters>
<parameter name="spec">
<parameter_description> the spec to debug
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_element_sync_state_with_parent">
<description>
Tries to change the state of the element to the same as its parent.
If this function returns FALSE, the state of element is undefined.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement.
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if the element&apos;s state could be synced to the parent&apos;s state.

MT safe.
</return>
</function>

<function name="gst_value_get_fourcc">
<description>
Gets the #guint32 fourcc contained in @value.


</description>
<parameters>
<parameter name="value">
<parameter_description> a GValue initialized to #GST_TYPE_FOURCC
</parameter_description>
</parameter>
</parameters>
<return> the #guint32 fourcc contained in @value.
</return>
</function>

<function name="gst_rtsp_connection_close">
<description>
Close the connected @conn.


</description>
<parameters>
<parameter name="conn">
<parameter_description> a #GstRTSPConnection
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK on success.
</return>
</function>

<function name="gst_event_parse_qos">
<description>
Get the proportion, diff and timestamp in the qos event. See
gst_event_new_qos() for more information about the different QoS values.

</description>
<parameters>
<parameter name="event">
<parameter_description> The event to query
</parameter_description>
</parameter>
<parameter name="proportion">
<parameter_description> A pointer to store the proportion in
</parameter_description>
</parameter>
<parameter name="diff">
<parameter_description> A pointer to store the diff in
</parameter_description>
</parameter>
<parameter name="timestamp">
<parameter_description> A pointer to store the timestamp in
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_property_probe_probe_property_name">
<description>
Runs a probe on the property specified by %name.

</description>
<parameters>
<parameter name="probe">
<parameter_description> the #GstPropertyProbe to check.
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> name of the property.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_video_format_get_component_height">
<description>
Calculates the height of the component.  See
@gst_video_format_get_row_stride for a description
of the component index.

Since: 0.10.16


</description>
<parameters>
<parameter name="format">
<parameter_description> a #GstVideoFormat
</parameter_description>
</parameter>
<parameter name="component">
<parameter_description> the component index
</parameter_description>
</parameter>
<parameter name="height">
<parameter_description> the height of video
</parameter_description>
</parameter>
</parameters>
<return> height of component @component
</return>
</function>

<function name="gst_rtp_buffer_get_seq">
<description>
Get the sequence number of the RTP packet in @buffer.


</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer
</parameter_description>
</parameter>
</parameters>
<return> The sequence number in host order.
</return>
</function>

<function name="gst_segment_copy">
<description>
Create a copy of given @segment.


</description>
<parameters>
<parameter name="segment">
<parameter_description> a #GstSegment
</parameter_description>
</parameter>
</parameters>
<return> a new #GstSegment, free with gst_segment_free().

Since: 0.10.20
</return>
</function>

<function name="gst_trace_text_flush">
<description>
Flush any pending trace entries in @trace to the trace file, 
formatted as a text line with timestamp and sequence numbers.
@trace can be NULL in which case the default #GstTrace will be
flushed.

</description>
<parameters>
<parameter name="trace">
<parameter_description> the #GstTrace to flush.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtsp_connection_clear_auth_params">
<description>
Clear the list of authentication directives stored in @conn.

Since: 0.10.20

</description>
<parameters>
<parameter name="conn">
<parameter_description> a #GstRTSPConnection
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtsp_status_as_text">
<description>
Convert @code to a string.


</description>
<parameters>
<parameter name="code">
<parameter_description> a #GstRTSPStatusCode
</parameter_description>
</parameter>
</parameters>
<return> a string representation of @code.
</return>
</function>

<function name="gst_tag_setter_reset_tags">
<description>
Reset the internal taglist. Elements should call this from within the
state-change handler.

Since: 0.10.22

</description>
<parameters>
<parameter name="setter">
<parameter_description> a #GstTagSetter
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtcp_packet_sdes_first_item">
<description>
Move to the first SDES item in @packet.


</description>
<parameters>
<parameter name="packet">
<parameter_description> a valid SDES #GstRTCPPacket
</parameter_description>
</parameter>
</parameters>
<return> TRUE if there was a first item.
</return>
</function>

<function name="gst_bus_timed_pop">
<description>
Get a message from the bus, waiting up to the specified timeout.

If @timeout is 0, this function behaves like gst_bus_pop(). If @timeout is
#GST_CLOCK_TIME_NONE, this function will block forever until a message was
posted on the bus.


</description>
<parameters>
<parameter name="bus">
<parameter_description> a #GstBus to pop
</parameter_description>
</parameter>
<parameter name="timeout">
<parameter_description> a timeout
</parameter_description>
</parameter>
</parameters>
<return> The #GstMessage that is on the bus after the specified timeout
or NULL if the bus is empty after the timeout expired.
The message is taken from the bus and needs to be unreffed with
gst_message_unref() after usage.

MT safe.

Since: 0.10.12
</return>
</function>

<function name="gst_structure_map_in_place">
<description>
Calls the provided function once for each field in the #GstStructure. In
contrast to gst_structure_foreach(), the function may modify but not delete the
fields. The structure must be mutable.


</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="func">
<parameter_description> a function to call for each field
</parameter_description>
</parameter>
<parameter name="user_data">
<parameter_description> private data
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the supplied function returns TRUE For each of the fields,
FALSE otherwise.
</return>
</function>

<function name="gst_caps_remove_structure">
<description>
removes the stucture with the given index from the list of structures
contained in @caps.

</description>
<parameters>
<parameter name="caps">
<parameter_description> the #GstCaps to remove from
</parameter_description>
</parameter>
<parameter name="idx">
<parameter_description> Index of the structure to remove
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_value_set_mini_object">
<description>
Set the contents of a %GST_TYPE_MINI_OBJECT derived #GValue to
@mini_object.
The caller retains ownership of the reference.

</description>
<parameters>
<parameter name="value">
<parameter_description>       a valid #GValue of %GST_TYPE_MINI_OBJECT derived type
</parameter_description>
</parameter>
<parameter name="mini_object">
<parameter_description> mini object value to set
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_bus_new">
<description>
Creates a new #GstBus instance.


</description>
<parameters>
</parameters>
<return> a new #GstBus instance
</return>
</function>

<function name="gst_pad_add_event_probe">
<description>
Adds a probe that will be called for all events passing through a pad. See
gst_pad_add_data_probe() for more information.


</description>
<parameters>
<parameter name="pad">
<parameter_description> pad to add the event probe handler to
</parameter_description>
</parameter>
<parameter name="handler">
<parameter_description> function to call when events are passed over pad
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> data to pass along with the handler
</parameter_description>
</parameter>
</parameters>
<return> The handler id
</return>
</function>

<function name="gst_base_sink_get_sync">
<description>
Checks if @sink is currently configured to synchronize against the
clock.


</description>
<parameters>
<parameter name="sink">
<parameter_description> the sink
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the sink is configured to synchronize against the clock.

Since: 0.10.4
</return>
</function>

<function name="gst_video_sink_center_rect">
<description>
Takes @src rectangle and position it at the center of @dst rectangle with or
without @scaling. It handles clipping if the @src rectangle is bigger than
the @dst one and @scaling is set to FALSE.

</description>
<parameters>
<parameter name="src">
<parameter_description> the #GstVideoRectangle describing the source area
</parameter_description>
</parameter>
<parameter name="dst">
<parameter_description> the #GstVideoRectangle describing the destination area
</parameter_description>
</parameter>
<parameter name="result">
<parameter_description> a pointer to a #GstVideoRectangle which will receive the result area
</parameter_description>
</parameter>
<parameter name="scaling">
<parameter_description> a #gboolean indicating if scaling should be applied or not
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_value_array_get_size">
<description>
Gets the number of values contained in @value.


</description>
<parameters>
<parameter name="value">
<parameter_description> a #GValue of type #GST_TYPE_ARRAY
</parameter_description>
</parameter>
</parameters>
<return> the number of values
</return>
</function>

<function name="gst_pad_send_event">
<description>
Sends the event to the pad. This function can be used
by applications to send events in the pipeline.

If @pad is a source pad, @event should be an upstream event. If @pad is a
sink pad, @event should be a downstream event. For example, you would not
send a #GST_EVENT_EOS on a src pad; EOS events only propagate downstream.
Furthermore, some downstream events have to be serialized with data flow,
like EOS, while some can travel out-of-band, like #GST_EVENT_FLUSH_START. If
the event needs to be serialized with data flow, this function will take the
pad&apos;s stream lock while calling its event function.

To find out whether an event type is upstream, downstream, or downstream and
serialized, see #GstEventTypeFlags, gst_event_type_get_flags(),
#GST_EVENT_IS_UPSTREAM, #GST_EVENT_IS_DOWNSTREAM, and
#GST_EVENT_IS_SERIALIZED. Note that in practice that an application or
plugin doesn&apos;t need to bother itself with this information; the core handles
all necessary locks and checks.

This function takes owership of the provided event so you should
gst_event_ref() it if you want to reuse the event after this call.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad to send the event to.
</parameter_description>
</parameter>
<parameter name="event">
<parameter_description> the #GstEvent to send to the pad.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the event was handled.
</return>
</function>

<function name="gst_pad_fixate_caps">
<description>
Fixate a caps on the given pad. Modifies the caps in place, so you should
make sure that the caps are actually writable (see gst_caps_make_writable()).

</description>
<parameters>
<parameter name="pad">
<parameter_description> a  #GstPad to fixate
</parameter_description>
</parameter>
<parameter name="caps">
<parameter_description> the  #GstCaps to fixate
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_structure_get_value">
<description>
Get the value of the field with name @fieldname.


</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="fieldname">
<parameter_description> the name of the field to get
</parameter_description>
</parameter>
</parameters>
<return> the #GValue corresponding to the field with the given name.
</return>
</function>

<function name="gst_rtsp_connection_reset_timeout">
<description>
Reset the timeout of @conn.


</description>
<parameters>
<parameter name="conn">
<parameter_description> a #GstRTSPConnection
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK.
</return>
</function>

<function name="gst_video_format_convert">
<description>
Converts among various #GstFormat types.  This function handles
GST_FORMAT_BYTES, GST_FORMAT_TIME, and GST_FORMAT_DEFAULT.  For
raw video, GST_FORMAT_DEFAULT corresponds to video frames.  This
function can be to handle pad queries of the type GST_QUERY_CONVERT.

Since: 0.10.16


</description>
<parameters>
<parameter name="format">
<parameter_description> a #GstVideoFormat
</parameter_description>
</parameter>
<parameter name="width">
<parameter_description> the width of video
</parameter_description>
</parameter>
<parameter name="height">
<parameter_description> the height of video
</parameter_description>
</parameter>
<parameter name="fps_n">
<parameter_description> frame rate numerator
</parameter_description>
</parameter>
<parameter name="fps_d">
<parameter_description> frame rate denominator
</parameter_description>
</parameter>
<parameter name="src_format">
<parameter_description> #GstFormat of the @src_value
</parameter_description>
</parameter>
<parameter name="src_value">
<parameter_description> value to convert
</parameter_description>
</parameter>
<parameter name="dest_format">
<parameter_description> #GstFormat of the @dest_value
</parameter_description>
</parameter>
<parameter name="dest_value">
<parameter_description> pointer to destination value
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the conversion was successful.
</return>
</function>

<function name="gst_video_parse_caps_pixel_aspect_ratio">
<description>
Extracts the pixel aspect ratio from @caps and places the values in
the locations pointed to by @par_n and @par_d.  Returns TRUE if the
values could be parsed correctly, FALSE if not.

This function can be used with #GstCaps that have any media type; it
is not limited to formats handled by #GstVideoFormat.

Since: 0.10.16


</description>
<parameters>
<parameter name="caps">
<parameter_description> pointer to a #GstCaps instance
</parameter_description>
</parameter>
<parameter name="par_n">
<parameter_description> pointer to numerator of pixel aspect ratio (output)
</parameter_description>
</parameter>
<parameter name="par_d">
<parameter_description> pointer to denominator of pixel aspect ratio (output)
</parameter_description>
</parameter>
</parameters>
<return> TRUE if @caps was parsed correctly.
</return>
</function>

<function name="gst_rtsp_version_as_text">
<description>
Convert @version to a string.


</description>
<parameters>
<parameter name="version">
<parameter_description> a #GstRTSPVersion
</parameter_description>
</parameter>
</parameters>
<return> a string representation of @version.
</return>
</function>

<function name="gst_value_get_fraction_numerator">
<description>
Gets the numerator of the fraction specified by @value.


</description>
<parameters>
<parameter name="value">
<parameter_description> a GValue initialized to #GST_TYPE_FRACTION
</parameter_description>
</parameter>
</parameters>
<return> the numerator of the fraction.
</return>
</function>

<function name="gst_audio_get_channel_positions">
<description>
Retrieves a number of (fixed!) audio channel positions from
the provided #GstStructure and returns it as a newly allocated
array. The caller should g_free () this array. The caller
should also check that the members in this #GstStructure are
indeed &quot;fixed&quot; before calling this function.


</description>
<parameters>
<parameter name="str">
<parameter_description> A #GstStructure to retrieve channel positions from.
</parameter_description>
</parameter>
</parameters>
<return> a newly allocated array containing the channel
positions as provided in the given #GstStructure. Returns
NULL on error.
</return>
</function>

<function name="gst_tag_id3_genre_count">
<description>
Gets the number of ID3v1 genres that can be identified. Winamp genres are 
included.


</description>
<parameters>
</parameters>
<return> the number of ID3v1 genres that can be identified
</return>
</function>

<function name="gst_base_sink_get_last_buffer">
<description>
Get the last buffer that arrived in the sink and was used for preroll or for
rendering. This property can be used to generate thumbnails.

The #GstCaps on the buffer can be used to determine the type of the buffer.


</description>
<parameters>
<parameter name="sink">
<parameter_description> the sink
</parameter_description>
</parameter>
</parameters>
<return> a #GstBuffer. gst_buffer_unref() 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.

Since: 0.10.15
</return>
</function>

<function name="gst_caps_merge_structure">
<description>
Appends @structure to @caps if its not already expressed by @caps.  The
structure is not copied; @caps becomes the owner of @structure.

</description>
<parameters>
<parameter name="caps">
<parameter_description> the #GstCaps that will the the new structure
</parameter_description>
</parameter>
<parameter name="structure">
<parameter_description> the #GstStructure to merge
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtcp_unix_to_ntp">
<description>
Converts a UNIX timestamp in nanoseconds to an NTP time. The caller should
pass a value with nanoseconds since 1970. The NTP time will, in the upper
32 bits, contain the number of seconds since 1900 and, in the lower 32
bits, the fractional seconds. The resulting value can be used as an ntptime
for constructing SR RTCP packets.


</description>
<parameters>
<parameter name="unixtime">
<parameter_description> an UNIX timestamp in nanoseconds
</parameter_description>
</parameter>
</parameters>
<return> the NTP time for @unixtime.
</return>
</function>

<function name="gst_tag_setter_add_tag_valist">
<description>
Adds the given tag / value pairs on the setter using the given merge mode.
The list must be terminated with NULL.

</description>
<parameters>
<parameter name="setter">
<parameter_description> a #GstTagSetter
</parameter_description>
</parameter>
<parameter name="mode">
<parameter_description> the mode to use
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to set
</parameter_description>
</parameter>
<parameter name="var_args">
<parameter_description> tag / value pairs to set
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_base_sink_get_max_lateness">
<description>
Gets the max lateness value. See gst_base_sink_set_max_lateness for
more details.


</description>
<parameters>
<parameter name="sink">
<parameter_description> the sink
</parameter_description>
</parameter>
</parameters>
<return> The maximum time in nanoseconds that a buffer can be late
before it is dropped and not rendered. A value of -1 means an
unlimited time.

Since: 0.10.4
</return>
</function>

<function name="gst_structure_nth_field_name">
<description>
Get the name of the given field number, counting from 0 onwards.


</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="index">
<parameter_description> the index to get the name of
</parameter_description>
</parameter>
</parameters>
<return> the name of the given field number
</return>
</function>

<function name="gst_tag_list_new">
<description>
Creates a new empty GstTagList.


</description>
<parameters>
</parameters>
<return> An empty tag list
</return>
</function>

<function name="gst_bit_reader_skip">
<description>
Skips @nbits bits of the #GstBitReader instance.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstBitReader instance
</parameter_description>
</parameter>
<parameter name="nbits">
<parameter_description> the number of bits to skip
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if @nbits bits could be skipped, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_video_orientation_set_hcenter">
<description>
Set the horizontal centering offset for the given object.

Since: 0.10.11

</description>
<parameters>
<parameter name="video_orientation">
<parameter_description> #GstVideoOrientation interface of a #GstElement
</parameter_description>
</parameter>
<parameter name="center">
<parameter_description> centering offset
</parameter_description>
</parameter>
</parameters>
<return> %TRUE in case the element supports centering
</return>
</function>

<function name="gst_ring_buffer_advance">
<description>
Subclasses should call this function to notify the fact that 
@advance segments are now processed by the device.

MT safe.

</description>
<parameters>
<parameter name="buf">
<parameter_description> the #GstRingBuffer to advance
</parameter_description>
</parameter>
<parameter name="advance">
<parameter_description> the number of segments written
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtp_buffer_set_padding">
<description>
Set the padding bit on the RTP packet in @buffer to @padding.

</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer
</parameter_description>
</parameter>
<parameter name="padding">
<parameter_description> the new padding
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_controller_unset">
<description>
Used to remove the value of given controller-handled property at a certain
time.

Deprecated: Use #GstControlSource, for example #GstInterpolationControlSource
directly.


</description>
<parameters>
<parameter name="self">
<parameter_description> the controller object which handles the properties
</parameter_description>
</parameter>
<parameter name="property_name">
<parameter_description> the name of the property to unset
</parameter_description>
</parameter>
<parameter name="timestamp">
<parameter_description> the time the control-change should be removed from
</parameter_description>
</parameter>
</parameters>
<return> %FALSE if the values couldn&apos;t be unset (ex : properties not handled by controller), %TRUE otherwise
</return>
</function>

<function name="gst_collect_pads_available">
<description>
Query how much bytes can be read from each queued buffer. This means
that the result of this call is the maximum number of bytes that can
be read from each of the pads.

This function should be called with @pads LOCK held, such as
in the callback.

returns 0 if a pad has no queued buffer.

</description>
<parameters>
<parameter name="pads">
<parameter_description> the collectspads to query
</parameter_description>
</parameter>
</parameters>
<return>0 if a pad has no queued buffer.

MT safe.
</return>
</function>

<function name="gst_query_new_convert">
<description>
Constructs a new convert query object. Use gst_query_unref()
when done with it. A convert query is used to ask for a conversion between
one format and another.


</description>
<parameters>
<parameter name="src_format">
<parameter_description> the source #GstFormat for the new query
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> the value to convert
</parameter_description>
</parameter>
<parameter name="dest_format">
<parameter_description> the target #GstFormat
</parameter_description>
</parameter>
</parameters>
<return> A #GstQuery
</return>
</function>

<function name="gst_element_factory_has_interface">
<description>
Check if @factory implements the interface with name @interfacename.


</description>
<parameters>
<parameter name="factory">
<parameter_description> a #GstElementFactory
</parameter_description>
</parameter>
<parameter name="interfacename">
<parameter_description> an interface name
</parameter_description>
</parameter>
</parameters>
<return> #TRUE when @factory implement the interface.

Since: 0.10.14
</return>
</function>

<function name="gst_ring_buffer_start">
<description>
Start processing samples from the ringbuffer.


</description>
<parameters>
<parameter name="buf">
<parameter_description> the #GstRingBuffer to start
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the device could be started, FALSE on error.

MT safe.
</return>
</function>

<function name="gst_debug_category_get_description">
<description>
Returns: the description of the category.

</description>
<parameters>
<parameter name="category">
<parameter_description> a #GstDebugCategory to get the description of.
</parameter_description>
</parameter>
</parameters>
<return> the description of the category.
</return>
</function>

<function name="gst_fft_f64_new">
<description>
This returns a new #GstFFTF64 instance with the given parameters. It makes
sense to keep one instance for several calls for speed reasons.

@len must be even and to get the best performance a product of
2, 3 and 5. To get the next number with this characteristics use
gst_fft_next_fast_length().


</description>
<parameters>
<parameter name="len">
<parameter_description> Length of the FFT in the time domain
</parameter_description>
</parameter>
<parameter name="inverse">
<parameter_description> %TRUE if the #GstFFTF64 instance should be used for the inverse FFT
</parameter_description>
</parameter>
</parameters>
<return> a new #GstFFTF64 instance.
</return>
</function>

<function name="gst_event_new_new_segment_full">
<description>
Allocate a new newsegment event with the given format/values triplets.

The newsegment event marks the range of buffers to be processed. All
data not within the segment range is not to be processed. This can be
used intelligently by plugins to apply more efficient methods of skipping
unneeded data.

The position value of the segment is used in conjunction with the start
value to convert the buffer timestamps into the stream time. This is 
usually done in sinks to report the current stream_time. 
@position represents the stream_time of a buffer carrying a timestamp of 
@start. @position cannot be -1.

@start cannot be -1, @stop can be -1. If there
is a valid @stop given, it must be greater or equal the @start, including 
when the indicated playback @rate is &amp;lt; 0.

The @applied_rate value provides information about any rate adjustment that
has already been made to the timestamps and content on the buffers of the 
stream. (@rate * @applied_rate) should always equal the rate that has been 
requested for playback. For example, if an element has an input segment 
with intended playback @rate of 2.0 and applied_rate of 1.0, it can adjust 
incoming timestamps and buffer content by half and output a newsegment event 
with @rate of 1.0 and @applied_rate of 2.0

After a newsegment event, the buffer stream time is calculated with:

position + (TIMESTAMP(buf) - start) * ABS (rate * applied_rate)


</description>
<parameters>
<parameter name="update">
<parameter_description> Whether this segment is an update to a previous one
</parameter_description>
</parameter>
<parameter name="rate">
<parameter_description> A new rate for playback
</parameter_description>
</parameter>
<parameter name="applied_rate">
<parameter_description> The rate factor which has already been applied
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> The format of the segment values
</parameter_description>
</parameter>
<parameter name="start">
<parameter_description> The start value of the segment
</parameter_description>
</parameter>
<parameter name="stop">
<parameter_description> The stop value of the segment
</parameter_description>
</parameter>
<parameter name="position">
<parameter_description> stream position
</parameter_description>
</parameter>
</parameters>
<return> A new newsegment event.

Since: 0.10.6
</return>
</function>

<function name="gst_bit_reader_set_pos">
<description>
Sets the new position of a #GstBitReader instance to @pos in bits.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstBitReader instance
</parameter_description>
</parameter>
<parameter name="pos">
<parameter_description> The new position in bits
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the position could be set successfully, %FALSE
otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_basertppayload_set_outcaps">
<description>
Configure the output caps with the optional parameters.

Variable arguments should be in the form field name, field type
(as a GType), value(s).  The last variable argument should be NULL.


</description>
<parameters>
<parameter name="payload">
<parameter_description> a #GstBaseRTPPayload
</parameter_description>
</parameter>
<parameter name="fieldname">
<parameter_description> the first field name or %NULL
</parameter_description>
</parameter>
<parameter name="Varargs">
<parameter_description> field values
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the caps could be set.
</return>
</function>

<function name="gst_buffer_new_and_alloc">
<description>
Creates a newly allocated buffer with data of the given size.
The buffer memory is not cleared. If the requested amount of
memory can&apos;t be allocated, the program will abort. Use
gst_buffer_try_new_and_alloc() if you want to handle this case
gracefully or have gotten the size to allocate from an untrusted
source such as a media stream.


Note that when @size == 0, the buffer data pointer will be NULL.

MT safe.

</description>
<parameters>
<parameter name="size">
<parameter_description> the size of the new buffer&apos;s data.
</parameter_description>
</parameter>
</parameters>
<return> the new #GstBuffer.
</return>
</function>

<function name="gst_format_get_name">
<description>
Get a printable name for the given format. Do not modify or free.


</description>
<parameters>
<parameter name="format">
<parameter_description> a #GstFormat
</parameter_description>
</parameter>
</parameters>
<return> a reference to the static name of the format or NULL if
the format is unknown.
</return>
</function>

<function name="gst_ring_buffer_stop">
<description>
Stop processing samples from the ringbuffer.


</description>
<parameters>
<parameter name="buf">
<parameter_description> the #GstRingBuffer to stop
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the device could be stopped, FALSE on error.

MT safe.
</return>
</function>

<function name="gst_clock_get_calibration">
<description>
Gets the internal rate and reference time of @clock. See
gst_clock_set_calibration() for more information.

@internal, @external, @rate_num, and @rate_denom can be left %NULL if the
caller is not interested in the values.

MT safe.

</description>
<parameters>
<parameter name="clock">
<parameter_description> a #GstClock 
</parameter_description>
</parameter>
<parameter name="internal">
<parameter_description> a location to store the internal time
</parameter_description>
</parameter>
<parameter name="external">
<parameter_description> a location to store the external time
</parameter_description>
</parameter>
<parameter name="rate_num">
<parameter_description> a location to store the rate numerator
</parameter_description>
</parameter>
<parameter name="rate_denom">
<parameter_description> a location to store the rate denominator
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_index_factory_destroy">
<description>
Removes the index from the global list.

</description>
<parameters>
<parameter name="factory">
<parameter_description> factory to destroy
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_message_get_structure">
<description>
Access the structure of the message.


</description>
<parameters>
<parameter name="message">
<parameter_description> The #GstMessage.
</parameter_description>
</parameter>
</parameters>
<return> The structure of the message. The structure is still
owned by the message, which means that you should not free it and
that the pointer becomes invalid when you free the message.

MT safe.
</return>
</function>

<function name="gst_pipeline_get_last_stream_time">
<description>
Gets the last stream time of @pipeline. If the pipeline is PLAYING,
the returned time is the stream time used to configure the element&apos;s
base time in the PAUSED-&amp;gt;PLAYING state. If the pipeline is PAUSED, the
returned time is the stream time when the pipeline was paused.

This function returns #GST_CLOCK_TIME_NONE if the pipeline was
configured to not handle the management of the element&apos;s base time
(see gst_pipeline_set_new_stream_time()).


</description>
<parameters>
<parameter name="pipeline">
<parameter_description> a #GstPipeline
</parameter_description>
</parameter>
</parameters>
<return> a #GstClockTime.

MT safe.
</return>
</function>

<function name="the">
<description>

</description>
<parameters>
</parameters>
<return></return>
</function>

<function name="gst_print_element_args">
<description>
Print the element argument in a human readable format in the given
GString.

</description>
<parameters>
<parameter name="buf">
<parameter_description> the buffer to print the args in
</parameter_description>
</parameter>
<parameter name="indent">
<parameter_description> initial indentation
</parameter_description>
</parameter>
<parameter name="element">
<parameter_description> the element to print the args of
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_base_sink_get_ts_offset">
<description>
Get the synchronisation offset of @sink.


</description>
<parameters>
<parameter name="sink">
<parameter_description> the sink
</parameter_description>
</parameter>
</parameters>
<return> The synchronisation offset.

Since: 0.10.15
</return>
</function>

<function name="gst_collect_pads_read_buffer">
<description>
Get a subbuffer of @size bytes from the given pad @data.

This function should be called with @pads LOCK held, such as in the callback.

Since: 0.10.18


</description>
<parameters>
<parameter name="pads">
<parameter_description> the collectspads to query
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> the data to use
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> the number of bytes to read
</parameter_description>
</parameter>
</parameters>
<return> A sub buffer. The size of the buffer can be less that requested.
A return of NULL signals that the pad is end-of-stream.
Unref the buffer after use.

MT safe.
</return>
</function>

<function name="gst_pipeline_get_bus">
<description>
Gets the #GstBus of @pipeline. The bus allows applications to receive #GstMessages.


</description>
<parameters>
<parameter name="pipeline">
<parameter_description> a #GstPipeline
</parameter_description>
</parameter>
</parameters>
<return> a #GstBus, unref after usage.

MT safe.
</return>
</function>

<function name="gst_base_sink_set_qos_enabled">
<description>
Configures @sink to send Quality-of-Service events upstream.

Since: 0.10.5

</description>
<parameters>
<parameter name="sink">
<parameter_description> the sink
</parameter_description>
</parameter>
<parameter name="enabled">
<parameter_description> the new qos value.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_collect_pads_new">
<description>
Create a new instance of #GstCollectsPads.


</description>
<parameters>
</parameters>
<return> a new #GstCollectPads, or NULL in case of an error.

MT safe.
</return>
</function>

<function name="gst_element_factory_get_static_pad_templates">
<description>
Gets the #GList of #GstStaticPadTemplate for this factory.


</description>
<parameters>
<parameter name="factory">
<parameter_description> a #GstElementFactory
</parameter_description>
</parameter>
</parameters>
<return> the padtemplates
</return>
</function>

<function name="gst_rtp_buffer_calc_payload_len">
<description>
Calculate the length of the payload of an RTP packet with size @packet_len,
a padding of @pad_len and a @csrc_count CSRC entries.


</description>
<parameters>
<parameter name="packet_len">
<parameter_description> the length of the total RTP packet
</parameter_description>
</parameter>
<parameter name="pad_len">
<parameter_description> the amount of padding
</parameter_description>
</parameter>
<parameter name="csrc_count">
<parameter_description> the number of CSRC entries
</parameter_description>
</parameter>
</parameters>
<return> The length of the payload of an RTP packet  with given parameters.
</return>
</function>

<function name="gst_debug_category_reset_threshold">
<description>
Resets the threshold of the category to the default level. Debug information
will only be output if the threshold is lower or equal to the level of the
debugging message.
Use this function to set the threshold back to where it was after using
gst_debug_category_set_threshold().

</description>
<parameters>
<parameter name="category">
<parameter_description> a #GstDebugCategory to reset threshold of.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_structure_set">
<description>
Parses the variable arguments and sets fields accordingly.
Variable arguments should be in the form field name, field type
(as a GType), value(s).  The last variable argument should be NULL.

</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="fieldname">
<parameter_description> the name of the field to set
</parameter_description>
</parameter>
<parameter name="Varargs">
<parameter_description> variable arguments
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_sdp_message_bandwidths_len">
<description>
Get the number of bandwidth information in @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
</parameters>
<return> the number of bandwidth information in @msg.
</return>
</function>

<function name="gst_query_set_segment">
<description>
Answer a segment query by setting the requested values. The normal
playback segment of a pipeline is 0 to duration at the default rate of
1.0. If a seek was performed on the pipeline to play a different
segment, this query will return the range specified in the last seek.

@start_value and @stop_value will respectively contain the configured 
playback range start and stop values expressed in @format. 
The values are always between 0 and the duration of the media and 
@start_value &amp;lt;= @stop_value. @rate will contain the playback rate. For
negative rates, playback will actually happen from @stop_value to
@start_value.

</description>
<parameters>
<parameter name="query">
<parameter_description> a #GstQuery
</parameter_description>
</parameter>
<parameter name="rate">
<parameter_description> the rate of the segment
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> the #GstFormat of the segment values (@start_value and @stop_value)
</parameter_description>
</parameter>
<parameter name="start_value">
<parameter_description> the start value
</parameter_description>
</parameter>
<parameter name="stop_value">
<parameter_description> the stop value
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_sdp_media_get_key">
<description>
Get the encryption information from @media.


</description>
<parameters>
<parameter name="media">
<parameter_description> a #GstSDPMedia
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPKey.
</return>
</function>

<function name="gst_value_register_subtract_func">
<description>
Registers @func as a function capable of subtracting the values of
@subtrahend_type from values of @minuend_type.

Subtract functions should be registered at startup before any pipelines are
started, as gst_value_register_subtract_func() is not thread-safe and
cannot be used at the same time as gst_value_subtract().

</description>
<parameters>
<parameter name="minuend_type">
<parameter_description> type of the minuend
</parameter_description>
</parameter>
<parameter name="subtrahend_type">
<parameter_description> type of the subtrahend
</parameter_description>
</parameter>
<parameter name="func">
<parameter_description> function to use
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtcp_ntp_to_unix">
<description>
Converts an NTP time to UNIX nanoseconds. @ntptime can typically be
the NTP time of an SR RTCP message and contains, in the upper 32 bits, the
number of seconds since 1900 and, in the lower 32 bits, the fractional
seconds. The resulting value will be the number of nanoseconds since 1970.


</description>
<parameters>
<parameter name="ntptime">
<parameter_description> an NTP timestamp
</parameter_description>
</parameter>
</parameters>
<return> the UNIX time for @ntptime in nanoseconds.
</return>
</function>

<function name="gst_element_unlink">
<description>
Unlinks all source pads of the source element with all sink pads
of the sink element to which they are linked.

If the link has been made using gst_element_link(), it could have created an
requestpad, which has to be released using gst_element_release_request_pad().

</description>
<parameters>
<parameter name="src">
<parameter_description> the source #GstElement to unlink.
</parameter_description>
</parameter>
<parameter name="dest">
<parameter_description> the sink #GstElement to unlink.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_sdp_message_get_attribute_val_n">
<description>
Get the @nth attribute with key @key in @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
<parameter name="key">
<parameter_description> the key
</parameter_description>
</parameter>
<parameter name="nth">
<parameter_description> the index
</parameter_description>
</parameter>
</parameters>
<return> the attribute value of the @nth attribute with @key.
</return>
</function>

<function name="gst_install_plugins_sync">
<description>
Requests plugin installation and block until the plugins have been
installed or installation has failed.

This function should almost never be used, it only exists for cases where
a non-GLib main loop is running and the user wants to run it in a separate
thread and marshal the result back asynchronously into the main thread
using the other non-GLib main loop. You should almost always use
gst_install_plugins_async() instead of this function.


</description>
<parameters>
<parameter name="details">
<parameter_description> NULL-terminated array of installer string details
</parameter_description>
</parameter>
<parameter name="ctx">
<parameter_description> a #GstInstallPluginsContext, or NULL
</parameter_description>
</parameter>
</parameters>
<return> the result of the installation.

Since: 0.10.12
</return>
</function>

<function name="gst_audio_frame_byte_size">
<description>
Calculate byte size of an audio frame.


</description>
<parameters>
<parameter name="pad">
<parameter_description> the #GstPad to get the caps from
</parameter_description>
</parameter>
</parameters>
<return> the byte size, or 0 if there was an error
</return>
</function>

<function name="gst_debug_message_get">
<description>
Gets the string representation of a #GstDebugMessage. This function is used
in debug handlers to extract the message.


</description>
<parameters>
<parameter name="message">
<parameter_description> a debug message
</parameter_description>
</parameter>
</parameters>
<return> the string representation of a #GstDebugMessage.
</return>
</function>

<function name="gst_sdp_message_get_zone">
<description>
Get time zone information with index @idx from @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
<parameter name="idx">
<parameter_description> the zone index
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPZone.
</return>
</function>

<function name="gst_tag_list_get_string">
<description>
Copies the contents for the given tag into the value, possibly merging
multiple values into one if multiple values are associated with the tag.

Use gst_tag_list_get_string_index (list, tag, 0, value) if you want
to retrieve the first string associated with this tag unmodified.

The resulting string in @value will be in UTF-8 encoding and should be
freed by the caller using g_free when no longer needed.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList to get the tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> location for the result
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if a value was copied, FALSE if the tag didn&apos;t exist in the
given list.
</return>
</function>

<function name="gst_pad_get_element_private">
<description>
Gets the private data of a pad.
No locking is performed in this function.


</description>
<parameters>
<parameter name="pad">
<parameter_description> the #GstPad to get the private data of.
</parameter_description>
</parameter>
</parameters>
<return> a #gpointer to the private data.
</return>
</function>

<function name="gst_byte_reader_get_uint24_be">
<description>
Read an unsigned 24 bit big endian integer into @val
and update the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #guint32 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_pb_utils_get_element_description">
<description>
Returns: a newly-allocated description string, or NULL on error. Free

</description>
<parameters>
<parameter name="factory_name">
<parameter_description> the name of the element, e.g. &quot;gnomevfssrc&quot;
</parameter_description>
</parameter>
</parameters>
<return> a newly-allocated description string, or NULL on error. Free
string with g_free() when not needed any longer.
</return>
</function>

<function name="gst_pad_set_setcaps_function">
<description>
Sets the given setcaps function for the pad.  The setcaps function
will be called whenever a buffer with a new media type is pushed or
pulled from the pad. The pad/element needs to update its internal
structures to process the new media type. If this new type is not
acceptable, the setcaps function should return FALSE.

</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad.
</parameter_description>
</parameter>
<parameter name="setcaps">
<parameter_description> the #GstPadSetCapsFunction to set.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_color_balance_value_changed">
<description>
A helper function called by implementations of the GstColorBalance
interface. It fires the #GstColorBalance::value-changed signal on the
instance, and the #GstColorBalanceChannel::value-changed signal on the
channel object.

</description>
<parameters>
<parameter name="balance">
<parameter_description> A #GstColorBalance instance
</parameter_description>
</parameter>
<parameter name="channel">
<parameter_description> A #GstColorBalanceChannel whose value has changed
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> The new value of the channel
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_value_register">
<description>
Registers functions to perform calculations on #GValues of a given
type.

</description>
<parameters>
<parameter name="table">
<parameter_description> structure containing functions to register
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_base_transform_set_in_place">
<description>
Determines whether a non-writable buffer will be copied before passing
to the transform_ip function.
&amp;lt;itemizedlist&amp;gt;
&amp;lt;listitem&amp;gt;Always TRUE if no transform function is implemented.&amp;lt;/listitem&amp;gt;
&amp;lt;listitem&amp;gt;Always FALSE if ONLY transform function is implemented.&amp;lt;/listitem&amp;gt;
&amp;lt;/itemizedlist&amp;gt;

MT safe.

</description>
<parameters>
<parameter name="trans">
<parameter_description> the #GstBaseTransform to modify
</parameter_description>
</parameter>
<parameter name="in_place">
<parameter_description> Boolean value indicating that we would like to operate
on in_place buffers.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_init_check">
<description>
Initializes the GStreamer library, setting up internal path lists,
registering built-in elements, and loading standard plugins.

This function will return %FALSE if GStreamer could not be initialized
for some reason.  If you want your program to fail fatally,
use gst_init() instead.

This function should be called before calling any other GLib functions. If
this is not an option, your program must initialise the GLib thread system
using g_thread_init() before any other GLib functions are called.


</description>
<parameters>
<parameter name="argc">
<parameter_description> pointer to application&apos;s argc
</parameter_description>
</parameter>
<parameter name="argv">
<parameter_description> pointer to application&apos;s argv
</parameter_description>
</parameter>
<parameter name="err">
<parameter_description> pointer to a #GError to which a message will be posted on error
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if GStreamer could be initialized.
</return>
</function>

<function name="gst_element_query">
<description>
Performs a query on the given element.

For elements that don&apos;t implement a query handler, this function
forwards the query to a random srcpad or to the peer of a
random linked sinkpad of this element.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement to perform the query on.
</parameter_description>
</parameter>
<parameter name="query">
<parameter_description> the #GstQuery.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the query could be performed.

MT safe.
</return>
</function>

<function name="gst_ring_buffer_convert">
<description>
Convert @src_val in @src_fmt to the equivalent value in @dest_fmt. The result
will be put in @dest_val.


</description>
<parameters>
<parameter name="buf">
<parameter_description> the #GstRingBuffer
</parameter_description>
</parameter>
<parameter name="src_fmt">
<parameter_description> the source format
</parameter_description>
</parameter>
<parameter name="src_val">
<parameter_description> the source value
</parameter_description>
</parameter>
<parameter name="dest_fmt">
<parameter_description> the destination format
</parameter_description>
</parameter>
<parameter name="dest_val">
<parameter_description> a location to store the converted value
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the conversion succeeded.

Since: 0.10.22.
</return>
</function>

<function name="gst_byte_reader_free">
<description>
Frees a #GstByteReader instance, which was previously allocated by
gst_byte_reader_new() or gst_byte_reader_new_from_buffer().

Since: 0.10.22

</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_set_getcaps_function">
<description>
Sets the given getcaps function for the pad. @getcaps should return the
allowable caps for a pad in the context of the element&apos;s state, its link to
other elements, and the devices or files it has opened. These caps must be a
subset of the pad template caps. In the NULL state with no links, @getcaps
should ideally return the same caps as the pad template. In rare
circumstances, an object property can affect the caps returned by @getcaps,
but this is discouraged.

You do not need to call this function if @pad&apos;s allowed caps are always the
same as the pad template caps. This can only be true if the padtemplate
has fixed simple caps.

For most filters, the caps returned by @getcaps is directly affected by the
allowed caps on other pads. For demuxers and decoders, the caps returned by
the srcpad&apos;s getcaps function is directly related to the stream data. Again,
@getcaps should return the most specific caps it reasonably can, since this
helps with autoplugging.

Note that the return value from @getcaps is owned by the caller, so the
caller should unref the caps after usage.

</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad.
</parameter_description>
</parameter>
<parameter name="getcaps">
<parameter_description> the #GstPadGetCapsFunction to set.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_sdp_message_set_key">
<description>
Adds the encryption information to @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
<parameter name="type">
<parameter_description> the encryption type
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> the encryption data
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPResult.
</return>
</function>

<function name="gst_message_set_seqnum">
<description>
Set the sequence number of a message.

This function might be called by the creator of a message to indicate that
the message relates to other messages or events. See gst_message_get_seqnum()
for more information.

Since: 0.10.22

MT safe.

</description>
<parameters>
<parameter name="message">
<parameter_description> A #GstMessage.
</parameter_description>
</parameter>
<parameter name="seqnum">
<parameter_description> A sequence number.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_uri_get_protocol">
<description>
Extracts the protocol out of a given valid URI. The returned string must be
freed using g_free().


</description>
<parameters>
<parameter name="uri">
<parameter_description> A URI string
</parameter_description>
</parameter>
</parameters>
<return> The protocol for this URI.
</return>
</function>

<function name="gst_byte_reader_peek_int16_le">
<description>
Read a signed 16 bit little endian integer into @val
but keep the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #gint16 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_bus_add_signal_watch">
<description>
Adds a bus signal watch to the default main context with the default
priority.
After calling this statement, the bus will emit the &quot;message&quot; signal for each
message posted on the bus.

This function may be called multiple times. To clean up, the caller is
responsible for calling gst_bus_remove_signal_watch() as many times as this
function is called.

MT safe.

</description>
<parameters>
<parameter name="bus">
<parameter_description> a #GstBus on which you want to receive the &quot;message&quot; signal
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtsp_base64_encode">
<description>
Encode a sequence of binary data into its Base-64 stringified representation.


</description>
<parameters>
<parameter name="data">
<parameter_description> the binary data to encode
</parameter_description>
</parameter>
<parameter name="len">
<parameter_description> the length of @data
</parameter_description>
</parameter>
</parameters>
<return> a newly allocated, zero-terminated Base-64 encoded string
representing @data.
</return>
</function>

<function name="gst_rtcp_packet_move_to_next">
<description>
Move the packet pointer @packet to the next packet in the payload.
Use gst_rtcp_buffer_get_first_packet() to initialize @packet.


</description>
<parameters>
<parameter name="packet">
<parameter_description> a #GstRTCPPacket
</parameter_description>
</parameter>
</parameters>
<return> TRUE if @packet is pointing to a valid packet after calling this
function.
</return>
</function>

<function name="gst_util_seqnum_next">
<description>
Return a constantly incrementing sequence number.

This function is used internally to GStreamer to be able to determine which
events and messages are &quot;the same&quot;. For example, elements may set the seqnum
on a segment-done message to be the same as that of the last seek event, to
indicate that event and the message correspond to the same segment.


</description>
<parameters>
</parameters>
<return> A constantly incrementing 32-bit unsigned integer, which might
overflow back to 0 at some point. Use gst_util_seqnum_compare() to make sure
you handle wraparound correctly.

Since: 0.10.22
</return>
</function>

<function name="gst_fft_s32_window">
<description>
This calls the window function @window on the @timedata sample buffer.


</description>
<parameters>
<parameter name="self">
<parameter_description> #GstFFTS32 instance for this call
</parameter_description>
</parameter>
<parameter name="timedata">
<parameter_description> Time domain samples
</parameter_description>
</parameter>
<parameter name="window">
<parameter_description> Window function to apply
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_tag_setter_set_tag_merge_mode">
<description>
Sets the given merge mode that is used for adding tags from events to tags
specified by this interface. The default is #GST_TAG_MERGE_KEEP, which keeps
the tags set with this interface and discards tags from events.

</description>
<parameters>
<parameter name="setter">
<parameter_description> a #GstTagSetter
</parameter_description>
</parameter>
<parameter name="mode">
<parameter_description> The mode with which tags are added
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_adapter_new">
<description>
Creates a new #GstAdapter. Free with g_object_unref().


</description>
<parameters>
</parameters>
<return> a new #GstAdapter
</return>
</function>

<function name="gst_preset_save_preset">
<description>
Save the current preset under the given name. If there is already a preset by
this @name it will be overwritten.


</description>
<parameters>
<parameter name="preset">
<parameter_description> a #GObject that implements #GstPreset
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> preset name to save
</parameter_description>
</parameter>
</parameters>
<return> %TRUE for success, %FALSE

Since: 0.10.20
</return>
</function>

<function name="gst_ring_buffer_prepare_read">
<description>
Returns: FALSE if the buffer is not started.

</description>
<parameters>
<parameter name="buf">
<parameter_description> the #GstRingBuffer to read from
</parameter_description>
</parameter>
<parameter name="segment">
<parameter_description> the segment to read
</parameter_description>
</parameter>
<parameter name="readptr">
<parameter_description> the pointer to the memory where samples can be read
</parameter_description>
</parameter>
<parameter name="len">
<parameter_description> the number of bytes to read
</parameter_description>
</parameter>
</parameters>
<return> FALSE if the buffer is not started.

MT safe.
</return>
</function>

<function name="gst_controller_suggest_next_sync">
<description>
Returns: Returns the suggested timestamp or %GST_CLOCK_TIME_NONE

</description>
<parameters>
<parameter name="self">
<parameter_description> the controller that handles the values
</parameter_description>
</parameter>
</parameters>
<return> Returns the suggested timestamp or %GST_CLOCK_TIME_NONE
if no control-rate was set.

Since: 0.10.13
</return>
</function>

<function name="gst_sdp_message_get_origin">
<description>
Get the origin of @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPOrigin. The result remains valid as long as @msg is valid.
</return>
</function>

<function name="_gst_debug_init">
<description>
Initializes the debugging system.
Normally you don&apos;t want to call this, because gst_init() does it for you.

</description>
<parameters>
</parameters>
<return></return>
</function>

<function name="gst_base_audio_src_get_slave_method">
<description>
Get the current slave method used by @src.


</description>
<parameters>
<parameter name="src">
<parameter_description> a #GstBaseAudioSrc
</parameter_description>
</parameter>
</parameters>
<return> The current slave method used by @src.

Since: 0.10.20
</return>
</function>

<function name="gst_message_parse_segment_done">
<description>
Extracts the position and format from the segment start message.

MT safe.

</description>
<parameters>
<parameter name="message">
<parameter_description> A valid #GstMessage of type GST_MESSAGE_SEGMENT_DONE.
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> Result location for the format, or NULL
</parameter_description>
</parameter>
<parameter name="position">
<parameter_description> Result location for the position, or NULL
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_task_start">
<description>
Starts @task. The @task must have a lock associated with it using
gst_task_set_lock() or this function will return %FALSE.


</description>
<parameters>
<parameter name="task">
<parameter_description> The #GstTask to start
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the task could be started.

MT safe.
</return>
</function>

<function name="str_case_hash">
<description>
Hashes @key in a case-insensitive manner.


</description>
<parameters>
<parameter name="key">
<parameter_description> ASCII string to hash
</parameter_description>
</parameter>
</parameters>
<return> the hash code.
</return>
</function>

<function name="GstBaseAudioSrc">
<description>
Actual configured audio latency in microseconds.

Since: 0.10.20

</description>
<parameters>
</parameters>
<return></return>
</function>

<function name="gst_rtp_buffer_get_timestamp">
<description>
Get the timestamp of the RTP packet in @buffer.


</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer
</parameter_description>
</parameter>
</parameters>
<return> The timestamp in host order.
</return>
</function>

<function name="gst_element_factory_get_uri_type">
<description>
Gets the type of URIs the element supports or #GST_URI_UNKNOWN if none.


</description>
<parameters>
<parameter name="factory">
<parameter_description> a #GstElementFactory
</parameter_description>
</parameter>
</parameters>
<return> type of URIs this element supports
</return>
</function>

<function name="gst_ghost_pad_save_thyself">
<description>
Saves the ghost pad into an xml representation.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a ghost #GstPad to save.
</parameter_description>
</parameter>
<parameter name="parent">
<parameter_description> the parent #xmlNodePtr to save the description in.
</parameter_description>
</parameter>
</parameters>
<return> the #xmlNodePtr representation of the pad.
</return>
</function>

<function name="gst_property_probe_get_properties">
<description>
Get a list of properties for which probing is supported.


</description>
<parameters>
<parameter name="probe">
<parameter_description> the #GstPropertyProbe to get the properties for.
</parameter_description>
</parameter>
</parameters>
<return> the list of properties for which probing is supported
by this element.
</return>
</function>

<function name="gst_collect_pads_set_function">
<description>
Set the callback function and user data that will be called when
all the pads added to the collection have buffers queued.

MT safe.

</description>
<parameters>
<parameter name="pads">
<parameter_description> the collectspads to use
</parameter_description>
</parameter>
<parameter name="func">
<parameter_description> the function to set
</parameter_description>
</parameter>
<parameter name="user_data">
<parameter_description> user data passed to the function
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_message_new_eos">
<description>
Create a new eos message. This message is generated and posted in
the sink elements of a GstBin. The bin will only forward the EOS
message to the application if all sinks have posted an EOS message.


</description>
<parameters>
<parameter name="src">
<parameter_description> The object originating the message.
</parameter_description>
</parameter>
</parameters>
<return> The new eos message.

MT safe.
</return>
</function>

<function name="gst_base_src_set_blocksize">
<description>
Set the number of bytes that @src will push out with each buffer. When
@blocksize is set to -1, a default length will be used.

Since: 0.10.22

</description>
<parameters>
<parameter name="src">
<parameter_description> the source
</parameter_description>
</parameter>
<parameter name="blocksize">
<parameter_description> the new blocksize in bytes
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_element_seek_simple">
<description>
Simple API to perform a seek on the given element, meaning it just seeks
to the given position relative to the start of the stream. For more complex
operations like segment seeks (e.g. for looping) or changing the playback
rate or seeking relative to the last configured playback segment you should
use gst_element_seek().

In a completely prerolled PAUSED or PLAYING pipeline, seeking is always
guaranteed to return %TRUE on a seekable media type or %FALSE when the media
type is certainly not seekable (such as a live stream).

Some elements allow for seeking in the READY state, in this
case they will store the seek event and execute it when they are put to
PAUSED. If the element supports seek in READY, it will always return %TRUE when
it receives the event in the READY state.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement to seek on
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> a #GstFormat to execute the seek in, such as #GST_FORMAT_TIME
</parameter_description>
</parameter>
<parameter name="seek_flags">
<parameter_description> seek options; playback applications will usually want to use
GST_SEEK_FLAG_FLUSH | GST_SEEK_FLAG_KEY_UNIT here
</parameter_description>
</parameter>
<parameter name="seek_pos">
<parameter_description> position to seek to (relative to the start); if you are doing
a seek in #GST_FORMAT_TIME this value is in nanoseconds -
multiply with #GST_SECOND to convert seconds to nanoseconds or
with #GST_MSECOND to convert milliseconds to nanoseconds.
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the seek operation succeeded (the seek might not always be
executed instantly though)

Since: 0.10.7
</return>
</function>

<function name="gst_sdp_message_get_attribute_val">
<description>
Get the first attribute with key @key in @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
<parameter name="key">
<parameter_description> the key
</parameter_description>
</parameter>
</parameters>
<return> the attribute value of the first attribute with @key.
</return>
</function>

<function name="gst_plugin_load_by_name">
<description>
Load the named plugin. Refs the plugin.


</description>
<parameters>
<parameter name="name">
<parameter_description> name of plugin to load
</parameter_description>
</parameter>
</parameters>
<return> A reference to a loaded plugin, or NULL on error.
</return>
</function>

<function name="gst_rtsp_method_as_text">
<description>
Convert @method to a string.


</description>
<parameters>
<parameter name="method">
<parameter_description> a #GstRTSPMethod
</parameter_description>
</parameter>
</parameters>
<return> a string representation of @method.
</return>
</function>

<function name="gst_sdp_message_new">
<description>
Allocate a new GstSDPMessage and store the result in @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> pointer to new #GstSDPMessage
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPResult.
</return>
</function>

<function name="gst_video_format_get_size">
<description>
Calculates the total number of bytes in the raw video format.  This
number should be used when allocating a buffer for raw video.

Since: 0.10.16


</description>
<parameters>
<parameter name="format">
<parameter_description> a #GstVideoFormat
</parameter_description>
</parameter>
<parameter name="width">
<parameter_description> the width of video
</parameter_description>
</parameter>
<parameter name="height">
<parameter_description> the height of video
</parameter_description>
</parameter>
</parameters>
<return> size (in bytes) of raw video format
</return>
</function>

<function name="gst_event_type_to_quark">
<description>
Get the unique quark for the given event type.


</description>
<parameters>
<parameter name="type">
<parameter_description> the event type
</parameter_description>
</parameter>
</parameters>
<return> the quark associated with the event type
</return>
</function>

<function name="gst_pad_get_peer">
<description>
Gets the peer of @pad. This function refs the peer pad so
you need to unref it after use.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad to get the peer of.
</parameter_description>
</parameter>
</parameters>
<return> the peer #GstPad. Unref after usage.

MT safe.
</return>
</function>

<function name="gst_caps_to_string">
<description>
Converts @caps to a string representation.  This string representation
can be converted back to a #GstCaps by gst_caps_from_string().

For debugging purposes its easier to do something like this:
&amp;lt;programlisting&amp;gt;
GST_LOG (&quot;caps are %&quot; GST_PTR_FORMAT, caps);
&amp;lt;/programlisting&amp;gt;
This prints the caps in human readble form.


</description>
<parameters>
<parameter name="caps">
<parameter_description> a #GstCaps
</parameter_description>
</parameter>
</parameters>
<return> a newly allocated string representing @caps.
</return>
</function>

<function name="gst_tag_list_get_boolean">
<description>
Copies the contents for the given tag into the value, merging multiple values
into one if multiple values are associated with the tag.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList to get the tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> location for the result
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if a value was copied, FALSE if the tag didn&apos;t exist in the
given list.
</return>
</function>

<function name="gst_control_source_get_value">
<description>
Gets the value for this #GstControlSource at a given timestamp.


</description>
<parameters>
<parameter name="self">
<parameter_description> the #GstControlSource object
</parameter_description>
</parameter>
<parameter name="timestamp">
<parameter_description> the time for which the value should be returned
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> the value
</parameter_description>
</parameter>
</parameters>
<return> FALSE if the value couldn&apos;t be returned, TRUE otherwise.
</return>
</function>

<function name="gst_uri_is_valid">
<description>
Tests if the given string is a valid URI identifier. URIs start with a valid
scheme followed by &quot;:&quot; and maybe a string identifying the location.


</description>
<parameters>
<parameter name="uri">
<parameter_description> A URI string
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the string is a valid URI
</return>
</function>

<function name="gst_element_lost_state">
<description>
Brings the element to the lost state. The current state of the
element is copied to the pending state so that any call to
gst_element_get_state() will return %GST_STATE_CHANGE_ASYNC.

An ASYNC_START message is posted with an indication to distribute a new
base_time to the element.
If the element was PLAYING, it will go to PAUSED. The element
will be restored to its PLAYING state by the parent pipeline when it
prerolls again.

This is mostly used for elements that lost their preroll buffer
in the %GST_STATE_PAUSED or %GST_STATE_PLAYING state after a flush,
they will go to their pending state again when a new preroll buffer is
queued. This function can only be called when the element is currently
not in error or an async state change.

This function is used internally and should normally not be called from
plugins or applications.

MT safe.

</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement the state is lost of
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_type_find_helper_get_range">
<description>
Utility function to do pull-based typefinding. Unlike gst_type_find_helper()
however, this function will use the specified function @func to obtain the
data needed by the typefind functions, rather than operating on a given
source pad. This is useful mostly for elements like tag demuxers which
strip off data at the beginning and/or end of a file and want to typefind
the stripped data stream before adding their own source pad (the specified
callback can then call the upstream peer pad with offsets adjusted for the
tag size, for example).

Returns #NULL if no #GstCaps matches the data stream.

</description>
<parameters>
<parameter name="obj">
<parameter_description> A #GstObject that will be passed as first argument to @func
</parameter_description>
</parameter>
<parameter name="func">
<parameter_description> A generic #GstTypeFindHelperGetRangeFunction that will be used
to access data at random offsets when doing the typefinding
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> The length in bytes
</parameter_description>
</parameter>
<parameter name="prob">
<parameter_description> location to store the probability of the found caps, or #NULL
</parameter_description>
</parameter>
</parameters>
<return>#NULL if no #GstCaps matches the data stream.
</return>
</function>

<function name="gst_element_factory_find">
<description>
Search for an element factory of the given name. Refs the returned
element factory; caller is responsible for unreffing.


</description>
<parameters>
<parameter name="name">
<parameter_description> name of factory to find
</parameter_description>
</parameter>
</parameters>
<return> #GstElementFactory if found, NULL otherwise
</return>
</function>

<function name="gst_ring_buffer_pause">
<description>
Pause processing samples from the ringbuffer.


</description>
<parameters>
<parameter name="buf">
<parameter_description> the #GstRingBuffer to pause
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the device could be paused, FALSE on error.

MT safe.
</return>
</function>

<function name="gst_mixer_message_parse_volume_changed">
<description>
Parses a volume-changed notification message and extracts the track object
it refers to, as well as an array of volumes and the size of the volumes array.

The track object remains valid until the message is freed.

The caller must free the array returned in the volumes parameter using g_free
when they are done with it.

Since: 0.10.14

</description>
<parameters>
<parameter name="message">
<parameter_description> A volume-changed change notification message.
</parameter_description>
</parameter>
<parameter name="track">
<parameter_description> Pointer to hold a GstMixerTrack object, or NULL.
</parameter_description>
</parameter>
<parameter name="volumes">
<parameter_description> A pointer to receive an array of gint values, or NULL.
</parameter_description>
</parameter>
<parameter name="num_channels">
<parameter_description> Result location to receive the number of channels, or NULL.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_sdp_message_as_text">
<description>
Convert the contents of @msg to a text string.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
</parameters>
<return> A dynamically allocated string representing the SDP description.
</return>
</function>

<function name="gst_buffer_stamp">
<description>
Copies additional information (the timestamp, duration, and offset start
and end) from one buffer to the other.

This function does not copy any buffer flags or caps and is equivalent to
gst_buffer_copy_metadata(@dest, @src, GST_BUFFER_COPY_TIMESTAMPS).

Deprecated: use gst_buffer_copy_metadata() instead, it provides more
control.

</description>
<parameters>
<parameter name="dest">
<parameter_description> buffer to stamp
</parameter_description>
</parameter>
<parameter name="src">
<parameter_description> buffer to stamp from
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtsp_connection_next_timeout">
<description>
Calculate the next timeout for @conn, storing the result in @timeout.


</description>
<parameters>
<parameter name="conn">
<parameter_description> a #GstRTSPConnection
</parameter_description>
</parameter>
<parameter name="timeout">
<parameter_description> a timeout
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK.
</return>
</function>

<function name="gst_pad_query_peer_duration">
<description>
Queries the peer pad of a given sink pad for the total stream duration.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad on whose peer pad to invoke the duration query on.
Must be a sink pad.
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> a pointer to the #GstFormat asked for.
On return contains the #GstFormat used.
</parameter_description>
</parameter>
<parameter name="duration">
<parameter_description> A location in which to store the total duration, or NULL.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the query could be performed.
</return>
</function>

<function name="gst_element_factory_can_src_caps">
<description>
Checks if the factory can source the given capability.


</description>
<parameters>
<parameter name="factory">
<parameter_description> factory to query
</parameter_description>
</parameter>
<parameter name="caps">
<parameter_description> the caps to check
</parameter_description>
</parameter>
</parameters>
<return> true if it can src the capabilities
</return>
</function>

<function name="gst_registry_add_path">
<description>
Add the given path to the registry. The syntax of the
path is specific to the registry. If the path has already been
added, do nothing.

</description>
<parameters>
<parameter name="registry">
<parameter_description> the registry to add the path to
</parameter_description>
</parameter>
<parameter name="path">
<parameter_description> the path to add to the registry
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_tag_from_vorbis_tag">
<description>
Looks up the GStreamer tag for a vorbiscomment tag.


</description>
<parameters>
<parameter name="vorbis_tag">
<parameter_description> vorbiscomment tag to convert to GStreamer tag
</parameter_description>
</parameter>
</parameters>
<return> The corresponding GStreamer tag or NULL if none exists.
</return>
</function>

<function name="gst_index_set_resolver">
<description>
Lets the app register a custom function to map index
ids to writer descriptions.

</description>
<parameters>
<parameter name="index">
<parameter_description> the index to register the resolver on
</parameter_description>
</parameter>
<parameter name="resolver">
<parameter_description> the resolver to register
</parameter_description>
</parameter>
<parameter name="user_data">
<parameter_description> data passed to the resolver function
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_base_audio_src_create_ringbuffer">
<description>
Create and return the #GstRingBuffer for @src. This function will call the
::create_ringbuffer vmethod and will set @src as the parent of the returned
buffer (see gst_object_set_parent()).


</description>
<parameters>
<parameter name="src">
<parameter_description> a #GstBaseAudioSrc.
</parameter_description>
</parameter>
</parameters>
<return> The new ringbuffer of @src.
</return>
</function>

<function name="gst_query_type_get_details">
<description>
Get details about the given #GstQueryType.


</description>
<parameters>
<parameter name="type">
<parameter_description> a #GstQueryType
</parameter_description>
</parameter>
</parameters>
<return> The #GstQueryTypeDefinition for @type or NULL on failure.
</return>
</function>

<function name="gst_message_set_buffering_stats">
<description>
Configures the buffering stats values in @message.

Since: 0.10.20

</description>
<parameters>
<parameter name="message">
<parameter_description> A valid #GstMessage of type GST_MESSAGE_BUFFERING.
</parameter_description>
</parameter>
<parameter name="mode">
<parameter_description> a buffering mode 
</parameter_description>
</parameter>
<parameter name="avg_in">
<parameter_description> the average input rate
</parameter_description>
</parameter>
<parameter name="avg_out">
<parameter_description> the average output rate
</parameter_description>
</parameter>
<parameter name="buffering_left">
<parameter_description> amount of buffering time left in milliseconds
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_riff_parse_chunk">
<description>
Reads a single chunk.


</description>
<parameters>
<parameter name="element">
<parameter_description> caller element (used for debugging).
</parameter_description>
</parameter>
<parameter name="buf">
<parameter_description> input buffer.
</parameter_description>
</parameter>
<parameter name="offset">
<parameter_description> offset in the buffer in the caller. Is incremented
by the read size by this function.
</parameter_description>
</parameter>
<parameter name="fourcc">
<parameter_description> fourcc (returned by this function0 of the chunk.
</parameter_description>
</parameter>
<parameter name="chunk_data">
<parameter_description> buffer (returned by the function) containing the
chunk data.
</parameter_description>
</parameter>
</parameters>
<return> the fourcc tag of this chunk, or FALSE on error
</return>
</function>

<function name="gst_tag_list_get_uint_index">
<description>
Gets the value that is at the given index for the given tag in the given
list.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList to get the tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
<parameter name="index">
<parameter_description> number of entry to read out
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> location for the result
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if a value was copied, FALSE if the tag didn&apos;t exist in the
given list.
</return>
</function>

<function name="gst_riff_parse_strf_vids">
<description>
Parses a video stream´s strf structure plus optionally some
extradata from input data. This function takes ownership of @buf.


</description>
<parameters>
<parameter name="element">
<parameter_description> caller element (used for debugging/error).
</parameter_description>
</parameter>
<parameter name="buf">
<parameter_description> input data to be used for parsing, stripped from header.
</parameter_description>
</parameter>
<parameter name="strf">
<parameter_description> a pointer (returned by this function) to a filled-in
strf/vids structure. Caller should free it.
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> a pointer (returned by this function) to a buffer
containing extradata for this particular stream (e.g.
palette, codec initialization data).
</parameter_description>
</parameter>
</parameters>
<return> TRUE if parsing succeeded, otherwise FALSE. The stream
should be skipped on error, but it is not fatal.
</return>
</function>

<function name="gst_base_transform_set_gap_aware">
<description>
If @gap_aware is %FALSE (the default), output buffers will have the
%GST_BUFFER_FLAG_GAP flag unset.

If set to %TRUE, the element must handle output buffers with this flag set
correctly, i.e. it can assume that the buffer contains neutral data but must
unset the flag if the output is no neutral data.

MT safe.

Since: 0.10.16

</description>
<parameters>
<parameter name="trans">
<parameter_description> a #GstBaseTransform
</parameter_description>
</parameter>
<parameter name="gap_aware">
<parameter_description> New state
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_index_add_format">
<description>
Adds a format entry into the index. This function is
used to map dynamic GstFormat ids to their original
format key.


</description>
<parameters>
<parameter name="index">
<parameter_description> the index to add the entry to
</parameter_description>
</parameter>
<parameter name="id">
<parameter_description> the id of the index writer
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> the format to add to the index
</parameter_description>
</parameter>
</parameters>
<return> a pointer to the newly added entry in the index.
</return>
</function>

<function name="gst_pad_can_link">
<description>
Checks if the source pad and the sink pad can be linked.
Both @srcpad and @sinkpad must be unlinked.


</description>
<parameters>
<parameter name="srcpad">
<parameter_description> the source #GstPad to link.
</parameter_description>
</parameter>
<parameter name="sinkpad">
<parameter_description> the sink #GstPad to link.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the pads can be linked, FALSE otherwise.
</return>
</function>

<function name="gst_base_sink_set_async_enabled">
<description>
Configures @sink to perform all state changes asynchronusly. When async is
disabled, the sink will immediatly go to PAUSED instead of waiting for a
preroll buffer. This feature is usefull if the sink does not synchronize
against the clock or when it is dealing with sparse streams.

Since: 0.10.15

</description>
<parameters>
<parameter name="sink">
<parameter_description> the sink
</parameter_description>
</parameter>
<parameter name="enabled">
<parameter_description> the new async value.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_static_pad_template_get">
<description>
Converts a #GstStaticPadTemplate into a #GstPadTemplate.


</description>
<parameters>
<parameter name="pad_template">
<parameter_description> the static pad template
</parameter_description>
</parameter>
</parameters>
<return> a new #GstPadTemplate.
</return>
</function>

<function name="gst_trace_read_tsc">
<description>
Read a platform independent timer value that can be used in
benchmarks.

</description>
<parameters>
<parameter name="dst">
<parameter_description> pointer to hold the result.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_iterator_foreach">
<description>
Iterate over all element of @it and call the given function @func for
each element.


</description>
<parameters>
<parameter name="it">
<parameter_description> The #GstIterator to iterate
</parameter_description>
</parameter>
<parameter name="func">
<parameter_description> the function to call for each element.
</parameter_description>
</parameter>
<parameter name="user_data">
<parameter_description> user data passed to the function
</parameter_description>
</parameter>
</parameters>
<return> the result call to gst_iterator_fold(). The iterator will not be
freed.

MT safe.
</return>
</function>

<function name="gst_element_make_from_uri">
<description>
Creates an element for handling the given URI.


</description>
<parameters>
<parameter name="type">
<parameter_description> Whether to create a source or a sink
</parameter_description>
</parameter>
<parameter name="uri">
<parameter_description> URI to create an element for
</parameter_description>
</parameter>
<parameter name="elementname">
<parameter_description> Name of created element, can be NULL.
</parameter_description>
</parameter>
</parameters>
<return> a new element or NULL if none could be created
</return>
</function>

<function name="gst_rtp_buffer_set_seq">
<description>
Set the sequence number of the RTP packet in @buffer to @seq.

</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer
</parameter_description>
</parameter>
<parameter name="seq">
<parameter_description> the new sequence number
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_tag_list_get_float">
<description>
Copies the contents for the given tag into the value, merging multiple values
into one if multiple values are associated with the tag.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList to get the tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> location for the result
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if a value was copied, FALSE if the tag didn&apos;t exist in the
given list.
</return>
</function>

<function name="gst_tag_list_get_pointer">
<description>
Copies the contents for the given tag into the value, merging multiple values
into one if multiple values are associated with the tag.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList to get the tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> location for the result
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if a value was copied, FALSE if the tag didn&apos;t exist in the
given list.
</return>
</function>

<function name="gst_rtp_buffer_set_marker">
<description>
Set the marker bit on the RTP packet in @buffer to @marker.

</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer
</parameter_description>
</parameter>
<parameter name="marker">
<parameter_description> the new marker
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_value_init_and_copy">
<description>
Initialises the target value to be of the same type as source and then copies
the contents from source to target.

</description>
<parameters>
<parameter name="dest">
<parameter_description> the target value
</parameter_description>
</parameter>
<parameter name="src">
<parameter_description> the source value
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_controller_set_from_list">
<description>
Sets multiple timed values at once.

Deprecated: Use #GstControlSource, for example #GstInterpolationControlSource
directly.


</description>
<parameters>
<parameter name="self">
<parameter_description> the controller object which handles the properties
</parameter_description>
</parameter>
<parameter name="property_name">
<parameter_description> the name of the property to set
</parameter_description>
</parameter>
<parameter name="timedvalues">
<parameter_description> a list with #GstTimedValue items
</parameter_description>
</parameter>
</parameters>
<return> %FALSE if the values couldn&apos;t be set (ex : properties not handled by controller), %TRUE otherwise
</return>
</function>

<function name="gst_child_proxy_child_removed">
<description>
Emits the &quot;child-removed&quot; signal.

</description>
<parameters>
<parameter name="object">
<parameter_description> the parent object
</parameter_description>
</parameter>
<parameter name="child">
<parameter_description> the removed child
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_byte_reader_get_int8">
<description>
Read a signed 8 bit integer into @val and update the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #gint8 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_message_new_state_changed">
<description>
Create a state change message. This message is posted whenever an element
changed its state.


</description>
<parameters>
<parameter name="src">
<parameter_description> the object originating the message
</parameter_description>
</parameter>
<parameter name="oldstate">
<parameter_description> the previous state
</parameter_description>
</parameter>
<parameter name="newstate">
<parameter_description> the new (current) state
</parameter_description>
</parameter>
<parameter name="pending">
<parameter_description> the pending (target) state
</parameter_description>
</parameter>
</parameters>
<return> The new state change message.

MT safe.
</return>
</function>

<function name="gst_parse_launch_full">
<description>
Create a new pipeline based on command line syntax.
Please note that you might get a return value that is not %NULL even though
the @error is set. In this case there was a recoverable parsing error and you
can try to play the pipeline.


</description>
<parameters>
<parameter name="pipeline_description">
<parameter_description> the command line describing the pipeline
</parameter_description>
</parameter>
<parameter name="context">
<parameter_description> a parse context allocated with gst_parse_context_new(), or %NULL
</parameter_description>
</parameter>
<parameter name="flags">
<parameter_description> parsing options, or #GST_PARSE_FLAG_NONE
</parameter_description>
</parameter>
<parameter name="error">
<parameter_description> the error message in case of an erroneous pipeline.
</parameter_description>
</parameter>
</parameters>
<return> a new element on success, %NULL on failure. If more than one toplevel
element is specified by the @pipeline_description, all elements are put into
a #GstPipeline, which then is returned.

Since: 0.10.20
</return>
</function>

<function name="gst_element_unlink_many">
<description>
Unlinks a series of elements. Uses gst_element_unlink().

</description>
<parameters>
<parameter name="element_1">
<parameter_description> the first #GstElement in the link chain.
</parameter_description>
</parameter>
<parameter name="element_2">
<parameter_description> the second #GstElement in the link chain.
</parameter_description>
</parameter>
<parameter name="Varargs">
<parameter_description> the NULL-terminated list of elements to unlink in order.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_query_new_segment">
<description>
Constructs a new segment query object. Use gst_query_unref()
when done with it. A segment query is used to discover information about the
currently configured segment for playback.


</description>
<parameters>
<parameter name="format">
<parameter_description> the #GstFormat for the new query
</parameter_description>
</parameter>
</parameters>
<return> a #GstQuery
</return>
</function>

<function name="gst_interpolation_control_source_set">
<description>
Set the value of given controller-handled property at a certain time.


</description>
<parameters>
<parameter name="self">
<parameter_description> the #GstInterpolationControlSource object
</parameter_description>
</parameter>
<parameter name="timestamp">
<parameter_description> the time the control-change is scheduled for
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> the control-value
</parameter_description>
</parameter>
</parameters>
<return> FALSE if the values couldn&apos;t be set, TRUE otherwise.
</return>
</function>

<function name="gst_rtcp_packet_add_rb">
<description>
Add a new report block to @packet with the given values.


</description>
<parameters>
<parameter name="packet">
<parameter_description> a valid SR or RR #GstRTCPPacket
</parameter_description>
</parameter>
<parameter name="ssrc">
<parameter_description> data source being reported
</parameter_description>
</parameter>
<parameter name="fractionlost">
<parameter_description> fraction lost since last SR/RR
</parameter_description>
</parameter>
<parameter name="packetslost">
<parameter_description> the cumululative number of packets lost
</parameter_description>
</parameter>
<parameter name="exthighestseq">
<parameter_description> the extended last sequence number received
</parameter_description>
</parameter>
<parameter name="jitter">
<parameter_description> the interarrival jitter
</parameter_description>
</parameter>
<parameter name="lsr">
<parameter_description> the last SR packet from this source
</parameter_description>
</parameter>
<parameter name="dlsr">
<parameter_description> the delay since last SR packet
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the packet was created. This function can return %FALSE if
the max MTU is exceeded or the number of report blocks is greater than
#GST_RTCP_MAX_RB_COUNT.
</return>
</function>

<function name="gst_debug_set_active">
<description>
If activated, debugging messages are sent to the debugging
handlers.
It makes sense to deactivate it for speed issues.
&amp;lt;note&amp;gt;&amp;lt;para&amp;gt;This function is not threadsafe. It makes sense to only call it
during initialization.&amp;lt;/para&amp;gt;&amp;lt;/note&amp;gt;

</description>
<parameters>
<parameter name="active">
<parameter_description> Whether to use debugging output or not
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtsp_connection_get_ip">
<description>
Retrieve the IP address of the other end of @conn.


</description>
<parameters>
<parameter name="conn">
<parameter_description> a #GstRTSPConnection
</parameter_description>
</parameter>
</parameters>
<return> The IP address as a string.

Since: 0.10.20
</return>
</function>

<function name="gst_plugin_feature_list_free">
<description>
Unrefs each member of @list, then frees the list.

</description>
<parameters>
<parameter name="list">
<parameter_description> list of #GstPluginFeature
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_tag_list_get_long">
<description>
Copies the contents for the given tag into the value, merging multiple values
into one if multiple values are associated with the tag.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList to get the tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> location for the result
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if a value was copied, FALSE if the tag didn&apos;t exist in the
given list.
</return>
</function>

<function name="gst_rtsp_base64_decode_ip">
<description>
Decode the base64 string pointed to by @data in-place. When @len is not #NULL
it will contain the length of the decoded data.

</description>
<parameters>
<parameter name="data">
<parameter_description> the base64 encoded data
</parameter_description>
</parameter>
<parameter name="len">
<parameter_description> location for output length or NULL
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_add_data_probe_full">
<description>
Adds a &quot;data probe&quot; to a pad. This function will be called whenever data
passes through a pad. In this case data means both events and buffers. The
probe will be called with the data as an argument, meaning @handler should
have the same callback signature as the #GstPad::have-data signal.
Note that the data will have a reference count greater than 1, so it will
be immutable -- you must not change it.

For source pads, the probe will be called after the blocking function, if any
(see gst_pad_set_blocked_async()), but before looking up the peer to chain
to. For sink pads, the probe function will be called before configuring the
sink with new caps, if any, and before calling the pad&apos;s chain function.

Your data probe should return TRUE to let the data continue to flow, or FALSE
to drop it. Dropping data is rarely useful, but occasionally comes in handy
with events.

Although probes are implemented internally by connecting @handler to the
have-data signal on the pad, if you want to remove a probe it is insufficient
to only call g_signal_handler_disconnect on the returned handler id. To
remove a probe, use the appropriate function, such as
gst_pad_remove_data_probe().

The @notify function is called when the probe is disconnected and usually
used to free @data.


</description>
<parameters>
<parameter name="pad">
<parameter_description> pad to add the data probe handler to
</parameter_description>
</parameter>
<parameter name="handler">
<parameter_description> function to call when data is passed over pad
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> data to pass along with the handler
</parameter_description>
</parameter>
<parameter name="notify">
<parameter_description> function to call when the probe is disconnected, or NULL
</parameter_description>
</parameter>
</parameters>
<return> The handler id.

Since: 0.10.20
</return>
</function>

<function name="gst_dp_validate_packet">
<description>
Validates the given packet by checking version information and checksums.


</description>
<parameters>
<parameter name="header_length">
<parameter_description> the length of the packet header
</parameter_description>
</parameter>
<parameter name="header">
<parameter_description> the byte array of the packet header
</parameter_description>
</parameter>
<parameter name="payload">
<parameter_description> the byte array of the packet payload
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the packet validates.
</return>
</function>

<function name="gst_rtsp_connection_set_auth">
<description>
Configure @conn for authentication mode @method with @user and @pass as the
user and password respectively.


</description>
<parameters>
<parameter name="conn">
<parameter_description> a #GstRTSPConnection
</parameter_description>
</parameter>
<parameter name="method">
<parameter_description> authentication method
</parameter_description>
</parameter>
<parameter name="user">
<parameter_description> the user
</parameter_description>
</parameter>
<parameter name="pass">
<parameter_description> the password
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK.
</return>
</function>

<function name="gst_rtp_buffer_calc_packet_len">
<description>
Calculate the total length of an RTP packet with a payload size of @payload_len,
a padding of @pad_len and a @csrc_count CSRC entries.


</description>
<parameters>
<parameter name="payload_len">
<parameter_description> the length of the payload
</parameter_description>
</parameter>
<parameter name="pad_len">
<parameter_description> the amount of padding
</parameter_description>
</parameter>
<parameter name="csrc_count">
<parameter_description> the number of CSRC entries
</parameter_description>
</parameter>
</parameters>
<return> The total length of an RTP header with given parameters.
</return>
</function>

<function name="gst_value_array_prepend_value">
<description>
Prepends @prepend_value to the GstValueArray in @value.

</description>
<parameters>
<parameter name="value">
<parameter_description> a #GValue of type #GST_TYPE_ARRAY
</parameter_description>
</parameter>
<parameter name="prepend_value">
<parameter_description> the value to prepend
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_video_format_is_rgb">
<description>
Determine whether the video format is an RGB format.

Since: 0.10.16


</description>
<parameters>
<parameter name="format">
<parameter_description> a #GstVideoFormat
</parameter_description>
</parameter>
</parameters>
<return> TRUE if @format represents RGB video
</return>
</function>

<function name="gst_message_new_segment_start">
<description>
Create a new segment message. This message is posted by elements that
start playback of a segment as a result of a segment seek. This message
is not received by the application but is used for maintenance reasons in
container elements.


</description>
<parameters>
<parameter name="src">
<parameter_description> The object originating the message.
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> The format of the position being played
</parameter_description>
</parameter>
<parameter name="position">
<parameter_description> The position of the segment being played
</parameter_description>
</parameter>
</parameters>
<return> The new segment start message.

MT safe.
</return>
</function>

<function name="gst_caps_set_simple_valist">
<description>
Sets fields in a simple #GstCaps.  A simple #GstCaps is one that
only has one structure.  The arguments must be passed in the same
manner as gst_structure_set(), and be NULL-terminated.

</description>
<parameters>
<parameter name="caps">
<parameter_description> the #GstCaps to copy
</parameter_description>
</parameter>
<parameter name="field">
<parameter_description> first field to set
</parameter_description>
</parameter>
<parameter name="varargs">
<parameter_description> additional parameters
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_event_new_seek">
<description>
Allocate a new seek event with the given parameters.

The seek event configures playback of the pipeline between @start to @stop
at the speed given in @rate, also called a playback segment.
The @start and @stop values are expressed in @format.

A @rate of 1.0 means normal playback rate, 2.0 means double speed.
Negatives values means backwards playback. A value of 0.0 for the
rate is not allowed and should be accomplished instead by PAUSING the
pipeline.

A pipeline has a default playback segment configured with a start
position of 0, a stop position of -1 and a rate of 1.0. The currently
configured playback segment can be queried with #GST_QUERY_SEGMENT. 

@start_type and @stop_type specify how to adjust the currently configured 
start and stop fields in playback segment. Adjustments can be made relative
or absolute to the last configured values. A type of #GST_SEEK_TYPE_NONE
means that the position should not be updated.

When the rate is positive and @start has been updated, playback will start
from the newly configured start position. 

For negative rates, playback will start from the newly configured stop
position (if any). If the stop position if updated, it must be different from
-1 for negative rates.

It is not possible to seek relative to the current playback position, to do
this, PAUSE the pipeline, query the current playback position with
#GST_QUERY_POSITION and update the playback segment current position with a
#GST_SEEK_TYPE_SET to the desired position. 


</description>
<parameters>
<parameter name="rate">
<parameter_description> The new playback rate
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> The format of the seek values
</parameter_description>
</parameter>
<parameter name="flags">
<parameter_description> The optional seek flags
</parameter_description>
</parameter>
<parameter name="start_type">
<parameter_description> The type and flags for the new start position
</parameter_description>
</parameter>
<parameter name="start">
<parameter_description> The value of the new start position
</parameter_description>
</parameter>
<parameter name="stop_type">
<parameter_description> The type and flags for the new stop position
</parameter_description>
</parameter>
<parameter name="stop">
<parameter_description> The value of the new stop position
</parameter_description>
</parameter>
</parameters>
<return> A new seek event.
</return>
</function>

<function name="gst_event_new_flush_start">
<description>
Allocate a new flush start event. The flush start event can be sent
upstream and downstream and travels out-of-bounds with the dataflow.

It marks pads as being flushing and will make them return
#GST_FLOW_WRONG_STATE when used for data flow with gst_pad_push(),
gst_pad_chain(), gst_pad_alloc_buffer(), gst_pad_get_range() and
gst_pad_pull_range(). Any event (except a #GST_EVENT_FLUSH_STOP) received
on a flushing pad will return %FALSE immediately.

Elements should unlock any blocking functions and exit their streaming
functions as fast as possible when this event is received.

This event is typically generated after a seek to flush out all queued data
in the pipeline so that the new media is played as soon as possible.


</description>
<parameters>
</parameters>
<return> A new flush start event.
</return>
</function>

<function name="gst_pipeline_set_new_stream_time">
<description>
Set the new stream time of @pipeline to @time. The stream time is used to
set the base time on the elements (see gst_element_set_base_time())
in the PAUSED-&amp;gt;PLAYING state transition.

Setting @time to #GST_CLOCK_TIME_NONE will disable the pipeline&apos;s management
of element base time. The application will then be responsible for
performing base time distribution. This is sometimes useful if you want to
synchronize capture from multiple pipelines, and you can also ensure that the
pipelines have the same clock.

MT safe.

</description>
<parameters>
<parameter name="pipeline">
<parameter_description> a #GstPipeline
</parameter_description>
</parameter>
<parameter name="time">
<parameter_description> the new stream time to set
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_static_pad_template_get_caps">
<description>
Gets the capabilities of the static pad template.


</description>
<parameters>
<parameter name="templ">
<parameter_description> a #GstStaticPadTemplate to get capabilities of.
</parameter_description>
</parameter>
</parameters>
<return> the #GstCaps of the static pad template. If you need to keep a
reference to the caps, take a ref (see gst_caps_ref ()).
</return>
</function>

<function name="gst_pad_query">
<description>
Dispatches a query to a pad. The query should have been allocated by the
caller via one of the type-specific allocation functions in gstquery.h. The
element is responsible for filling the query with an appropriate response,
which should then be parsed with a type-specific query parsing function.

Again, the caller is responsible for both the allocation and deallocation of
the query structure.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad to invoke the default query on.
</parameter_description>
</parameter>
<parameter name="query">
<parameter_description> the #GstQuery to perform.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the query could be performed.
</return>
</function>

<function name="gst_byte_reader_peek_int8">
<description>
Read a signed 8 bit integer into @val but keep the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #gint8 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_event_new_eos">
<description>
Create a new EOS event. The eos event can only travel downstream
synchronized with the buffer flow. Elements that receive the EOS
event on a pad can return #GST_FLOW_UNEXPECTED as a #GstFlowReturn
when data after the EOS event arrives.

The EOS event will travel down to the sink elements in the pipeline
which will then post the #GST_MESSAGE_EOS on the bus after they have
finished playing any buffered data.

When all sinks have posted an EOS message, an EOS message is
forwarded to the application.


</description>
<parameters>
</parameters>
<return> The new EOS event.
</return>
</function>

<function name="gst_child_proxy_set_valist">
<description>
Sets properties of the parent object and its children.

</description>
<parameters>
<parameter name="object">
<parameter_description> the parent object
</parameter_description>
</parameter>
<parameter name="first_property_name">
<parameter_description> name of the first property to set
</parameter_description>
</parameter>
<parameter name="var_args">
<parameter_description> value for the first property, followed optionally by more name/value pairs, followed by NULL
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_structure_copy">
<description>
Duplicates a #GstStructure and all its fields and values.


</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure to duplicate
</parameter_description>
</parameter>
</parameters>
<return> a new #GstStructure.
</return>
</function>

<function name="gst_byte_reader_get_int64_be">
<description>
Read a signed 64 bit big endian integer into @val
and update the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #gint64 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_query_get_structure">
<description>
Get the structure of a query.


</description>
<parameters>
<parameter name="query">
<parameter_description> a #GstQuery
</parameter_description>
</parameter>
</parameters>
<return> The #GstStructure of the query. The structure is still owned
by the query and will therefore be freed when the query is unreffed.
</return>
</function>

<function name="gst_index_add_object">
<description>
Add the given object to the index with the given key.

This function is not yet implemented.


</description>
<parameters>
<parameter name="index">
<parameter_description> the index to add the object to
</parameter_description>
</parameter>
<parameter name="id">
<parameter_description> the id of the index writer
</parameter_description>
</parameter>
<parameter name="key">
<parameter_description> a key for the object
</parameter_description>
</parameter>
<parameter name="type">
<parameter_description> the GType of the object
</parameter_description>
</parameter>
<parameter name="object">
<parameter_description> a pointer to the object to add
</parameter_description>
</parameter>
</parameters>
<return> a pointer to the newly added entry in the index.
</return>
</function>

<function name="gst_tag_to_vorbis_tag">
<description>
Looks up the vorbiscomment tag for a GStreamer tag.


</description>
<parameters>
<parameter name="gst_tag">
<parameter_description> GStreamer tag to convert to vorbiscomment tag
</parameter_description>
</parameter>
</parameters>
<return> The corresponding vorbiscomment tag or NULL if none exists.
</return>
</function>

<function name="gst_rtsp_find_method">
<description>
Convert @method to a #GstRTSPMethod.


</description>
<parameters>
<parameter name="method">
<parameter_description> a method
</parameter_description>
</parameter>
</parameters>
<return> a #GstRTSPMethod for @method or #GST_RTSP_INVALID if the
method is unknown.
</return>
</function>

<function name="gst_query_parse_formats_nth">
<description>
Parse the format query and retrieve the @nth format from it into 
@format. If the list contains less elements than @nth, @format will be
set to GST_FORMAT_UNDEFINED.

Since: 0.10.4

</description>
<parameters>
<parameter name="query">
<parameter_description> a #GstQuery
</parameter_description>
</parameter>
<parameter name="nth">
<parameter_description> the nth format to retrieve.
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> a pointer to store the nth format
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_registry_get_plugin_list">
<description>
Get a copy of all plugins registered in the given registry. The refcount
of each element in the list in incremented.


</description>
<parameters>
<parameter name="registry">
<parameter_description> the registry to search
</parameter_description>
</parameter>
</parameters>
<return> a #GList of #GstPlugin. Use gst_plugin_list_free() after usage.

MT safe.
</return>
</function>

<function name="gst_pad_save_thyself">
<description>
Saves the pad into an xml representation.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad to save.
</parameter_description>
</parameter>
<parameter name="parent">
<parameter_description> the parent #xmlNodePtr to save the description in.
</parameter_description>
</parameter>
</parameters>
<return> the #xmlNodePtr representation of the pad.
</return>
</function>

<function name="gst_ghost_pad_new">
<description>
Create a new ghostpad with @target as the target. The direction will be taken
from the target pad. @target must be unlinked.

Will ref the target.


</description>
<parameters>
<parameter name="name">
<parameter_description> the name of the new pad, or NULL to assign a default name.
</parameter_description>
</parameter>
<parameter name="target">
<parameter_description> the pad to ghost.
</parameter_description>
</parameter>
</parameters>
<return> a new #GstPad, or NULL in case of an error.
</return>
</function>

<function name="gst_value_can_intersect">
<description>
Determines if intersecting two values will produce a valid result.
Two values will produce a valid intersection if they have the same
type, or if there is a method (registered by
gst_value_register_intersection_func()) to calculate the intersection.


</description>
<parameters>
<parameter name="value1">
<parameter_description> a value to intersect
</parameter_description>
</parameter>
<parameter name="value2">
<parameter_description> another value to intersect
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the values can intersect
</return>
</function>

<function name="gst_object_control_properties">
<description>
Convenience function for GObject

Creates a GstController that allows you to dynamically control one, or more, GObject properties.
If the given GObject already has a GstController, it adds the given properties to the existing
controller and returns that controller.


</description>
<parameters>
<parameter name="object">
<parameter_description> the object of which some properties should be controlled
</parameter_description>
</parameter>
<parameter name="Varargs">
<parameter_description> %NULL terminated list of property names that should be controlled
</parameter_description>
</parameter>
</parameters>
<return> The GstController with which the user can control the given properties dynamically or NULL if
one or more of the given properties aren&apos;t available, or cannot be controlled, for the given element.
Since: 0.9
</return>
</function>

<function name="gst_dp_buffer_from_header">
<description>
Creates a newly allocated #GstBuffer from the given header.
The buffer data needs to be copied into it before validating.

Use this function if you want to pre-allocate a buffer based on the
packet header to read the packet payload in to.

This function does not check the header passed to it, use
gst_dp_validate_header() first if the header data is unchecked.


</description>
<parameters>
<parameter name="header_length">
<parameter_description> the length of the packet header
</parameter_description>
</parameter>
<parameter name="header">
<parameter_description> the byte array of the packet header
</parameter_description>
</parameter>
</parameters>
<return> A #GstBuffer if the buffer was successfully created, or NULL.
</return>
</function>

<function name="gst_sdp_message_add_email">
<description>
Add @email to the list of emails in @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
<parameter name="email">
<parameter_description> an email
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPResult.
</return>
</function>

<function name="gst_controller_remove_properties">
<description>
Removes the given object properties from the controller


</description>
<parameters>
<parameter name="self">
<parameter_description> the controller object from which some properties should be removed
</parameter_description>
</parameter>
<parameter name="Varargs">
<parameter_description> %NULL terminated list of property names that should be removed
</parameter_description>
</parameter>
</parameters>
<return> %FALSE if one of the given property isn&apos;t handled by the controller, %TRUE otherwise
</return>
</function>

<function name="gst_object_get_control_source">
<description>
Gets the corresponding #GstControlSource for the property. This should be unreferenced
again after use.


</description>
<parameters>
<parameter name="object">
<parameter_description> the object
</parameter_description>
</parameter>
<parameter name="property_name">
<parameter_description> name of the property for which the #GstControlSource should be get
</parameter_description>
</parameter>
</parameters>
<return> the #GstControlSource for @property_name or NULL if the property is not
controlled by this controller or no #GstControlSource was assigned yet.

Since: 0.10.14
</return>
</function>

<function name="gst_sdp_message_get_connection">
<description>
Get the connection of @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPConnection. The result remains valid as long as @msg is valid.
</return>
</function>

<function name="gst_sdp_media_as_text">
<description>
Convert the contents of @media to a text string.


</description>
<parameters>
<parameter name="media">
<parameter_description> a #GstSDPMedia
</parameter_description>
</parameter>
</parameters>
<return> A dynamically allocated string representing the media.
</return>
</function>

<function name="gst_netaddress_get_ip6_address">
<description>
Get the IPv6 address stored in @naddr into @address.

If @naddr is of type GST_NET_TYPE_IP4, the transitional IP6 address is
returned.


</description>
<parameters>
<parameter name="naddr">
<parameter_description> a network address
</parameter_description>
</parameter>
<parameter name="address">
<parameter_description> a location to store the result.
</parameter_description>
</parameter>
<parameter name="port">
<parameter_description> a location to store the port.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the address could be retrieved.
</return>
</function>

<function name="gst_rtp_buffer_set_version">
<description>
Set the version of the RTP packet in @buffer to @version.

</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer
</parameter_description>
</parameter>
<parameter name="version">
<parameter_description> the new version
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_plugin_get_filename">
<description>
get the filename of the plugin


</description>
<parameters>
<parameter name="plugin">
<parameter_description> plugin to get the filename of
</parameter_description>
</parameter>
</parameters>
<return> the filename of the plugin
</return>
</function>

<function name="gst_tuner_find_norm_by_name">
<description>
Look up a #GstTunerNorm by name.


</description>
<parameters>
<parameter name="tuner">
<parameter_description> A #GstTuner instance
</parameter_description>
</parameter>
<parameter name="norm">
<parameter_description> A string containing the name of a #GstTunerNorm
</parameter_description>
</parameter>
</parameters>
<return> A #GstTunerNorm, or NULL if no norm with the provided name
is available.
</return>
</function>

<function name="gst_debug_is_colored">
<description>
Checks if the debugging output should be colored.


</description>
<parameters>
</parameters>
<return> TRUE, if the debug output should be colored.
</return>
</function>

<function name="gst_structure_fixate_field_nearest_double">
<description>
Fixates a #GstStructure by changing the given field to the nearest
double to @target that is a subset of the existing field.


</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="field_name">
<parameter_description> a field in @structure
</parameter_description>
</parameter>
<parameter name="target">
<parameter_description> the target value of the fixation
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the structure could be fixated
</return>
</function>

<function name="gst_adapter_take">
<description>
Returns: oven-fresh hot data, or #NULL if @nbytes bytes are not available

</description>
<parameters>
<parameter name="adapter">
<parameter_description> a #GstAdapter
</parameter_description>
</parameter>
<parameter name="nbytes">
<parameter_description> the number of bytes to take
</parameter_description>
</parameter>
</parameters>
<return> oven-fresh hot data, or #NULL if @nbytes bytes are not available
</return>
</function>

<function name="gst_tag_list_add_valist">
<description>
Sets the values for the given tags using the specified mode.

</description>
<parameters>
<parameter name="list">
<parameter_description> list to set tags in
</parameter_description>
</parameter>
<parameter name="mode">
<parameter_description> the mode to use
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag
</parameter_description>
</parameter>
<parameter name="var_args">
<parameter_description> tag / value pairs to set
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_xml_parse_memory">
<description>
Fills the GstXML object with the corresponding elements from
an in memory XML buffer.


</description>
<parameters>
<parameter name="xml">
<parameter_description> a pointer to a GstXML object
</parameter_description>
</parameter>
<parameter name="buffer">
<parameter_description> a pointer to the in memory XML buffer
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> the size of the buffer
</parameter_description>
</parameter>
<parameter name="root">
<parameter_description> the name of the root objects to build
</parameter_description>
</parameter>
</parameters>
<return> TRUE on success
</return>
</function>

<function name="gst_tuner_signal_changed">
<description>
Called by elements implementing the #GstTuner interface when the
incoming signal strength changes. Fires the #GstTuner::signal-changed
signal on the tuner and the #GstTunerChannel::signal-changed signal on 
the channel.

</description>
<parameters>
<parameter name="tuner">
<parameter_description> A #GstTuner instance
</parameter_description>
</parameter>
<parameter name="channel">
<parameter_description> The current #GstTunerChannel
</parameter_description>
</parameter>
<parameter name="signal">
<parameter_description> The new signal strength
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtcp_buffer_end">
<description>
Finish @buffer after being constructured. This function is usually called
after gst_rtcp_buffer_new() and after adding the RTCP items to the new buffer. 

The function adjusts the size of @buffer with the total length of all the
added packets.

</description>
<parameters>
<parameter name="buffer">
<parameter_description> a buffer with an RTCP packet
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_install_plugins_context_new">
<description>
Creates a new #GstInstallPluginsContext.


</description>
<parameters>
</parameters>
<return> a new #GstInstallPluginsContext. Free with
gst_install_plugins_context_free() when no longer needed

Since: 0.10.12
</return>
</function>

<function name="gst_base_rtp_audio_payload_set_samplebits_options">
<description>
Sets the options for sample based audio codecs.

Since: 0.10.18

</description>
<parameters>
<parameter name="basertpaudiopayload">
<parameter_description> a pointer to the element.
</parameter_description>
</parameter>
<parameter name="sample_size">
<parameter_description> Size per sample in bits.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_controller_new">
<description>
Creates a new GstController for the given object&apos;s properties


</description>
<parameters>
<parameter name="object">
<parameter_description> the object of which some properties should be controlled
</parameter_description>
</parameter>
<parameter name="Varargs">
<parameter_description> %NULL terminated list of property names that should be controlled
</parameter_description>
</parameter>
</parameters>
<return> the new controller.
</return>
</function>

<function name="gst_rtcp_buffer_new_copy_data">
<description>
Create a new buffer and set the data to a copy of @len
bytes of @data and the size to @len. The data will be freed when the buffer
is freed.


</description>
<parameters>
<parameter name="data">
<parameter_description> data for the new buffer
</parameter_description>
</parameter>
<parameter name="len">
<parameter_description> the length of data
</parameter_description>
</parameter>
</parameters>
<return> A newly allocated buffer with a copy of @data and of size @len.
</return>
</function>

<function name="gst_pad_get_internal_links">
<description>
Gets a list of pads to which the given pad is linked to
inside of the parent element.
The caller must free this list after use.


</description>
<parameters>
<parameter name="pad">
<parameter_description> the #GstPad to get the internal links of.
</parameter_description>
</parameter>
</parameters>
<return> a newly allocated #GList of pads, free with g_list_free().

Not MT safe.

Deprecated: This function does not ref the pads in the list so that they
could become invalid by the time the application accesses them. It&apos;s also
possible that the list changes while handling the pads, which the caller of
this function is unable to know. Use the thread-safe 
gst_pad_iterate_internal_links() instead.
</return>
</function>

<function name="gst_byte_reader_skip">
<description>
Skips @nbytes bytes of the #GstByteReader instance.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="nbytes">
<parameter_description> the number of bytes to skip
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if @nbytes bytes could be skipped, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_tag_list_copy">
<description>
Copies a given #GstTagList.


</description>
<parameters>
<parameter name="list">
<parameter_description> list to copy
</parameter_description>
</parameter>
</parameters>
<return> copy of the given list
</return>
</function>

<function name="gst_pad_get_query_types">
<description>
Get an array of supported queries that can be performed
on this pad.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad.
</parameter_description>
</parameter>
</parameters>
<return> a zero-terminated array of #GstQueryType.
</return>
</function>

<function name="gst_deinit">
<description>
Clean up any resources created by GStreamer in gst_init().

It is normally not needed to call this function in a normal application
as the resources will automatically be freed when the program terminates.
This function is therefore mostly used by testsuites and other memory
profiling tools.

After this call GStreamer (including this method) should not be used anymore. 

</description>
<parameters>
</parameters>
<return></return>
</function>

<function name="gst_iterator_find_custom">
<description>
Find the first element in @it that matches the compare function @func.
@func should return 0 when the element is found.

The iterator will not be freed.

This function will return NULL if an error or resync happened to
the iterator.


</description>
<parameters>
<parameter name="it">
<parameter_description> The #GstIterator to iterate
</parameter_description>
</parameter>
<parameter name="func">
<parameter_description> the compare function to use
</parameter_description>
</parameter>
<parameter name="user_data">
<parameter_description> user data passed to the compare function
</parameter_description>
</parameter>
</parameters>
<return> The element in the iterator that matches the compare
function or NULL when no element matched.

MT safe.
</return>
</function>

<function name="gst_controller_get_all">
<description>
Returns: a copy of the list, or %NULL if the property isn&apos;t handled by the controller

</description>
<parameters>
<parameter name="self">
<parameter_description> the controller to get the list from
</parameter_description>
</parameter>
<parameter name="property_name">
<parameter_description> the name of the property to get the list for
</parameter_description>
</parameter>
</parameters>
<return> a copy of the list, or %NULL if the property isn&apos;t handled by the controller
</return>
</function>

<function name="gst_value_serialize">
<description>
tries to transform the given @value into a string representation that allows
getting back this string later on using gst_value_deserialize().


</description>
<parameters>
<parameter name="value">
<parameter_description> a #GValue to serialize
</parameter_description>
</parameter>
</parameters>
<return> the serialization for @value or NULL if none exists
</return>
</function>

<function name="gst_structure_remove_fields_valist">
<description>
va_list form of gst_structure_remove_fields().

</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="fieldname">
<parameter_description> the name of the field to remove
</parameter_description>
</parameter>
<parameter name="varargs">
<parameter_description> NULL-terminated list of more fieldnames to remove
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_collect_pads_collect">
<description>
Collect data on all pads. This function is usually called
from a #GstTask function in an element. 

This function is currently not implemented.


</description>
<parameters>
<parameter name="pads">
<parameter_description> the collectspads to use
</parameter_description>
</parameter>
</parameters>
<return> #GstFlowReturn of the operation.

MT safe.
</return>
</function>

<function name="gst_value_set_fraction_range">
<description>
Sets @value to the range specified by @start and @end.

</description>
<parameters>
<parameter name="value">
<parameter_description> a GValue initialized to GST_TYPE_FRACTION_RANGE
</parameter_description>
</parameter>
<parameter name="start">
<parameter_description> the start of the range (a GST_TYPE_FRACTION GValue)
</parameter_description>
</parameter>
<parameter name="end">
<parameter_description> the end of the range (a GST_TYPE_FRACTION GValue)
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_missing_encoder_installer_detail_new">
<description>
Returns: a newly-allocated detail string, or NULL on error. Free string

</description>
<parameters>
<parameter name="encode_caps">
<parameter_description> the (fixed) caps for which an encoder element is needed
</parameter_description>
</parameter>
</parameters>
<return> a newly-allocated detail string, or NULL on error. Free string
with g_free() when not needed any longer.

Since: 0.10.15
</return>
</function>

<function name="gst_tag_get_flag">
<description>
Gets the flag of @tag.


</description>
<parameters>
<parameter name="tag">
<parameter_description> the tag
</parameter_description>
</parameter>
</parameters>
<return> the flag of this tag.
</return>
</function>

<function name="gst_audio_frame_length">
<description>
Calculate length of buffer in frames.


</description>
<parameters>
<parameter name="pad">
<parameter_description> the #GstPad to get the caps from
</parameter_description>
</parameter>
<parameter name="buf">
<parameter_description> the #GstBuffer
</parameter_description>
</parameter>
</parameters>
<return> 0 if there&apos;s an error, or the number of frames if everything&apos;s ok
</return>
</function>

<function name="gst_netbuffer_new">
<description>
Create a new network buffer.


</description>
<parameters>
</parameters>
<return> a new #GstNetBuffer.
</return>
</function>

<function name="gst_collect_pads_pop">
<description>
Pop the buffer currently queued in @data. This function
should be called with the @pads LOCK held, such as in the callback
handler.


</description>
<parameters>
<parameter name="pads">
<parameter_description> the collectspads to pop
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> the data to use
</parameter_description>
</parameter>
</parameters>
<return> The buffer in @data or NULL if no buffer was queued.
You should unref the buffer after usage.

MT safe.
</return>
</function>

<function name="gst_structure_id_get_value">
<description>
Get the value of the field with GQuark @field.


</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="field">
<parameter_description> the #GQuark of the field to get
</parameter_description>
</parameter>
</parameters>
<return> the #GValue corresponding to the field with the given name
identifier.
</return>
</function>

<function name="gst_missing_encoder_message_new">
<description>
Creates a missing-plugin message for @element to notify the application
that an encoder element for a particular set of (fixed) caps is missing.
This function is mainly for use in plugins.


</description>
<parameters>
<parameter name="element">
<parameter_description> the #GstElement posting the message
</parameter_description>
</parameter>
<parameter name="encode_caps">
<parameter_description> the (fixed) caps for which an encoder element is needed
</parameter_description>
</parameter>
</parameters>
<return> a new #GstMessage, or NULL on error
</return>
</function>

<function name="gst_fft_f32_free">
<description>
This frees the memory allocated for @self.


</description>
<parameters>
<parameter name="self">
<parameter_description> #GstFFTF32 instance for this call
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_value_get_double_range_max">
<description>
Gets the maximum of the range specified by @value.


</description>
<parameters>
<parameter name="value">
<parameter_description> a GValue initialized to GST_TYPE_DOUBLE_RANGE
</parameter_description>
</parameter>
</parameters>
<return> the maxumum of the range
</return>
</function>

<function name="gst_bus_disable_sync_message_emission">
<description>
Instructs GStreamer to stop emitting the &quot;sync-message&quot; signal for this bus.
See gst_bus_enable_sync_message_emission() for more information.

In the event that multiple pieces of code have called
gst_bus_enable_sync_message_emission(), the sync-message emissions will only
be stopped after all calls to gst_bus_enable_sync_message_emission() were
&quot;cancelled&quot; by calling this function. In this way the semantics are exactly
the same as gst_object_ref() that which calls enable should also call
disable.

MT safe.

</description>
<parameters>
<parameter name="bus">
<parameter_description> a #GstBus on which you previously called
gst_bus_enable_sync_message_emission()
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_video_format_to_fourcc">
<description>
Converts a #GstVideoFormat value into the corresponding FOURCC.  Only
a few YUV formats have corresponding FOURCC values.  If @format has
no corresponding FOURCC value, 0 is returned.

Since: 0.10.16


</description>
<parameters>
<parameter name="format">
<parameter_description> a #GstVideoFormat video format
</parameter_description>
</parameter>
</parameters>
<return> the FOURCC corresponding to @format
</return>
</function>

<function name="gst_pad_set_element_private">
<description>
Set the given private data gpointer on the pad.
This function can only be used by the element that owns the pad.
No locking is performed in this function.

</description>
<parameters>
<parameter name="pad">
<parameter_description> the #GstPad to set the private data of.
</parameter_description>
</parameter>
<parameter name="priv">
<parameter_description> The private data to attach to the pad.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_base_transform_update_qos">
<description>
Set the QoS parameters in the transform. This function is called internally
when a QOS event is received but subclasses can provide custom information
when needed.

MT safe.

Since: 0.10.5

</description>
<parameters>
<parameter name="trans">
<parameter_description> a #GstBaseTransform
</parameter_description>
</parameter>
<parameter name="proportion">
<parameter_description> the proportion
</parameter_description>
</parameter>
<parameter name="diff">
<parameter_description> the diff against the clock
</parameter_description>
</parameter>
<parameter name="timestamp">
<parameter_description> the timestamp of the buffer generating the QoS expressed in
running_time.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_x_overlay_handle_events">
<description>
Tell an overlay that it should handle events from the window system. These
events are forwared upstream as navigation events. In some window system,
events are not propagated in the window hierarchy if a client is listening
for them. This method allows you to disable events handling completely
from the XOverlay.

</description>
<parameters>
<parameter name="overlay">
<parameter_description> a #GstXOverlay to expose.
</parameter_description>
</parameter>
<parameter name="handle_events">
<parameter_description> a #gboolean indicating if events should be handled or not.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_caps_union">
<description>
Creates a new #GstCaps that contains all the formats that are in
either @caps1 and @caps2.


</description>
<parameters>
<parameter name="caps1">
<parameter_description> a #GstCaps to union
</parameter_description>
</parameter>
<parameter name="caps2">
<parameter_description> a #GstCaps to union
</parameter_description>
</parameter>
</parameters>
<return> the new #GstCaps
</return>
</function>

<function name="gst_structure_get_string">
<description>
Finds the field corresponding to @fieldname, and returns the string
contained in the field&apos;s value.  Caller is responsible for making
sure the field exists and has the correct type.

The string should not be modified, and remains valid until the next
call to a gst_structure_*() function with the given structure.


</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="fieldname">
<parameter_description> the name of a field
</parameter_description>
</parameter>
</parameters>
<return> a pointer to the string or NULL when the field did not exist
or did not contain a string.
</return>
</function>

<function name="gst_bin_remove_many">
<description>
Remove a list of elements from a bin. This function is equivalent
to calling gst_bin_remove() with each member of the list.

</description>
<parameters>
<parameter name="bin">
<parameter_description> a #GstBin
</parameter_description>
</parameter>
<parameter name="element_1">
<parameter_description> the first #GstElement to remove from the bin
</parameter_description>
</parameter>
<parameter name="Varargs">
<parameter_description> NULL-terminated list of elements to remove from the bin
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_base_sink_is_qos_enabled">
<description>
Checks if @sink is currently configured to send Quality-of-Service events
upstream.


</description>
<parameters>
<parameter name="sink">
<parameter_description> the sink
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the sink is configured to perform Quality-of-Service.

Since: 0.10.5
</return>
</function>

<function name="gst_element_factory_get_num_pad_templates">
<description>
Gets the number of pad_templates in this factory.


</description>
<parameters>
<parameter name="factory">
<parameter_description> a #GstElementFactory
</parameter_description>
</parameter>
</parameters>
<return> the number of pad_templates
</return>
</function>

<function name="GstRegistry">
<description>
Signals that a feature has been added to the registry (possibly
replacing a previously-added one by the same name)

</description>
<parameters>
<parameter name="registry">
<parameter_description> the registry that emitted the signal
</parameter_description>
</parameter>
<parameter name="feature">
<parameter_description> the feature that has been added
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_caps_unref">
<description>
Unref a #GstCaps and and free all its structures and the
structures&apos; values when the refcount reaches 0.

</description>
<parameters>
<parameter name="caps">
<parameter_description> the #GstCaps to unref
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_color_balance_get_value">
<description>
Retrieve the current value of the indicated channel, between min_value
and max_value.

See Also: The #GstColorBalanceChannel::min_value and
#GstColorBalanceChannel::max_value members of the
#GstColorBalanceChannel object.


</description>
<parameters>
<parameter name="balance">
<parameter_description> A #GstColorBalance instance
</parameter_description>
</parameter>
<parameter name="channel">
<parameter_description> A #GstColorBalanceChannel instance
</parameter_description>
</parameter>
</parameters>
<return> The current value of the channel.
</return>
</function>

<function name="gst_index_factory_make">
<description>
Create a new #GstIndex instance from the
indexfactory with the given name.


</description>
<parameters>
<parameter name="name">
<parameter_description> the name of the factory used to create the instance
</parameter_description>
</parameter>
</parameters>
<return> A new #GstIndex instance.
</return>
</function>

<function name="gst_tuner_set_norm">
<description>
Changes the video norm on this tuner to the given norm.

</description>
<parameters>
<parameter name="tuner">
<parameter_description> the #GstTuner (a #GstElement) to set the norm on.
</parameter_description>
</parameter>
<parameter name="norm">
<parameter_description> the norm to use for the current channel.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_element_set_locked_state">
<description>
Locks the state of an element, so state changes of the parent don&apos;t affect
this element anymore.

MT safe.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement
</parameter_description>
</parameter>
<parameter name="locked_state">
<parameter_description> TRUE to lock the element&apos;s state
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the state was changed, FALSE if bad parameters were given
or the elements state-locking needed no change.
</return>
</function>

<function name="gst_net_time_packet_send">
<description>
Sends a #GstNetTimePacket over a socket. Essentially a thin wrapper around
sendto(2) and gst_net_time_packet_serialize(). 

MT safe.


</description>
<parameters>
<parameter name="packet">
<parameter_description> the #GstNetTimePacket
</parameter_description>
</parameter>
<parameter name="fd">
<parameter_description> a file descriptor created by socket(2)
</parameter_description>
</parameter>
<parameter name="addr">
<parameter_description> a pointer to a sockaddr to hold the address of the sender
</parameter_description>
</parameter>
<parameter name="len">
<parameter_description> the size of the data pointed to by @addr
</parameter_description>
</parameter>
</parameters>
<return> The return value of sendto(2).
</return>
</function>

<function name="gst_clock_new_single_shot_id">
<description>
Get a #GstClockID from @clock to trigger a single shot
notification at the requested time. The single shot id should be
unreffed after usage.


</description>
<parameters>
<parameter name="clock">
<parameter_description> The #GstClockID to get a single shot notification from
</parameter_description>
</parameter>
<parameter name="time">
<parameter_description> the requested time
</parameter_description>
</parameter>
</parameters>
<return> A #GstClockID that can be used to request the time notification.

MT safe.
</return>
</function>

<function name="gst_pipeline_set_clock">
<description>
Set the clock for @pipeline. The clock will be distributed
to all the elements managed by the pipeline.


</description>
<parameters>
<parameter name="pipeline">
<parameter_description> a #GstPipeline
</parameter_description>
</parameter>
<parameter name="clock">
<parameter_description> the clock to set
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the clock could be set on the pipeline. FALSE if
some element did not accept the clock.

MT safe.
</return>
</function>

<function name="gst_fft_s16_inverse_fft">
<description>
This performs the inverse FFT on @freqdata and puts the result in @timedata.

@freqdata must have @len/2 + 1 samples, where @len is the parameter specified
while allocating the #GstFFTS16 instance with gst_fft_s16_new().

@timedata must be large enough to hold @len time domain samples.


</description>
<parameters>
<parameter name="self">
<parameter_description> #GstFFTS16 instance for this call
</parameter_description>
</parameter>
<parameter name="freqdata">
<parameter_description> Buffer of the samples in the frequency domain
</parameter_description>
</parameter>
<parameter name="timedata">
<parameter_description> Target buffer for the samples in the time domain
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_element_get_index">
<description>
Gets the index from the element.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement.
</parameter_description>
</parameter>
</parameters>
<return> a #GstIndex or %NULL when no index was set on the
element. unref after usage.

MT safe.
</return>
</function>

<function name="gst_sdp_message_attributes_len">
<description>
Get the number of attributes in @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
</parameters>
<return> the number of attributes in @msg.
</return>
</function>

<function name="gst_caps_truncate">
<description>
Destructively discard all but the first structure from @caps. Useful when
fixating. @caps must be writable.

</description>
<parameters>
<parameter name="caps">
<parameter_description> the #GstCaps to truncate
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pb_utils_add_codec_description_to_tag_list">
<description>
Adds a codec tag describing the format specified by @caps to @taglist.


</description>
<parameters>
<parameter name="taglist">
<parameter_description> a #GstTagList
</parameter_description>
</parameter>
<parameter name="codec_tag">
<parameter_description> a GStreamer codec tag such as #GST_TAG_AUDIO_CODEC,
#GST_TAG_VIDEO_CODEC or #GST_TAG_CODEC
</parameter_description>
</parameter>
<parameter name="caps">
<parameter_description> the (fixed) #GstCaps for which a codec tag should be added.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if a codec tag was added, FALSE otherwise.
</return>
</function>

<function name="gst_net_client_clock_new">
<description>
Create a new #GstNetClientClock that will report the time
provided by the #GstNetClockProvider on @remote_address and 
@remote_port.


</description>
<parameters>
<parameter name="name">
<parameter_description> a name for the clock
</parameter_description>
</parameter>
<parameter name="remote_address">
<parameter_description> the address of the remote clock provider
</parameter_description>
</parameter>
<parameter name="remote_port">
<parameter_description> the port of the remote clock provider
</parameter_description>
</parameter>
<parameter name="base_time">
<parameter_description> initial time of the clock
</parameter_description>
</parameter>
</parameters>
<return> a new #GstClock that receives a time from the remote
clock.
</return>
</function>

<function name="gst_object_get_controller">
<description>
Gets the controller for the given GObject


</description>
<parameters>
<parameter name="object">
<parameter_description> the object that has controlled properties
</parameter_description>
</parameter>
</parameters>
<return> the controller handling some of the given element&apos;s properties, %NULL if no controller
Since: 0.9
</return>
</function>

<function name="gst_child_proxy_get_property">
<description>
Gets a single property using the GstChildProxy mechanism.
You are responsible for for freeing it by calling g_value_unset()

</description>
<parameters>
<parameter name="object">
<parameter_description> object to query
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> name of the property
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> a #GValue that should take the result.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_is_blocking">
<description>
Checks if the pad is blocking or not. This is a guaranteed state
of whether the pad is actually blocking on a #GstBuffer or a #GstEvent.


</description>
<parameters>
<parameter name="pad">
<parameter_description> the #GstPad to query
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the pad is blocking.

MT safe.

Since: 0.10.11
</return>
</function>

<function name="gst_debug_remove_log_function_by_data">
<description>
Removes all registered instances of log functions with the given user data.


</description>
<parameters>
<parameter name="data">
<parameter_description> user data of the log function to remove
</parameter_description>
</parameter>
</parameters>
<return> How many instances of the function were removed
</return>
</function>

<function name="gst_color_balance_list_channels">
<description>
Retrieve a list of the available channels.


</description>
<parameters>
<parameter name="balance">
<parameter_description> A #GstColorBalance instance
</parameter_description>
</parameter>
</parameters>
<return> A GList containing pointers to #GstColorBalanceChannel objects.
The list is owned by the #GstColorBalance instance and must not
be freed.
</return>
</function>

<function name="gst_base_rtp_audio_payload_set_sample_options">
<description>
Sets the options for sample based audio codecs.


</description>
<parameters>
<parameter name="basertpaudiopayload">
<parameter_description> a pointer to the element.
</parameter_description>
</parameter>
<parameter name="sample_size">
<parameter_description> Size per sample in bytes.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_message_parse_async_start">
<description>
Extract the new_base_time from the async_start message. 

MT safe.

Since: 0.10.13

</description>
<parameters>
<parameter name="message">
<parameter_description> A valid #GstMessage of type GST_MESSAGE_ASYNC_DONE.
</parameter_description>
</parameter>
<parameter name="new_base_time">
<parameter_description> Result location for the new_base_time or NULL
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_structure_empty_new">
<description>
Creates a new, empty #GstStructure with the given @name.

See gst_structure_set_name() for constraints on the @name parameter.


</description>
<parameters>
<parameter name="name">
<parameter_description> name of new structure
</parameter_description>
</parameter>
</parameters>
<return> a new, empty #GstStructure
</return>
</function>

<function name="gst_util_dump_mem">
<description>
Dumps the memory block into a hex representation. Useful for debugging.

</description>
<parameters>
<parameter name="mem">
<parameter_description> a pointer to the memory to dump
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> the size of the memory block to dump
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_netaddress_get_address_bytes">
<description>
Get just the address bytes stored in @naddr into @address.


</description>
<parameters>
<parameter name="naddr">
<parameter_description> a network address
</parameter_description>
</parameter>
<parameter name="address">
<parameter_description> a location to store the result.
</parameter_description>
</parameter>
<parameter name="port">
<parameter_description> a location to store the port.
</parameter_description>
</parameter>
</parameters>
<return> number of bytes actually copied

Since: 0.10.22
</return>
</function>

<function name="gst_sdp_media_set_proto">
<description>
Set the media transport protocol of @media to @proto.


</description>
<parameters>
<parameter name="media">
<parameter_description> a #GstSDPMedia
</parameter_description>
</parameter>
<parameter name="proto">
<parameter_description> the media transport protocol
</parameter_description>
</parameter>
</parameters>
<return> #GST_SDP_OK.
</return>
</function>

<function name="gst_adapter_take_buffer">
<description>
Returns: a #GstBuffer containing the first @nbytes of the adapter, 

</description>
<parameters>
<parameter name="adapter">
<parameter_description> a #GstAdapter
</parameter_description>
</parameter>
<parameter name="nbytes">
<parameter_description> the number of bytes to take
</parameter_description>
</parameter>
</parameters>
<return> a #GstBuffer containing the first @nbytes of the adapter, 
or #NULL if @nbytes bytes are not available
</return>
</function>

<function name="gst_adapter_flush">
<description>
Flushes the first @flush bytes in the @adapter. The caller must ensure that
at least this many bytes are available.

See also: gst_adapter_peek().

</description>
<parameters>
<parameter name="adapter">
<parameter_description> a #GstAdapter
</parameter_description>
</parameter>
<parameter name="flush">
<parameter_description> the number of bytes to flush
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_byte_reader_peek_float32_be">
<description>
Read a 32 bit big endian integer into @val
but keep the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #gfloat to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_value_dup_mini_object">
<description>
Get the contents of a %GST_TYPE_MINI_OBJECT derived #GValue,
increasing its reference count.


</description>
<parameters>
<parameter name="value">
<parameter_description>   a valid #GValue of %GST_TYPE_MINI_OBJECT derived type
</parameter_description>
</parameter>
</parameters>
<return> mini object contents of @value

Since: 0.10.20
</return>
</function>

<function name="gst_rtp_buffer_set_csrc">
<description>
Modify the CSRC at index @idx in @buffer to @csrc.

</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer
</parameter_description>
</parameter>
<parameter name="idx">
<parameter_description> the CSRC index to set
</parameter_description>
</parameter>
<parameter name="csrc">
<parameter_description> the CSRC in host order to set at @idx
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_preset_get_preset_names">
<description>
Get a copy of preset names as a NULL terminated string array.


</description>
<parameters>
<parameter name="preset">
<parameter_description> a #GObject that implements #GstPreset
</parameter_description>
</parameter>
</parameters>
<return> list with names, ue g_strfreev() after usage.

Since: 0.10.20
</return>
</function>

<function name="gst_byte_reader_get_uint32_le">
<description>
Read an unsigned 32 bit little endian integer into @val
and update the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #guint32 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_sdp_message_set_connection">
<description>
Configure the SDP connection in @msg with the given parameters.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
<parameter name="nettype">
<parameter_description> the type of network. &quot;IN&quot; is defined to have the meaning
&quot;Internet&quot;.
</parameter_description>
</parameter>
<parameter name="addrtype">
<parameter_description> the type of address.
</parameter_description>
</parameter>
<parameter name="address">
<parameter_description> the address
</parameter_description>
</parameter>
<parameter name="ttl">
<parameter_description> the time to live of the address
</parameter_description>
</parameter>
<parameter name="addr_number">
<parameter_description> the number of layers
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPResult.
</return>
</function>

<function name="gst_pad_get_pad_template_caps">
<description>
Gets the capabilities for @pad&apos;s template.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad to get the template capabilities from.
</parameter_description>
</parameter>
</parameters>
<return> the #GstCaps of this pad template. If you intend to keep a
reference on the caps, make a copy (see gst_caps_copy ()).
</return>
</function>

<function name="gst_audio_set_structure_channel_positions_list">
<description>
Sets a (possibly non-fixed) list of possible audio channel
positions (given in pos) on the given structure. The
structure, after this function has been called, will contain
a &quot;channel-positions&quot; field with an array of the size of
the &quot;channels&quot; field value in the given structure (note
that this means that the channels field in the provided
structure should be fixed!). Each value in the array will
contain each of the values given in the pos array.

</description>
<parameters>
<parameter name="str">
<parameter_description> #GstStructure to set the list of channel positions
on.
</parameter_description>
</parameter>
<parameter name="pos">
<parameter_description> the array containing one or more possible audio
channel positions that we should add in each value
of the array in the given structure.
</parameter_description>
</parameter>
<parameter name="num_positions">
<parameter_description> the number of values in pos.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_dp_header_payload_type">
<description>
Get the type of the payload described by @header.


</description>
<parameters>
<parameter name="header">
<parameter_description> the byte header of the packet array
</parameter_description>
</parameter>
</parameters>
<return> the #GstDPPayloadType the payload this header describes.
</return>
</function>

<function name="gst_dp_event_from_packet">
<description>
Creates a newly allocated #GstEvent from the given packet.

This function does not check the arguments passed to it, use
gst_dp_validate_packet() first if the header and payload data are
unchecked.


</description>
<parameters>
<parameter name="header_length">
<parameter_description> the length of the packet header
</parameter_description>
</parameter>
<parameter name="header">
<parameter_description> the byte array of the packet header
</parameter_description>
</parameter>
<parameter name="payload">
<parameter_description> the byte array of the packet payload
</parameter_description>
</parameter>
</parameters>
<return> A #GstEvent if the event was successfully created,
or NULL if an event could not be read from the payload.
</return>
</function>

<function name="gst_value_set_double_range">
<description>
Sets @value to the range specified by @start and @end.

</description>
<parameters>
<parameter name="value">
<parameter_description> a GValue initialized to GST_TYPE_DOUBLE_RANGE
</parameter_description>
</parameter>
<parameter name="start">
<parameter_description> the start of the range
</parameter_description>
</parameter>
<parameter name="end">
<parameter_description> the end of the range
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="str_case_equal">
<description>
Compares @v1 and @v2 in a case-insensitive manner


</description>
<parameters>
<parameter name="v1">
<parameter_description> an ASCII string
</parameter_description>
</parameter>
<parameter name="v2">
<parameter_description> another ASCII string
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if they are equal (modulo case)
</return>
</function>

<function name="gst_value_list_prepend_value">
<description>
Prepends @prepend_value to the GstValueList in @value.

</description>
<parameters>
<parameter name="value">
<parameter_description> a #GValue of type #GST_TYPE_LIST
</parameter_description>
</parameter>
<parameter name="prepend_value">
<parameter_description> the value to prepend
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_registry_binary_write_cache">
<description>
Write the @registry to a cache to file at given @location.


</description>
<parameters>
<parameter name="registry">
<parameter_description> a #GstRegistry
</parameter_description>
</parameter>
<parameter name="location">
<parameter_description> a filename
</parameter_description>
</parameter>
</parameters>
<return> %TRUE on success.
</return>
</function>

<function name="gst_plugin_find_feature">
<description>
Find a feature of the given name and type in the given plugin.


</description>
<parameters>
<parameter name="plugin">
<parameter_description> plugin to get the feature from
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> The name of the feature to find
</parameter_description>
</parameter>
<parameter name="type">
<parameter_description> The type of the feature to find
</parameter_description>
</parameter>
</parameters>
<return> a GstPluginFeature or NULL if the feature was not found.
</return>
</function>

<function name="gst_collect_pads_flush">
<description>
Flush @size bytes from the pad @data.

This function should be called with @pads LOCK held, such as
in the callback.


</description>
<parameters>
<parameter name="pads">
<parameter_description> the collectspads to query
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> the data to use
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> the number of bytes to flush
</parameter_description>
</parameter>
</parameters>
<return> The number of bytes flushed. This can be less than @size and
is 0 if the pad was end-of-stream.

MT safe.
</return>
</function>

<function name="gst_structure_get_date">
<description>
Sets the date pointed to by @value corresponding to the date of the
given field.  Caller is responsible for making sure the field exists
and has the correct type.

returns FALSE.

</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="fieldname">
<parameter_description> the name of a field
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> a pointer to a #GDate to set
</parameter_description>
</parameter>
</parameters>
<return>FALSE.
</return>
</function>

<function name="gst_bin_iterate_elements">
<description>
Gets an iterator for the elements in this bin.

Each element yielded by the iterator will have its refcount increased, so
unref after use.

MT safe.  Caller owns returned value.


</description>
<parameters>
<parameter name="bin">
<parameter_description> a #GstBin
</parameter_description>
</parameter>
</parameters>
<return> a #GstIterator of #GstElement, or NULL
</return>
</function>

<function name="gst_sdp_media_get_attribute_val">
<description>
Get the first attribute value for @key in @media.


</description>
<parameters>
<parameter name="media">
<parameter_description> a #GstSDPMedia
</parameter_description>
</parameter>
<parameter name="key">
<parameter_description> a key
</parameter_description>
</parameter>
</parameters>
<return> the first attribute value for @key.
</return>
</function>

<function name="gst_pad_set_unlink_function">
<description>
Sets the given unlink function for the pad. It will be called
when the pad is unlinked.

</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad.
</parameter_description>
</parameter>
<parameter name="unlink">
<parameter_description> the #GstPadUnlinkFunction to set.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_property_probe_probe_property">
<description>
Runs a probe on the property specified by %pspec

</description>
<parameters>
<parameter name="probe">
<parameter_description> the #GstPropertyProbe to check.
</parameter_description>
</parameter>
<parameter name="pspec">
<parameter_description> #GParamSpec of the property.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_query_parse_buffering_range">
<description>
Parse an available query, writing the format into @format, and 
other results into the passed parameters, if the respective parameters
are non-NULL

Since: 0.10.20

</description>
<parameters>
<parameter name="query">
<parameter_description> a GST_QUERY_SEEKING type query #GstQuery
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> the format to set for the @segment_start and @segment_end values
</parameter_description>
</parameter>
<parameter name="start">
<parameter_description> the start to set
</parameter_description>
</parameter>
<parameter name="stop">
<parameter_description> the stop to set
</parameter_description>
</parameter>
<parameter name="estimated_total">
<parameter_description> estimated total amount of download time
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_structure_foreach">
<description>
Calls the provided function once for each field in the #GstStructure. The
function must not modify the fields. Also see gst_structure_map_in_place().


</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="func">
<parameter_description> a function to call for each field
</parameter_description>
</parameter>
<parameter name="user_data">
<parameter_description> private data
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the supplied function returns TRUE For each of the fields,
FALSE otherwise.
</return>
</function>

<function name="gst_util_uint64_scale">
<description>
Scale @val by @num / @denom, trying to avoid overflows.

This function can potentially be very slow if denom &amp;gt; G_MAXUINT32.


</description>
<parameters>
<parameter name="val">
<parameter_description> the number to scale
</parameter_description>
</parameter>
<parameter name="num">
<parameter_description> the numerator of the scale ratio
</parameter_description>
</parameter>
<parameter name="denom">
<parameter_description> the denominator of the scale ratio
</parameter_description>
</parameter>
</parameters>
<return> @val * @num / @denom, trying to avoid overflows.
In the case of an overflow, this function returns G_MAXUINT64.
</return>
</function>

<function name="gst_default_registry_check_feature_version">
<description>
Checks whether a plugin feature by the given name exists in the
default registry and whether its version is at least the
version required.


</description>
<parameters>
<parameter name="feature_name">
<parameter_description> the name of the feature (e.g. &quot;oggdemux&quot;)
</parameter_description>
</parameter>
<parameter name="min_major">
<parameter_description> the minimum major version number
</parameter_description>
</parameter>
<parameter name="min_minor">
<parameter_description> the minimum minor version number
</parameter_description>
</parameter>
<parameter name="min_micro">
<parameter_description> the minimum micro version number
</parameter_description>
</parameter>
</parameters>
<return> #TRUE if the feature could be found and the version is
the same as the required version or newer, and #FALSE otherwise.
</return>
</function>

<function name="GstDataQueue">
<description>
Reports that the queue became full (full).
A queue is full if the total amount of data inside it (num-visible, time,
size) is higher than the boundary values which can be set through the GObject
properties.

</description>
<parameters>
<parameter name="queue">
<parameter_description> the queue instance
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_registry_xml_read_cache">
<description>
Read the contents of the XML cache file at @location into @registry.


</description>
<parameters>
<parameter name="registry">
<parameter_description> a #GstRegistry
</parameter_description>
</parameter>
<parameter name="location">
<parameter_description> a filename
</parameter_description>
</parameter>
</parameters>
<return> %TRUE on success.
</return>
</function>

<function name="gst_element_request_compatible_pad">
<description>
Requests a pad from @element. The returned pad should be unlinked and
compatible with @templ. Might return an existing pad, or request a new one.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement.
</parameter_description>
</parameter>
<parameter name="templ">
<parameter_description> the #GstPadTemplate to which the new pad should be able to link.
</parameter_description>
</parameter>
</parameters>
<return> a #GstPad, or %NULL if one could not be found or created.
</return>
</function>

<function name="gst_adapter_available">
<description>
Gets the maximum amount of bytes available, that is it returns the maximum
value that can be supplied to gst_adapter_peek() without that function
returning NULL.


</description>
<parameters>
<parameter name="adapter">
<parameter_description> a #GstAdapter
</parameter_description>
</parameter>
</parameters>
<return> number of bytes available in @adapter
</return>
</function>

<function name="gst_value_register_union_func">
<description>
Registers a union function that can create a union between GValues
of the type @type1 and @type2.

Union functions should be registered at startup before any pipelines are
started, as gst_value_register_union_func() is not thread-safe and cannot
be used at the same time as gst_value_union() or gst_value_can_union().

</description>
<parameters>
<parameter name="type1">
<parameter_description> a type to union
</parameter_description>
</parameter>
<parameter name="type2">
<parameter_description> another type to union
</parameter_description>
</parameter>
<parameter name="func">
<parameter_description> a function that implments creating a union between the two types
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_video_format_get_row_stride">
<description>
Calculates the row stride (number of bytes from one row of pixels to
the next) for the video component with an index of @component.  For
YUV video, Y, U, and V have component indices of 0, 1, and 2,
respectively.  For RGB video, R, G, and B have component indicies of
0, 1, and 2, respectively.  Alpha channels, if present, have a component
index of 3.  The @width parameter always represents the width of the
video, not the component.

Since: 0.10.16


</description>
<parameters>
<parameter name="format">
<parameter_description> a #GstVideoFormat
</parameter_description>
</parameter>
<parameter name="component">
<parameter_description> the component index
</parameter_description>
</parameter>
<parameter name="width">
<parameter_description> the width of video
</parameter_description>
</parameter>
</parameters>
<return> row stride of component @component
</return>
</function>

<function name="gst_caps_copy_nth">
<description>
Creates a new #GstCaps and appends a copy of the nth structure
contained in @caps.


</description>
<parameters>
<parameter name="caps">
<parameter_description> the #GstCaps to copy
</parameter_description>
</parameter>
<parameter name="nth">
<parameter_description> the nth structure to copy
</parameter_description>
</parameter>
</parameters>
<return> the new #GstCaps
</return>
</function>

<function name="gst_rtp_buffer_new_allocate">
<description>
Allocate a new #Gstbuffer with enough data to hold an RTP packet with @csrc_count CSRCs,
a payload length of @payload_len and padding of @pad_len.
All other RTP header fields will be set to 0/FALSE.


</description>
<parameters>
<parameter name="payload_len">
<parameter_description> the length of the payload
</parameter_description>
</parameter>
<parameter name="pad_len">
<parameter_description> the amount of padding
</parameter_description>
</parameter>
<parameter name="csrc_count">
<parameter_description> the number of CSRC entries
</parameter_description>
</parameter>
</parameters>
<return> A newly allocated buffer that can hold an RTP packet with given
parameters.
</return>
</function>

<function name="gst_preset_get_property_names">
<description>
Get a the names of the GObject properties that can be used for presets.


</description>
<parameters>
<parameter name="preset">
<parameter_description> a #GObject that implements #GstPreset
</parameter_description>
</parameter>
</parameters>
<return> an array of property names which should be freed with g_strfreev() after use.

Since: 0.10.20
</return>
</function>

<function name="gst_debug_category_set_threshold">
<description>
Sets the threshold of the category to the given level. Debug information will
only be output if the threshold is lower or equal to the level of the
debugging message.
&amp;lt;note&amp;gt;&amp;lt;para&amp;gt;
Do not use this function in production code, because other functions may
change the threshold of categories as side effect. It is however a nice
function to use when debugging (even from gdb).
&amp;lt;/para&amp;gt;&amp;lt;/note&amp;gt;

</description>
<parameters>
<parameter name="category">
<parameter_description> a #GstDebugCategory to set threshold of.
</parameter_description>
</parameter>
<parameter name="level">
<parameter_description> the #GstDebugLevel threshold to set.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtcp_buffer_new">
<description>
Create a new buffer for constructing RTCP packets. The packet will have a
maximum size of @mtu.


</description>
<parameters>
<parameter name="mtu">
<parameter_description> the maximum mtu size.
</parameter_description>
</parameter>
</parameters>
<return> A newly allocated buffer.
</return>
</function>

<function name="gst_base_rtp_audio_payload_set_frame_based">
<description>
Tells #GstBaseRTPAudioPayload that the child element is for a frame based
audio codec


</description>
<parameters>
<parameter name="basertpaudiopayload">
<parameter_description> a pointer to the element.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_unlink">
<description>
Unlinks the source pad from the sink pad. Will emit the #GstPad::unlinked
signal on both pads.


</description>
<parameters>
<parameter name="srcpad">
<parameter_description> the source #GstPad to unlink.
</parameter_description>
</parameter>
<parameter name="sinkpad">
<parameter_description> the sink #GstPad to unlink.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the pads were unlinked. This function returns FALSE if
the pads were not linked together.

MT safe.
</return>
</function>

<function name="gst_segment_free">
<description>
Free the allocated segment @segment.

</description>
<parameters>
<parameter name="segment">
<parameter_description> a #GstSegment
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_buffer_try_new_and_alloc">
<description>
Tries to create a newly allocated buffer with data of the given size. If
the requested amount of memory can&apos;t be allocated, NULL will be returned.
The buffer memory is not cleared.

Note that when @size == 0, the buffer data pointer will be NULL.

MT safe.


</description>
<parameters>
<parameter name="size">
<parameter_description> the size of the new buffer&apos;s data.
</parameter_description>
</parameter>
</parameters>
<return> a new #GstBuffer, or NULL if the memory couldn&apos;t be allocated.

Since: 0.10.13
</return>
</function>

<function name="gst_caps_new_full">
<description>
Creates a new #GstCaps and adds all the structures listed as
arguments.  The list must be NULL-terminated.  The structures
are not copied; the returned #GstCaps owns the structures.


</description>
<parameters>
<parameter name="struct1">
<parameter_description> the first structure to add
</parameter_description>
</parameter>
<parameter name="Varargs">
<parameter_description> additional structures to add
</parameter_description>
</parameter>
</parameters>
<return> the new #GstCaps
</return>
</function>

<function name="gst_missing_uri_sink_message_new">
<description>
Creates a missing-plugin message for @element to notify the application
that a sink element for a particular URI protocol is missing. This
function is mainly for use in plugins.


</description>
<parameters>
<parameter name="element">
<parameter_description> the #GstElement posting the message
</parameter_description>
</parameter>
<parameter name="protocol">
<parameter_description> the URI protocol the missing sink needs to implement,
e.g. &quot;http&quot; or &quot;smb&quot;
</parameter_description>
</parameter>
</parameters>
<return> a new #GstMessage, or NULL on error
</return>
</function>

<function name="gst_ring_buffer_set_flushing">
<description>
Set the ringbuffer to flushing mode or normal mode.

MT safe.

</description>
<parameters>
<parameter name="buf">
<parameter_description> the #GstRingBuffer to flush
</parameter_description>
</parameter>
<parameter name="flushing">
<parameter_description> the new mode
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_video_orientation_set_vflip">
<description>
Set the vertical flipping state (%TRUE for flipped) for the given object.

Since: 0.10.11

</description>
<parameters>
<parameter name="video_orientation">
<parameter_description> #GstVideoOrientation interface of a #GstElement
</parameter_description>
</parameter>
<parameter name="flip">
<parameter_description> use flipping
</parameter_description>
</parameter>
</parameters>
<return> %TRUE in case the element supports flipping
</return>
</function>

<function name="gst_rtp_buffer_new_copy_data">
<description>
Create a new buffer and set the data to a copy of @len
bytes of @data and the size to @len. The data will be freed when the buffer
is freed.


</description>
<parameters>
<parameter name="data">
<parameter_description> data for the new buffer
</parameter_description>
</parameter>
<parameter name="len">
<parameter_description> the length of data
</parameter_description>
</parameter>
</parameters>
<return> A newly allocated buffer with a copy of @data and of size @len.
</return>
</function>

<function name="gst_install_plugins_supported">
<description>
Checks whether plugin installation is likely to be supported by the
current environment. This currently only checks whether the helper script
that is to be provided by the distribution or operating system vendor
exists.


</description>
<parameters>
</parameters>
<return> TRUE if plugin installation is likely to be supported.

Since: 0.10.15
</return>
</function>

<function name="gst_rtsp_url_free">
<description>
Free the memory used by @url.

</description>
<parameters>
<parameter name="url">
<parameter_description> a #GstRTSPUrl
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="GstBaseRTPDepayload">
<description>
Control the amount of packets to buffer.

Deprecated: Use a jitterbuffer or RTP session manager to delay packet
playback. This property has no effect anymore since 0.10.15.

</description>
<parameters>
</parameters>
<return></return>
</function>

<function name="gst_query_type_iterate_definitions">
<description>
Get a #GstIterator of all the registered query types. The definitions 
iterated over are read only.


</description>
<parameters>
</parameters>
<return> A #GstIterator of #GstQueryTypeDefinition.
</return>
</function>

<function name="gst_rtp_buffer_default_clock_rate">
<description>
Get the default clock-rate for the static payload type @payload_type.


</description>
<parameters>
<parameter name="payload_type">
<parameter_description> the static payload type
</parameter_description>
</parameter>
</parameters>
<return> the default clock rate or -1 if the payload type is not static or
the clock-rate is undefined.

Since: 0.10.13
</return>
</function>

<function name="gst_object_sink">
<description>
If @object was floating, the #GST_OBJECT_FLOATING flag is removed
and @object is unreffed. When @object was not floating,
this function does nothing.

Any newly created object has a refcount of 1 and is floating.
This function should be used when creating a new object to
symbolically &apos;take ownership&apos; of @object. This done by first doing a
gst_object_ref() to keep a reference to @object and then gst_object_sink()
to remove and unref any floating references to @object.
Use gst_object_set_parent() to have this done for you.

MT safe. This function grabs and releases @object lock.

</description>
<parameters>
<parameter name="object">
<parameter_description> a #GstObject to sink
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_uri_handler_get_protocols">
<description>
Gets the list of protocols supported by @handler. This list may not be
modified.

Returns NULL if the @handler isn&apos;t implemented properly, or the @handler

</description>
<parameters>
<parameter name="handler">
<parameter_description> A #GstURIHandler.
</parameter_description>
</parameter>
</parameters>
<return>NULL if the @handler isn&apos;t implemented properly, or the @handler
doesn&apos;t support any protocols.
</return>
</function>

<function name="gst_rtsp_transport_new">
<description>
Allocate a new initialized #GstRTSPTransport. Use gst_rtsp_transport_free()
after usage.


</description>
<parameters>
<parameter name="transport">
<parameter_description> location to hold the new #GstRTSPTransport
</parameter_description>
</parameter>
</parameters>
<return> a #GstRTSPResult. 
</return>
</function>

<function name="gst_structure_get_name">
<description>
Get the name of @structure as a string.


</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
</parameters>
<return> the name of the structure.
</return>
</function>

<function name="gst_type_find_factory_get_caps">
<description>
Gets the #GstCaps associated with a typefind factory.


</description>
<parameters>
<parameter name="factory">
<parameter_description> A #GstTypeFindFactory
</parameter_description>
</parameter>
</parameters>
<return> The #GstCaps associated with this factory
</return>
</function>

<function name="gst_tag_list_get_double_index">
<description>
Gets the value that is at the given index for the given tag in the given
list.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList to get the tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
<parameter name="index">
<parameter_description> number of entry to read out
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> location for the result
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if a value was copied, FALSE if the tag didn&apos;t exist in the
given list.
</return>
</function>

<function name="gst_install_plugins_return_get_name">
<description>
Convenience function to return the descriptive string associated
with a status code.  This function returns English strings and
should not be used for user messages. It is here only to assist
in debugging.


</description>
<parameters>
<parameter name="ret">
<parameter_description> the return status code
</parameter_description>
</parameter>
</parameters>
<return> a descriptive string for the status code in @ret

Since: 0.10.12
</return>
</function>

<function name="gst_structure_fixate_field_nearest_int">
<description>
Fixates a #GstStructure by changing the given field to the nearest
integer to @target that is a subset of the existing field.


</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="field_name">
<parameter_description> a field in @structure
</parameter_description>
</parameter>
<parameter name="target">
<parameter_description> the target value of the fixation
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the structure could be fixated
</return>
</function>

<function name="gst_lfo_control_source_new">
<description>
This returns a new, unbound #GstLFOControlSource.


</description>
<parameters>
</parameters>
<return> a new, unbound #GstLFOControlSource.
</return>
</function>

<function name="gst_child_proxy_child_added">
<description>
Emits the &quot;child-added&quot; signal.

</description>
<parameters>
<parameter name="object">
<parameter_description> the parent object
</parameter_description>
</parameter>
<parameter name="child">
<parameter_description> the newly added child
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_audio_buffer_clip">
<description>
Clip the the buffer to the given %GstSegment.

After calling this function the caller does not own a reference to 
@buffer anymore.


</description>
<parameters>
<parameter name="buffer">
<parameter_description> The buffer to clip.
</parameter_description>
</parameter>
<parameter name="segment">
<parameter_description> Segment in %GST_FORMAT_TIME or %GST_FORMAT_DEFAULT to which the buffer should be clipped.
</parameter_description>
</parameter>
<parameter name="rate">
<parameter_description> sample rate.
</parameter_description>
</parameter>
<parameter name="frame_size">
<parameter_description> size of one audio frame in bytes.
</parameter_description>
</parameter>
</parameters>
<return> %NULL if the buffer is completely outside the configured segment,
otherwise the clipped buffer is returned.

If the buffer has no timestamp, it is assumed to be inside the segment and
is not clipped 

Since: 0.10.14
</return>
</function>

<function name="gst_sdp_media_get_connection">
<description>
Get the connection at position @idx in @media.


</description>
<parameters>
<parameter name="media">
<parameter_description> a #GstSDPMedia
</parameter_description>
</parameter>
<parameter name="idx">
<parameter_description> an index
</parameter_description>
</parameter>
</parameters>
<return> the #GstSDPConnection at position @idx.
</return>
</function>

<function name="gst_rtcp_packet_get_rb_count">
<description>
Get the number of report blocks in @packet.


</description>
<parameters>
<parameter name="packet">
<parameter_description> a valid SR or RR #GstRTCPPacket
</parameter_description>
</parameter>
</parameters>
<return> The number of report blocks in @packet.
</return>
</function>

<function name="gst_mixer_message_parse_record_toggled">
<description>
Extracts the contents of a record-toggled bus message. Reads
the GstMixerTrack that has changed, and the new value of the 
recording flag.

The GstMixerTrack remains valid until the message is freed.

Since: 0.10.14

</description>
<parameters>
<parameter name="message">
<parameter_description> A record-toggled change notification message.
</parameter_description>
</parameter>
<parameter name="track">
<parameter_description> Pointer to hold a GstMixerTrack object, or NULL.
</parameter_description>
</parameter>
<parameter name="record">
<parameter_description> A pointer to a gboolean variable, or NULL.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_element_set_base_time">
<description>
Set the base time of an element. See gst_element_get_base_time().

MT safe.

</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement.
</parameter_description>
</parameter>
<parameter name="time">
<parameter_description> the base time to set.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_uri_handler_new_uri">
<description>
Emits the new-uri signal for a given handler, when that handler has a new URI.
This function should only be called by URI handlers themselves.

</description>
<parameters>
<parameter name="handler">
<parameter_description> A #GstURIHandler
</parameter_description>
</parameter>
<parameter name="uri">
<parameter_description> new URI or NULL if it was unset
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_byte_reader_peek_uint32_be">
<description>
Read a signed 32 bit big endian integer into @val
but keep the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #guint32 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_parse_error_quark">
<description>
Get the error quark used by the parsing subsystem.


</description>
<parameters>
</parameters>
<return> the quark of the parse errors.
</return>
</function>

<function name="gst_vorbis_tag_add">
<description>
Convenience function using gst_tag_from_vorbis_tag(), parsing
a vorbis comment string into the right type and adding it to the
given taglist @list.

Unknown vorbiscomment tags will be added to the tag list in form
of a #GST_TAG_EXTENDED_COMMENT (since 0.10.10 at least).

</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> a vorbiscomment tag string (key in key=value), must be valid UTF-8
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> a vorbiscomment value string (value in key=value), must be valid UTF-8
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_base_audio_src_get_provide_clock">
<description>
Queries whether @src will provide a clock or not. See also
gst_base_audio_src_set_provide_clock.


</description>
<parameters>
<parameter name="src">
<parameter_description> a #GstBaseAudioSrc
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if @src will provide a clock.

Since: 0.10.16
</return>
</function>

<function name="gst_caps_new_empty">
<description>
Creates a new #GstCaps that is empty.  That is, the returned
#GstCaps contains no media formats.
Caller is responsible for unreffing the returned caps.


</description>
<parameters>
</parameters>
<return> the new #GstCaps
</return>
</function>

<function name="gst_sdp_message_get_email">
<description>
Get the email with number @idx from @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
<parameter name="idx">
<parameter_description> an email index
</parameter_description>
</parameter>
</parameters>
<return> the email at position @idx.
</return>
</function>

<function name="gst_rtp_payload_info_for_name">
<description>
Get the #GstRTPPayloadInfo for @media and @encoding_name. This function is
mostly used to get the default clock-rate and bandwidth for dynamic payload
types specified with @media and @encoding name.

The search for @encoding_name will be performed in a case insensitve way.


</description>
<parameters>
<parameter name="media">
<parameter_description> the media to find
</parameter_description>
</parameter>
<parameter name="encoding_name">
<parameter_description> the encoding name to find
</parameter_description>
</parameter>
</parameters>
<return> a #GstRTPPayloadInfo or NULL when no info could be found.
</return>
</function>

<function name="gst_format_get_details">
<description>
Get details about the given format.


</description>
<parameters>
<parameter name="format">
<parameter_description> The format to get details of
</parameter_description>
</parameter>
</parameters>
<return> The #GstFormatDefinition for @format or NULL on failure.

MT safe.
</return>
</function>

<function name="gst_object_ref">
<description>
Increments the reference count on @object. This function
does not take the lock on @object because it relies on
atomic refcounting.

This object returns the input parameter to ease writing
constructs like :
result = gst_object_ref (object-&amp;gt;parent);


</description>
<parameters>
<parameter name="object">
<parameter_description> a #GstObject to reference
</parameter_description>
</parameter>
</parameters>
<return> A pointer to @object
</return>
</function>

<function name="gst_rtp_buffer_get_payload_buffer">
<description>
Create a buffer of the payload of the RTP packet in @buffer. This function
will internally create a subbuffer of @buffer so that a memcpy can be
avoided.


</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer
</parameter_description>
</parameter>
</parameters>
<return> A new buffer with the data of the payload.
</return>
</function>

<function name="gst_property_probe_probe_and_get_values">
<description>
Check whether the given property requires a new probe. If so,
fo the probe. After that, retrieve a value list. Meant as a
utility function that wraps the above functions.


</description>
<parameters>
<parameter name="probe">
<parameter_description> the #GstPropertyProbe object.
</parameter_description>
</parameter>
<parameter name="pspec">
<parameter_description> The #GParamSpec property identifier.
</parameter_description>
</parameter>
</parameters>
<return> the list of valid values for this property.
</return>
</function>

<function name="gst_query_new_seeking">
<description>
Constructs a new query object for querying seeking properties of
the stream. 


</description>
<parameters>
<parameter name="format">
<parameter_description> the default #GstFormat for the new query
</parameter_description>
</parameter>
</parameters>
<return> A #GstQuery
</return>
</function>

<function name="gst_query_types_contains">
<description>
See if the given #GstQueryType is inside the @types query types array.


</description>
<parameters>
<parameter name="types">
<parameter_description> The query array to search
</parameter_description>
</parameter>
<parameter name="type">
<parameter_description> the #GstQueryType to find
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the type is found inside the array
</return>
</function>

<function name="gst_element_factory_make">
<description>
Create a new element of the type defined by the given element factory.
If name is NULL, then the element will receive a guaranteed unique name,
consisting of the element factory name and a number.
If name is given, it will be given the name supplied.


</description>
<parameters>
<parameter name="factoryname">
<parameter_description> a named factory to instantiate
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> name of new element
</parameter_description>
</parameter>
</parameters>
<return> new #GstElement or NULL if unable to create element
</return>
</function>

<function name="gst_rtcp_packet_bye_add_ssrcs">
<description>
Adds @len SSRCs in @ssrc to BYE @packet.


</description>
<parameters>
<parameter name="packet">
<parameter_description> a valid BYE #GstRTCPPacket
</parameter_description>
</parameter>
<parameter name="ssrc">
<parameter_description> an array of SSRCs to add
</parameter_description>
</parameter>
<parameter name="len">
<parameter_description> number of elements in @ssrc
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the all the SSRCs were added. This function can return %FALSE if
the max MTU is exceeded or the number of sources blocks is greater than
#GST_RTCP_MAX_BYE_SSRC_COUNT.
</return>
</function>

<function name="gst_poll_set_controllable">
<description>
When @controllable is %TRUE, this function ensures that future calls to
gst_poll_wait() will be affected by gst_poll_restart() and
gst_poll_set_flushing().


</description>
<parameters>
<parameter name="set">
<parameter_description> a #GstPoll.
</parameter_description>
</parameter>
<parameter name="controllable">
<parameter_description> new controllable state.
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the controllability of @set could be updated.

Since: 0.10.18
</return>
</function>

<function name="gst_byte_reader_get_int32_be">
<description>
Read a signed 32 bit big endian integer into @val
and update the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #gint32 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_tag_setter_add_tags">
<description>
Adds the given tag / value pairs on the setter using the given merge mode.
The list must be terminated with NULL.

</description>
<parameters>
<parameter name="setter">
<parameter_description> a #GstTagSetter
</parameter_description>
</parameter>
<parameter name="mode">
<parameter_description> the mode to use
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to set
</parameter_description>
</parameter>
<parameter name="Varargs">
<parameter_description> more tag / value pairs to set
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_value_union">
<description>
Creates a GValue cooresponding to the union of @value1 and @value2.


</description>
<parameters>
<parameter name="dest">
<parameter_description> the destination value
</parameter_description>
</parameter>
<parameter name="value1">
<parameter_description> a value to union
</parameter_description>
</parameter>
<parameter name="value2">
<parameter_description> another value to union
</parameter_description>
</parameter>
</parameters>
<return> always returns %TRUE
</return>
</function>

<function name="gst_event_type_get_name">
<description>
Get a printable name for the given event type. Do not modify or free.


</description>
<parameters>
<parameter name="type">
<parameter_description> the event type
</parameter_description>
</parameter>
</parameters>
<return> a reference to the static name of the event.
</return>
</function>

<function name="gst_event_new_flush_stop">
<description>
Allocate a new flush stop event. The flush stop event can be sent
upstream and downstream and travels out-of-bounds with the dataflow.
It is typically sent after sending a FLUSH_START event to make the
pads accept data again.

Elements can process this event synchronized with the dataflow since
the preceeding FLUSH_START event stopped the dataflow.

This event is typically generated to complete a seek and to resume
dataflow.


</description>
<parameters>
</parameters>
<return> A new flush stop event.
</return>
</function>

<function name="gst_uri_handler_get_uri">
<description>
Gets the currently handled URI.

Returns NULL if there are no URI currently handled. The returned

</description>
<parameters>
<parameter name="handler">
<parameter_description> A #GstURIHandler
</parameter_description>
</parameter>
</parameters>
<return>NULL if there are no URI currently handled. The returned
string must not be modified or freed.
</return>
</function>

<function name="gst_iterator_resync">
<description>
Resync the iterator. this function is mostly called
after gst_iterator_next() returned %GST_ITERATOR_RESYNC.

When an iterator was pushed on @it, it will automatically be popped again
with this function.

MT safe.

</description>
<parameters>
<parameter name="it">
<parameter_description> The #GstIterator to resync
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtcp_buffer_add_packet">
<description>
Add a new packet of @type to @buffer. @packet will point to the newly created 
packet.


</description>
<parameters>
<parameter name="buffer">
<parameter_description> a valid RTCP buffer
</parameter_description>
</parameter>
<parameter name="type">
<parameter_description> the #GstRTCPType of the new packet
</parameter_description>
</parameter>
<parameter name="packet">
<parameter_description> pointer to new packet
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the packet could be created. This function returns %FALSE
if the max mtu is exceeded for the buffer.
</return>
</function>

<function name="gst_tag_list_get_float_index">
<description>
Gets the value that is at the given index for the given tag in the given
list.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList to get the tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
<parameter name="index">
<parameter_description> number of entry to read out
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> location for the result
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if a value was copied, FALSE if the tag didn&apos;t exist in the
given list.
</return>
</function>

<function name="gst_registry_remove_feature">
<description>
Remove the feature from the registry.

MT safe.

</description>
<parameters>
<parameter name="registry">
<parameter_description> the registry to remove the feature from
</parameter_description>
</parameter>
<parameter name="feature">
<parameter_description> the feature to remove
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_plugin_load_file">
<description>
Loads the given plugin and refs it.  Caller needs to unref after use.


</description>
<parameters>
<parameter name="filename">
<parameter_description> the plugin filename to load
</parameter_description>
</parameter>
<parameter name="error">
<parameter_description> pointer to a NULL-valued GError
</parameter_description>
</parameter>
</parameters>
<return> a reference to the existing loaded GstPlugin, a reference to the
newly-loaded GstPlugin, or NULL if an error occurred.
</return>
</function>

<function name="gst_bus_add_signal_watch_full">
<description>
Adds a bus signal watch to the default main context with the given priority.
After calling this statement, the bus will emit the &quot;message&quot; signal for each
message posted on the bus when the main loop is running.

This function may be called multiple times. To clean up, the caller is
responsible for calling gst_bus_remove_signal_watch() as many times as this
function is called.

There can only be a single bus watch per bus, you most remove all signal watch
before you can set another type of watch.

MT safe.

</description>
<parameters>
<parameter name="bus">
<parameter_description> a #GstBus on which you want to receive the &quot;message&quot; signal
</parameter_description>
</parameter>
<parameter name="priority">
<parameter_description> The priority of the watch.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_interpolation_control_source_unset">
<description>
Used to remove the value of given controller-handled property at a certain
time.


</description>
<parameters>
<parameter name="self">
<parameter_description> the #GstInterpolationControlSource object
</parameter_description>
</parameter>
<parameter name="timestamp">
<parameter_description> the time the control-change should be removed from
</parameter_description>
</parameter>
</parameters>
<return> FALSE if the value couldn&apos;t be unset (i.e. not found, TRUE otherwise.
</return>
</function>

<function name="gst_bit_reader_free">
<description>
Frees a #GstBitReader instance, which was previously allocated by
gst_bit_reader_new() or gst_bit_reader_new_from_buffer().

Since: 0.10.22

</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstBitReader instance
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_sdp_media_set_media">
<description>
Set the media description of @media to @med.


</description>
<parameters>
<parameter name="media">
<parameter_description> a #GstSDPMedia
</parameter_description>
</parameter>
<parameter name="med">
<parameter_description> the media description
</parameter_description>
</parameter>
</parameters>
<return> #GST_SDP_OK.
</return>
</function>

<function name="gst_rtsp_url_get_port">
<description>
Get the port number of @url.


</description>
<parameters>
<parameter name="url">
<parameter_description> a #GstRTSPUrl
</parameter_description>
</parameter>
<parameter name="port">
<parameter_description> location to hold the port
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK.
</return>
</function>

<function name="gst_audio_is_buffer_framed">
<description>
Check if the buffer size is a whole multiple of the frame size.


</description>
<parameters>
<parameter name="pad">
<parameter_description> the #GstPad to get the caps from
</parameter_description>
</parameter>
<parameter name="buf">
<parameter_description> the #GstBuffer
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if buffer size is multiple.
</return>
</function>

<function name="gst_video_frame_rate">
<description>
A convenience function to retrieve a GValue holding the framerate
from the caps on a pad.

The pad needs to have negotiated caps containing a framerate property.


</description>
<parameters>
<parameter name="pad">
<parameter_description> pointer to a #GstPad
</parameter_description>
</parameter>
</parameters>
<return> NULL if the pad has no configured caps or the configured caps
do not contain a framerate.

</return>
</function>

<function name="gst_rtsp_header_as_text">
<description>
Convert @field to a string.


</description>
<parameters>
<parameter name="field">
<parameter_description> a #GstRTSPHeaderField
</parameter_description>
</parameter>
</parameters>
<return> a string representation of @field.
</return>
</function>

<function name="gst_mixer_message_get_type">
<description>
Check a bus message to see if it is a GstMixer notification
message and return the GstMixerMessageType identifying which
type of notification it is.


</description>
<parameters>
<parameter name="message">
<parameter_description> A GstMessage to inspect.
</parameter_description>
</parameter>
</parameters>
<return> The type of the GstMixerMessage, or GST_MIXER_MESSAGE_NONE
if the message is not a GstMixer notification.

Since: 0.10.14
</return>
</function>

<function name="gst_plugin_get_package">
<description>
get the package the plugin belongs to.


</description>
<parameters>
<parameter name="plugin">
<parameter_description> plugin to get the package of
</parameter_description>
</parameter>
</parameters>
<return> the package of the plugin
</return>
</function>

<function name="gst_mini_object_is_writable">
<description>
Checks if a mini-object is writable.  A mini-object is writable
if the reference count is one and the #GST_MINI_OBJECT_FLAG_READONLY
flag is not set.  Modification of a mini-object should only be
done after verifying that it is writable.

MT safe


</description>
<parameters>
<parameter name="mini_object">
<parameter_description> the mini-object to check
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the object is writable.
</return>
</function>

<function name="gst_structure_id_set_value">
<description>
Sets the field with the given GQuark @field to @value.  If the field
does not exist, it is created.  If the field exists, the previous
value is replaced and freed.

</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="field">
<parameter_description> a #GQuark representing a field
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> the new value of the field
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_task_set_lock">
<description>
Set the mutex used by the task. The mutex will be acquired before
calling the #GstTaskFunction.

This function has to be called before calling gst_task_pause() or
gst_task_start().

MT safe.

</description>
<parameters>
<parameter name="task">
<parameter_description> The #GstTask to use
</parameter_description>
</parameter>
<parameter name="mutex">
<parameter_description> The #GMutex to use
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_preset_delete_preset">
<description>
Delete the given preset.


</description>
<parameters>
<parameter name="preset">
<parameter_description> a #GObject that implements #GstPreset
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> preset name to remove
</parameter_description>
</parameter>
</parameters>
<return> %TRUE for success, %FALSE if e.g. there is no preset with that @name

Since: 0.10.20
</return>
</function>

<function name="gst_element_get_state">
<description>
Gets the state of the element.

For elements that performed an ASYNC state change, as reported by
gst_element_set_state(), this function will block up to the
specified timeout value for the state change to complete.
If the element completes the state change or goes into
an error, this function returns immediately with a return value of
%GST_STATE_CHANGE_SUCCESS or %GST_STATE_CHANGE_FAILURE respectively.

For elements that did not return %GST_STATE_CHANGE_ASYNC, this function
Returns: %GST_STATE_CHANGE_SUCCESS if the element has no more pending state

</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement to get the state of.
</parameter_description>
</parameter>
<parameter name="state">
<parameter_description> a pointer to #GstState to hold the state. Can be %NULL.
</parameter_description>
</parameter>
<parameter name="pending">
<parameter_description> a pointer to #GstState to hold the pending state.
Can be %NULL.
</parameter_description>
</parameter>
<parameter name="timeout">
<parameter_description> a #GstClockTime to specify the timeout for an async
state change or %GST_CLOCK_TIME_NONE for infinite timeout.
</parameter_description>
</parameter>
</parameters>
<return> %GST_STATE_CHANGE_SUCCESS if the element has no more pending state
and the last state change succeeded, %GST_STATE_CHANGE_ASYNC if the
element is still performing a state change or
%GST_STATE_CHANGE_FAILURE if the last state change failed.

MT safe.
</return>
</function>

<function name="gst_byte_reader_get_data">
<description>
Returns: %TRUE if successful, %FALSE otherwise.

</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> Size in bytes
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #guint8 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_type_register_static_full">
<description>
Helper function which constructs a #GTypeInfo structure and registers a 
GType, but which generates less linker overhead than a static const 
#GTypeInfo structure. For further details of the parameters, please see
#GTypeInfo in the GLib documentation.

Registers type_name as the name of a new static type derived from 
parent_type. The value of flags determines the nature (e.g. abstract or 
not) of the type. It works by filling a GTypeInfo struct and calling 
g_type_info_register_static().


</description>
<parameters>
<parameter name="parent_type">
<parameter_description> The GType of the parent type the newly registered type will 
derive from
</parameter_description>
</parameter>
<parameter name="type_name">
<parameter_description> NULL-terminated string used as the name of the new type
</parameter_description>
</parameter>
<parameter name="class_size">
<parameter_description> Size of the class structure.
</parameter_description>
</parameter>
<parameter name="base_init">
<parameter_description> Location of the base initialization function (optional).
</parameter_description>
</parameter>
<parameter name="base_finalize">
<parameter_description> Location of the base finalization function (optional).
</parameter_description>
</parameter>
<parameter name="class_init">
<parameter_description> Location of the class initialization function for class types 
Location of the default vtable inititalization function for interface 
types. (optional)
</parameter_description>
</parameter>
<parameter name="class_finalize">
<parameter_description> Location of the class finalization function for class types.
Location of the default vtable finalization function for interface types. 
(optional)
</parameter_description>
</parameter>
<parameter name="class_data">
<parameter_description> User-supplied data passed to the class init/finalize functions.
</parameter_description>
</parameter>
<parameter name="instance_size">
<parameter_description> Size of the instance (object) structure (required for 
instantiatable types only).
</parameter_description>
</parameter>
<parameter name="n_preallocs">
<parameter_description> The number of pre-allocated (cached) instances to reserve 
memory for (0 indicates no caching). Ignored on recent GLib&apos;s.
</parameter_description>
</parameter>
<parameter name="instance_init">
<parameter_description> Location of the instance initialization function (optional, 
for instantiatable types only).
</parameter_description>
</parameter>
<parameter name="value_table">
<parameter_description> A GTypeValueTable function table for generic handling of 
GValues of this type (usually only useful for fundamental types). 
</parameter_description>
</parameter>
<parameter name="flags">
<parameter_description> #GTypeFlags for this GType. E.g: G_TYPE_FLAG_ABSTRACT
</parameter_description>
</parameter>
</parameters>
<return> A #GType for the newly-registered type.

Since: 0.10.14
</return>
</function>

<function name="gst_fft_f64_window">
<description>
This calls the window function @window on the @timedata sample buffer.


</description>
<parameters>
<parameter name="self">
<parameter_description> #GstFFTF64 instance for this call
</parameter_description>
</parameter>
<parameter name="timedata">
<parameter_description> Time domain samples
</parameter_description>
</parameter>
<parameter name="window">
<parameter_description> Window function to apply
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_tag_list_get_char">
<description>
Copies the contents for the given tag into the value, merging multiple values
into one if multiple values are associated with the tag.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList to get the tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> location for the result
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if a value was copied, FALSE if the tag didn&apos;t exist in the
given list.
</return>
</function>

<function name="gst_pad_set_acceptcaps_function">
<description>
Sets the given acceptcaps function for the pad.  The acceptcaps function
will be called to check if the pad can accept the given caps. Setting the
acceptcaps function to NULL restores the default behaviour of allowing
any caps that matches the caps from gst_pad_get_caps.

</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad.
</parameter_description>
</parameter>
<parameter name="acceptcaps">
<parameter_description> the #GstPadAcceptCapsFunction to set.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_riff_init">
<description>
Initialize riff library.

</description>
<parameters>
</parameters>
<return></return>
</function>

<function name="gst_sdp_media_add_bandwidth">
<description>
Add the bandwidth information with @bwtype and @bandwidth to @media.


</description>
<parameters>
<parameter name="media">
<parameter_description> a #GstSDPMedia
</parameter_description>
</parameter>
<parameter name="bwtype">
<parameter_description> the bandwidth modifier type
</parameter_description>
</parameter>
<parameter name="bandwidth">
<parameter_description> the bandwidth in kilobits per second
</parameter_description>
</parameter>
</parameters>
<return> #GST_SDP_OK.
</return>
</function>

<function name="gst_type_find_factory_get_extensions">
<description>
Gets the extensions associated with a #GstTypeFindFactory. The returned
array should not be changed. If you need to change stuff in it, you should
copy it using g_stdupv().  This function may return NULL to indicate
a 0-length list.


</description>
<parameters>
<parameter name="factory">
<parameter_description> A #GstTypeFindFactory
</parameter_description>
</parameter>
</parameters>
<return> a NULL-terminated array of extensions associated with this factory
</return>
</function>

<function name="gst_rtsp_connection_create">
<description>
Create a newly allocated #GstRTSPConnection from @url and store it in @conn.
The connection will not yet attempt to connect to @url, use
gst_rtsp_connection_connect().


</description>
<parameters>
<parameter name="url">
<parameter_description> a #GstRTSPUrl 
</parameter_description>
</parameter>
<parameter name="conn">
<parameter_description> a #GstRTSPConnection
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK when @conn contains a valid connection.
</return>
</function>

<function name="gst_tag_register_musicbrainz_tags">
<description>
Registers additional musicbrainz-specific tags with the GStreamer tag
system. Plugins and applications that use these tags should call this
function before using them. Can be called multiple times.

</description>
<parameters>
</parameters>
<return></return>
</function>

<function name="gst_segment_clip">
<description>
Clip the given @start and @stop values to the segment boundaries given
in @segment. @start and @stop are compared and clipped to @segment 
start and stop values.

If the function returns FALSE, @start and @stop are known to fall
outside of @segment and @clip_start and @clip_stop are not updated.

When the function returns TRUE, @clip_start and @clip_stop will be
updated. If @clip_start or @clip_stop are different from @start or @stop
respectively, the region fell partially in the segment.

Note that when @stop is -1, @clip_stop will be set to the end of the
segment. Depending on the use case, this may or may not be what you want.


</description>
<parameters>
<parameter name="segment">
<parameter_description> a #GstSegment structure.
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> the format of the segment.
</parameter_description>
</parameter>
<parameter name="start">
<parameter_description> the start position in the segment
</parameter_description>
</parameter>
<parameter name="stop">
<parameter_description> the stop position in the segment
</parameter_description>
</parameter>
<parameter name="clip_start">
<parameter_description> the clipped start position in the segment
</parameter_description>
</parameter>
<parameter name="clip_stop">
<parameter_description> the clipped stop position in the segment
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the given @start and @stop times fall partially or 
completely in @segment, FALSE if the values are completely outside 
of the segment.
</return>
</function>

<function name="gst_tag_get_description">
<description>
Returns: the human-readable description of this tag

</description>
<parameters>
<parameter name="tag">
<parameter_description> the tag
</parameter_description>
</parameter>
</parameters>
<return> the human-readable description of this tag
</return>
</function>

<function name="gst_mixer_set_volume">
<description>
Sets the volume on each channel in a track. Short note about
naming: a track is defined as one separate stream owned by
the mixer/element, such as &apos;Line-in&apos; or &apos;Microphone&apos;. A
channel is said to be a mono-stream inside this track. A
stereo track thus contains two channels.

</description>
<parameters>
<parameter name="mixer">
<parameter_description> The #GstMixer (a #GstElement) that owns the track.
</parameter_description>
</parameter>
<parameter name="track">
<parameter_description> The #GstMixerTrack to set the volume on.
</parameter_description>
</parameter>
<parameter name="volumes">
<parameter_description> an array of integers (of size track-&amp;gt;num_channels)
that gives the wanted volume for each channel in
this track.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_flow_to_quark">
<description>
Get the unique quark for the given GstFlowReturn.


</description>
<parameters>
<parameter name="ret">
<parameter_description> a #GstFlowReturn to get the quark of.
</parameter_description>
</parameter>
</parameters>
<return> the quark associated with the flow return or 0 if an
invalid return was specified.
</return>
</function>

<function name="gst_sdp_message_times_len">
<description>
Get the number of time information entries in @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
</parameters>
<return> the number of time information entries in @msg.
</return>
</function>

<function name="gst_fft_f32_inverse_fft">
<description>
This performs the inverse FFT on @freqdata and puts the result in @timedata.

@freqdata must have @len/2 + 1 samples, where @len is the parameter specified
while allocating the #GstFFTF32 instance with gst_fft_f32_new().

@timedata must be large enough to hold @len time domain samples.


</description>
<parameters>
<parameter name="self">
<parameter_description> #GstFFTF32 instance for this call
</parameter_description>
</parameter>
<parameter name="freqdata">
<parameter_description> Buffer of the samples in the frequency domain
</parameter_description>
</parameter>
<parameter name="timedata">
<parameter_description> Target buffer for the samples in the time domain
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_set_checkgetrange_function">
<description>
Sets the given checkgetrange function for the pad. Implement this function
on a pad if you dynamically support getrange based scheduling on the pad.

</description>
<parameters>
<parameter name="pad">
<parameter_description> a source #GstPad.
</parameter_description>
</parameter>
<parameter name="check">
<parameter_description> the #GstPadCheckGetRangeFunction to set.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_base_src_is_live">
<description>
Check if an element is in live mode.


</description>
<parameters>
<parameter name="src">
<parameter_description> base source instance
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if element is in live mode.
</return>
</function>

<function name="gst_rtp_buffer_validate_data">
<description>
Check if the @data and @size point to the data of a valid RTP packet.
This function checks the length, version and padding of the packet data.
Use this function to validate a packet before using the other functions in
this module.


</description>
<parameters>
<parameter name="data">
<parameter_description> the data to validate
</parameter_description>
</parameter>
<parameter name="len">
<parameter_description> the length of @data to validate
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the data points to a valid RTP packet.
</return>
</function>

<function name="gst_element_query_duration">
<description>
Queries an element for the total stream duration.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement to invoke the duration query on.
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> a pointer to the #GstFormat asked for.
On return contains the #GstFormat used.
</parameter_description>
</parameter>
<parameter name="duration">
<parameter_description> A location in which to store the total duration, or NULL.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the query could be performed.
</return>
</function>

<function name="gst_byte_reader_get_uint8">
<description>
Read an unsigned 8 bit integer into @val and update the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #guint8 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_ring_buffer_parse_caps">
<description>
Parse @caps into @spec.


</description>
<parameters>
<parameter name="spec">
<parameter_description> a spec
</parameter_description>
</parameter>
<parameter name="caps">
<parameter_description> a #GstCaps
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the caps could be parsed.
</return>
</function>

<function name="gst_pad_set_internal_link_function">
<description>
Sets the given internal link function for the pad.

Deprecated: Use the thread-safe gst_pad_set_iterate_internal_links_function()

</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad of either direction.
</parameter_description>
</parameter>
<parameter name="intlink">
<parameter_description> the #GstPadIntLinkFunction to set.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_pull_range">
<description>
Pulls a @buffer from the peer pad.

This function will first trigger the pad block signal if it was
installed.

When @pad is not linked #GST_FLOW_NOT_LINKED is returned else this
function returns the result of gst_pad_get_range() on the peer pad.
See gst_pad_get_range() for a list of return values and for the
semantics of the arguments of this function.

@buffer&apos;s caps must either be unset or the same as what is already
configured on @pad. Renegotiation within a running pull-mode pipeline is not
supported.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a sink #GstPad, returns GST_FLOW_ERROR if not.
</parameter_description>
</parameter>
<parameter name="offset">
<parameter_description> The start offset of the buffer
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> The length of the buffer
</parameter_description>
</parameter>
<parameter name="buffer">
<parameter_description> a pointer to hold the #GstBuffer, returns GST_FLOW_ERROR if %NULL.
</parameter_description>
</parameter>
</parameters>
<return> a #GstFlowReturn from the peer pad.
When this function returns #GST_FLOW_OK, @buffer will contain a valid
#GstBuffer that should be freed with gst_buffer_unref() after usage.
@buffer may not be used or freed when any other return value than
#GST_FLOW_OK is returned.

MT safe.
</return>
</function>

<function name="gst_caps_do_simplify">
<description>
Modifies the given @caps inplace into a representation that represents the
same set of formats, but in a simpler form.  Component structures that are
identical are merged.  Component structures that have values that can be
merged are also merged.


</description>
<parameters>
<parameter name="caps">
<parameter_description> a #GstCaps to simplify
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if the caps could be simplified
</return>
</function>

<function name="gst_object_sync_values">
<description>
Convenience function for GObject


</description>
<parameters>
<parameter name="object">
<parameter_description> the object that has controlled properties
</parameter_description>
</parameter>
<parameter name="timestamp">
<parameter_description> the time that should be processed
</parameter_description>
</parameter>
</parameters>
<return> same thing as gst_controller_sync_values()
Since: 0.9
</return>
</function>

<function name="gst_clock_get_time">
<description>
Gets the current time of the given clock. The time is always
monotonically increasing and adjusted according to the current
offset and rate.


</description>
<parameters>
<parameter name="clock">
<parameter_description> a #GstClock to query
</parameter_description>
</parameter>
</parameters>
<return> the time of the clock. Or GST_CLOCK_TIME_NONE when
given invalid input.

MT safe.
</return>
</function>

<function name="gst_message_parse_structure_change">
<description>
Extracts the change type and completion status from the GstMessage.

MT safe.

Since: 0.10.22

</description>
<parameters>
<parameter name="message">
<parameter_description> A valid #GstMessage of type GST_MESSAGE_STRUCTURE_CHANGE.
</parameter_description>
</parameter>
<parameter name="type">
<parameter_description> A pointer to hold the change type
</parameter_description>
</parameter>
<parameter name="owner">
<parameter_description> The owner element of the message source
</parameter_description>
</parameter>
<parameter name="busy">
<parameter_description> A pointer to hold whether the change is in progress or has been
completed
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_task_create">
<description>
Create a new Task that will repeatedly call the provided @func
with @data as a parameter. Typically the task will run in
a new thread.

The function cannot be changed after the task has been created. You
must create a new #GstTask to change the function.


</description>
<parameters>
<parameter name="func">
<parameter_description> The #GstTaskFunction to use
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> User data to pass to @func
</parameter_description>
</parameter>
</parameters>
<return> A new #GstTask.

MT safe.
</return>
</function>

<function name="gst_tag_list_get_date">
<description>
Copies the contents for the given tag into the value, merging multiple values
into one if multiple values are associated with the tag.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList to get the tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> location for the result
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if a value was copied, FALSE if the tag didn&apos;t exist in the
given list or if it was #NULL.
</return>
</function>

<function name="gst_base_transform_is_in_place">
<description>
See if @trans is configured as a in_place transform.


</description>
<parameters>
<parameter name="trans">
<parameter_description> the #GstBaseTransform to query
</parameter_description>
</parameter>
</parameters>
<return> TRUE is the transform is configured in in_place mode.

MT safe.
</return>
</function>

<function name="gst_bus_timed_pop_filtered">
<description>
Get a message from the bus whose type matches the message type mask @types,
waiting up to the specified timeout (and discarding any messages that do not
match the mask provided).

If @timeout is 0, this function behaves like gst_bus_pop_filtered(). If
@timeout is #GST_CLOCK_TIME_NONE, this function will block forever until a
matching message was posted on the bus.


</description>
<parameters>
<parameter name="bus">
<parameter_description> a #GstBus to pop from
</parameter_description>
</parameter>
<parameter name="timeout">
<parameter_description> a timeout in nanoseconds, or GST_CLOCK_TIME_NONE to wait forever
</parameter_description>
</parameter>
<parameter name="types">
<parameter_description> message types to take into account, GST_MESSAGE_ANY for any type
</parameter_description>
</parameter>
</parameters>
<return> a #GstMessage matching the filter in @types, or NULL if no matching
message was found on the bus until the timeout expired.
The message is taken from the bus and needs to be unreffed with
gst_message_unref() after usage.

MT safe.

Since: 0.10.15
</return>
</function>

<function name="gst_pad_query_convert">
<description>
Queries a pad to convert @src_val in @src_format to @dest_format.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad to invoke the convert query on.
</parameter_description>
</parameter>
<parameter name="src_format">
<parameter_description> a #GstFormat to convert from.
</parameter_description>
</parameter>
<parameter name="src_val">
<parameter_description> a value to convert.
</parameter_description>
</parameter>
<parameter name="dest_format">
<parameter_description> a pointer to the #GstFormat to convert to.
</parameter_description>
</parameter>
<parameter name="dest_val">
<parameter_description> a pointer to the result.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the query could be performed.
</return>
</function>

<function name="gst_plugin_get_origin">
<description>
get the URL where the plugin comes from


</description>
<parameters>
<parameter name="plugin">
<parameter_description> plugin to get the origin of
</parameter_description>
</parameter>
</parameters>
<return> the origin of the plugin
</return>
</function>

<function name="gst_buffer_set_caps">
<description>
Sets the media type on the buffer. The refcount of the caps will
be increased and any previous caps on the buffer will be
unreffed.

</description>
<parameters>
<parameter name="buffer">
<parameter_description> a #GstBuffer.
</parameter_description>
</parameter>
<parameter name="caps">
<parameter_description> a #GstCaps.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_format_get_by_nick">
<description>
Return the format registered with the given nick.


</description>
<parameters>
<parameter name="nick">
<parameter_description> The nick of the format
</parameter_description>
</parameter>
</parameters>
<return> The format with @nick or GST_FORMAT_UNDEFINED
if the format was not registered.
</return>
</function>

<function name="gst_bus_sync_signal_handler">
<description>
A helper GstBusSyncHandler that can be used to convert all synchronous
messages into signals.


</description>
<parameters>
<parameter name="bus">
<parameter_description> a #GstBus
</parameter_description>
</parameter>
<parameter name="message">
<parameter_description> the #GstMessage received
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> user data
</parameter_description>
</parameter>
</parameters>
<return> GST_BUS_PASS
</return>
</function>

<function name="gst_ring_buffer_release">
<description>
Free the resources of the ringbuffer.


</description>
<parameters>
<parameter name="buf">
<parameter_description> the #GstRingBuffer to release
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the device could be released, FALSE on error.

MT safe.
</return>
</function>

<function name="gst_ring_buffer_delay">
<description>
Get the number of samples queued in the audio device. This is
usually less than the segment size but can be bigger when the
implementation uses another internal buffer between the audio
device.

For playback ringbuffers this is the amount of samples transfered from the
ringbuffer to the device but still not played.

For capture ringbuffers this is the amount of samples in the device that are
not yet transfered to the ringbuffer.


</description>
<parameters>
<parameter name="buf">
<parameter_description> the #GstRingBuffer to query
</parameter_description>
</parameter>
</parameters>
<return> The number of samples queued in the audio device.

MT safe.
</return>
</function>

<function name="gst_message_type_get_name">
<description>
Get a printable name for the given message type. Do not modify or free.


</description>
<parameters>
<parameter name="type">
<parameter_description> the message type
</parameter_description>
</parameter>
</parameters>
<return> a reference to the static name of the message.
</return>
</function>

<function name="gst_event_set_seqnum">
<description>
Set the sequence number of a event.

This function might be called by the creator of a event to indicate that the
event relates to other events or messages. See gst_event_get_seqnum() for
more information.

MT safe.

Since: 0.10.22

</description>
<parameters>
<parameter name="event">
<parameter_description> A #GstEvent.
</parameter_description>
</parameter>
<parameter name="seqnum">
<parameter_description> A sequence number.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtsp_message_set_body">
<description>
Set the body of @msg to a copy of @data.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstRTSPMessage
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> the data
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> the size of @data
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK.
</return>
</function>

<function name="gst_alloc_trace_print_all">
<description>
Print the status of all registered alloc trace objects.

</description>
<parameters>
</parameters>
<return></return>
</function>

<function name="gst_sdp_message_add_bandwidth">
<description>
Add the specified bandwidth information to @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
<parameter name="bwtype">
<parameter_description> the bandwidth modifier type
</parameter_description>
</parameter>
<parameter name="bandwidth">
<parameter_description> the bandwidth in kilobits per second
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPResult.
</return>
</function>

<function name="gst_structure_get_int">
<description>
Sets the int pointed to by @value corresponding to the value of the
given field.  Caller is responsible for making sure the field exists
and has the correct type.

returns %FALSE.

</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="fieldname">
<parameter_description> the name of a field
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> a pointer to an int to set
</parameter_description>
</parameter>
</parameters>
<return>%FALSE.
</return>
</function>

<function name="gst_clock_unadjust_unlocked">
<description>
Converts the given @external clock time to the internal time of @clock,
using the rate and reference time set with gst_clock_set_calibration().
This function should be called with the clock&apos;s OBJECT_LOCK held and
is mainly used by clock subclasses.

This function is the reverse of gst_clock_adjust_unlocked().


</description>
<parameters>
<parameter name="clock">
<parameter_description> a #GstClock to use
</parameter_description>
</parameter>
<parameter name="external">
<parameter_description> an external clock time
</parameter_description>
</parameter>
</parameters>
<return> the internal time of the clock corresponding to @external.

Since: 0.10.13
</return>
</function>

<function name="gst_parse_bin_from_description_full">
<description>
This is a convenience wrapper around gst_parse_launch() to create a
#GstBin from a gst-launch-style pipeline description. See
gst_parse_launch() and the gst-launch man page for details about the
syntax. Ghost pads on the bin for unlinked source or sink pads
within the bin can automatically be created (but only a maximum of
one ghost pad for each direction will be created; if you expect
multiple unlinked source pads or multiple unlinked sink pads
and want them all ghosted, you will have to create the ghost pads
yourself).


</description>
<parameters>
<parameter name="bin_description">
<parameter_description> command line describing the bin
</parameter_description>
</parameter>
<parameter name="ghost_unlinked_pads">
<parameter_description> whether to automatically create ghost pads
for unlinked source or sink pads within the bin
</parameter_description>
</parameter>
<parameter name="context">
<parameter_description> a parse context allocated with gst_parse_context_new(), or %NULL
</parameter_description>
</parameter>
<parameter name="flags">
<parameter_description> parsing options, or #GST_PARSE_FLAG_NONE
</parameter_description>
</parameter>
<parameter name="err">
<parameter_description> where to store the error message in case of an error, or NULL
</parameter_description>
</parameter>
</parameters>
<return> a newly-created bin, or NULL if an error occurred.

Since: 0.10.20
</return>
</function>

<function name="gst_type_find_register">
<description>
Registers a new typefind function to be used for typefinding. After
registering this function will be available for typefinding.
This function is typically called during an element&apos;s plugin initialization.


</description>
<parameters>
<parameter name="plugin">
<parameter_description> A #GstPlugin, or NULL for a static typefind function (note that
passing NULL only works in GStreamer 0.10.16 and later)
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> The name for registering
</parameter_description>
</parameter>
<parameter name="rank">
<parameter_description> The rank (or importance) of this typefind function
</parameter_description>
</parameter>
<parameter name="func">
<parameter_description> The #GstTypeFindFunction to use
</parameter_description>
</parameter>
<parameter name="extensions">
<parameter_description> Optional extensions that could belong to this type
</parameter_description>
</parameter>
<parameter name="possible_caps">
<parameter_description> Optionally the caps that could be returned when typefinding
succeeds
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> Optional user data. This user data must be available until the plugin
is unloaded.
</parameter_description>
</parameter>
<parameter name="data_notify">
<parameter_description> a #GDestroyNotify that will be called on @data when the plugin
is unloaded.
</parameter_description>
</parameter>
</parameters>
<return> TRUE on success, FALSE otherwise
</return>
</function>

<function name="gst_base_sink_query_latency">
<description>
Query the sink for the latency parameters. The latency will be queried from
the upstream elements. @live will be TRUE if @sink is configured to
synchronize against the clock. @upstream_live will be TRUE if an upstream
element is live. 

If both @live and @upstream_live are TRUE, the sink will want to compensate
for the latency introduced by the upstream elements by setting the
@min_latency to a strictly possitive value.

This function is mostly used by subclasses. 


</description>
<parameters>
<parameter name="sink">
<parameter_description> the sink
</parameter_description>
</parameter>
<parameter name="live">
<parameter_description> if the sink is live
</parameter_description>
</parameter>
<parameter name="upstream_live">
<parameter_description> if an upstream element is live
</parameter_description>
</parameter>
<parameter name="min_latency">
<parameter_description> the min latency of the upstream elements
</parameter_description>
</parameter>
<parameter name="max_latency">
<parameter_description> the max latency of the upstream elements
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the query succeeded.

Since: 0.10.12
</return>
</function>

<function name="gst_install_plugins_installation_in_progress">
<description>
Checks whether plugin installation (initiated by this application only)
is currently in progress.


</description>
<parameters>
</parameters>
<return> TRUE if plugin installation is in progress, otherwise FALSE

Since: 0.10.12
</return>
</function>

<function name="gst_plugin_feature_list">
<description>
Runs a filter against all plugin features and returns a GList with
the results. If the first flag is set, only the first match is
returned (as a list with a single object).


</description>
<parameters>
<parameter name="plugin">
<parameter_description> plugin to query
</parameter_description>
</parameter>
<parameter name="filter">
<parameter_description> the filter to use
</parameter_description>
</parameter>
<parameter name="first">
<parameter_description> only return first match
</parameter_description>
</parameter>
<parameter name="user_data">
<parameter_description> user data passed to the filter function
</parameter_description>
</parameter>
</parameters>
<return> a GList of features, g_list_free after use.
</return>
</function>

<function name="gst_missing_uri_sink_installer_detail_new">
<description>
Returns: a newly-allocated detail string, or NULL on error. Free string

</description>
<parameters>
<parameter name="protocol">
<parameter_description> the URI protocol the missing source needs to implement,
e.g. &quot;http&quot; or &quot;mms&quot;
</parameter_description>
</parameter>
</parameters>
<return> a newly-allocated detail string, or NULL on error. Free string
with g_free() when not needed any longer.

Since: 0.10.15
</return>
</function>

<function name="gst_query_set_duration">
<description>
Answer a duration query by setting the requested value in the given format.

</description>
<parameters>
<parameter name="query">
<parameter_description> a #GstQuery
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> the #GstFormat for the duration
</parameter_description>
</parameter>
<parameter name="duration">
<parameter_description> the duration of the stream
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_base_transform_reconfigure">
<description>
Instructs @trans to renegotiate a new downstream transform on the next
buffer. This function is typically called after properties on the transform
were set that influence the output format.

Since: 0.10.21

</description>
<parameters>
<parameter name="trans">
<parameter_description> a #GstBaseTransform
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_install_plugins_async">
<description>
Requests plugin installation without blocking. Once the plugins have been
installed or installation has failed, @func will be called with the result
of the installation and your provided @user_data pointer.

This function requires a running GLib/Gtk main loop. If you are not
running a GLib/Gtk main loop, make sure to regularly call
g_main_context_iteration(NULL,FALSE).

The installer strings that make up @detail are typically obtained by
calling gst_missing_plugin_message_get_installer_detail() on missing-plugin
messages that have been caught on a pipeline&apos;s bus or created by the
application via the provided API, such as gst_missing_element_message_new().

It is possible to request the installation of multiple missing plugins in
one go (as might be required if there is a demuxer for a certain format
installed but no suitable video decoder and no suitable audio decoder).


</description>
<parameters>
<parameter name="details">
<parameter_description> NULL-terminated array of installer string details (see below)
</parameter_description>
</parameter>
<parameter name="ctx">
<parameter_description> a #GstInstallPluginsContext, or NULL
</parameter_description>
</parameter>
<parameter name="func">
<parameter_description> the function to call when the installer program returns
</parameter_description>
</parameter>
<parameter name="user_data">
<parameter_description> the user data to pass to @func when called, or NULL
</parameter_description>
</parameter>
</parameters>
<return> result code whether an external installer could be started

Since: 0.10.12
</return>
</function>

<function name="gst_value_get_fraction_range_min">
<description>
Gets the minimum of the range specified by @value.


</description>
<parameters>
<parameter name="value">
<parameter_description> a GValue initialized to GST_TYPE_FRACTION_RANGE
</parameter_description>
</parameter>
</parameters>
<return> the minimum of the range
</return>
</function>

<function name="gst_tag_list_add_id3_image">
<description>
Adds an image from an ID3 APIC frame (or similar, such as used in FLAC)
to the given tag list. Also see gst_tag_image_data_to_image_buffer() for
more information on image tags in GStreamer.


</description>
<parameters>
<parameter name="tag_list">
<parameter_description> a tag list
</parameter_description>
</parameter>
<parameter name="image_data">
<parameter_description> the (encoded) image
</parameter_description>
</parameter>
<parameter name="image_data_len">
<parameter_description> the length of the encoded image data at @image_data
</parameter_description>
</parameter>
<parameter name="id3_picture_type">
<parameter_description> picture type as per the ID3 (v2.4.0) specification for
the APIC frame (0 = unknown/other)
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the image was processed, otherwise %FALSE

Since: 0.10.20
</return>
</function>

<function name="gst_tag_list_get_char_index">
<description>
Gets the value that is at the given index for the given tag in the given
list.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList to get the tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
<parameter name="index">
<parameter_description> number of entry to read out
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> location for the result
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if a value was copied, FALSE if the tag didn&apos;t exist in the
given list.
</return>
</function>

<function name="gst_sdp_message_get_bandwidth">
<description>
Get the bandwidth at index @idx from @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
<parameter name="idx">
<parameter_description> the bandwidth index
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPBandwidth.
</return>
</function>

<function name="gst_sdp_message_get_uri">
<description>
Get the URI in @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPResult.
</return>
</function>

<function name="gst_object_set_name">
<description>
Sets the name of @object, or gives @object a guaranteed unique
name (if @name is NULL).
This function makes a copy of the provided name, so the caller
retains ownership of the name it sent.


</description>
<parameters>
<parameter name="object">
<parameter_description> a #GstObject
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description>   new name of object
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the name could be set. Since Objects that have
a parent cannot be renamed, this function returns FALSE in those
cases.

MT safe.  This function grabs and releases @object&apos;s LOCK.
</return>
</function>

<function name="gst_interpolation_control_source_unset_all">
<description>
Used to remove all time-stamped values of given controller-handled property


</description>
<parameters>
<parameter name="self">
<parameter_description> the #GstInterpolationControlSource object
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_plugin_list_free">
<description>
Unrefs each member of @list, then frees the list.

</description>
<parameters>
<parameter name="list">
<parameter_description> list of #GstPlugin
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_element_is_indexable">
<description>
Queries if the element can be indexed.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the element can be indexed.

MT safe.
</return>
</function>

<function name="gst_registry_add_plugin">
<description>
Add the plugin to the registry. The plugin-added signal will be emitted.
This function will sink @plugin.


</description>
<parameters>
<parameter name="registry">
<parameter_description> the registry to add the plugin to
</parameter_description>
</parameter>
<parameter name="plugin">
<parameter_description> the plugin to add
</parameter_description>
</parameter>
</parameters>
<return> TRUE on success.

MT safe.
</return>
</function>

<function name="gst_basertppayload_push">
<description>
Push @buffer to the peer element of the payloader. The SSRC, payload type,
seqnum and timestamp of the RTP buffer will be updated first.

This function takes ownership of @buffer.


</description>
<parameters>
<parameter name="payload">
<parameter_description> a #GstBaseRTPPayload
</parameter_description>
</parameter>
<parameter name="buffer">
<parameter_description> a #GstBuffer
</parameter_description>
</parameter>
</parameters>
<return> a #GstFlowReturn.
</return>
</function>

<function name="gst_mixer_mixer_changed">
<description>
This function is called by the mixer implementation to produce
a notification message on the bus indicating that the list of available
mixer tracks for a given mixer object has changed. Applications should
rebuild their interface when they receive this message.

This function only works for GstElements that are implementing the
GstMixer interface, and the element needs to have been provided a bus.

Since: 0.10.18

</description>
<parameters>
<parameter name="mixer">
<parameter_description> the #GstMixer (a #GstElement) which has changed
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_tag_list_add">
<description>
Sets the values for the given tags using the specified mode.

</description>
<parameters>
<parameter name="list">
<parameter_description> list to set tags in
</parameter_description>
</parameter>
<parameter name="mode">
<parameter_description> the mode to use
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag
</parameter_description>
</parameter>
<parameter name="Varargs">
<parameter_description> NULL-terminated list of values to set
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_query_type_get_name">
<description>
Get a printable name for the given query type. Do not modify or free.


</description>
<parameters>
<parameter name="query">
<parameter_description> the query type
</parameter_description>
</parameter>
</parameters>
<return> a reference to the static name of the query.
</return>
</function>

<function name="gst_message_new_segment_done">
<description>
Create a new segment done message. This message is posted by elements that
finish playback of a segment as a result of a segment seek. This message
is received by the application after all elements that posted a segment_start
have posted the segment_done.


</description>
<parameters>
<parameter name="src">
<parameter_description> The object originating the message.
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> The format of the position being done
</parameter_description>
</parameter>
<parameter name="position">
<parameter_description> The position of the segment being done
</parameter_description>
</parameter>
</parameters>
<return> The new segment done message.

MT safe.
</return>
</function>

<function name="gst_dp_crc">
<description>
Calculate a CRC for the given buffer over the given number of bytes.
This is only provided for verification purposes; typical GDP users
will not need this function.


</description>
<parameters>
<parameter name="buffer">
<parameter_description> array of bytes
</parameter_description>
</parameter>
<parameter name="length">
<parameter_description> the length of @buffer
</parameter_description>
</parameter>
</parameters>
<return> a two-byte CRC checksum.
</return>
</function>

<function name="gst_tag_from_id3_tag">
<description>
Looks up the GStreamer tag for a ID3v2 tag.


</description>
<parameters>
<parameter name="id3_tag">
<parameter_description> ID3v2 tag to convert to GStreamer tag
</parameter_description>
</parameter>
</parameters>
<return> The corresponding GStreamer tag or NULL if none exists.
</return>
</function>

<function name="gst_message_new_state_dirty">
<description>
Create a state dirty message. This message is posted whenever an element
changed its state asynchronously and is used internally to update the
states of container objects.


</description>
<parameters>
<parameter name="src">
<parameter_description> the object originating the message
</parameter_description>
</parameter>
</parameters>
<return> The new state dirty message.

MT safe.
</return>
</function>

<function name="gst_structure_get_name_id">
<description>
Get the name of @structure as a GQuark.


</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
</parameters>
<return> the quark representing the name of the structure.
</return>
</function>

<function name="gst_pad_activate_push">
<description>
Activates or deactivates the given pad in push mode via dispatching to the
pad&apos;s activatepushfunc. For use from within pad activation functions only.

If you don&apos;t know what this is, you probably don&apos;t want to call it.


</description>
<parameters>
<parameter name="pad">
<parameter_description> the #GstPad to activate or deactivate.
</parameter_description>
</parameter>
<parameter name="active">
<parameter_description> whether the pad should be active or not.
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the operation was successful.

MT safe.
</return>
</function>

<function name="gst_pb_utils_get_sink_description">
<description>
Returns: a newly-allocated description string, or NULL on error. Free

</description>
<parameters>
<parameter name="protocol">
<parameter_description> the protocol the sink element needs to handle, e.g. &quot;http&quot;
</parameter_description>
</parameter>
</parameters>
<return> a newly-allocated description string, or NULL on error. Free
string with g_free() when not needed any longer.
</return>
</function>

<function name="gst_bit_reader_get_bits_uint16">
<description>
Read @nbits bits into @val and update the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstBitReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #guint16 to store the result
</parameter_description>
</parameter>
<parameter name="nbits">
<parameter_description> number of bits to read
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_bit_reader_peek_bits_uint16">
<description>
Read @nbits bits into @val but keep the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstBitReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #guint16 to store the result
</parameter_description>
</parameter>
<parameter name="nbits">
<parameter_description> number of bits to read
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_event_type_get_flags">
<description>
Gets the #GstEventTypeFlags associated with @type.


</description>
<parameters>
<parameter name="type">
<parameter_description> a #GstEventType
</parameter_description>
</parameter>
</parameters>
<return> a #GstEventTypeFlags.
</return>
</function>

<function name="gst_query_new_position">
<description>
Constructs a new query stream position query object. Use gst_query_unref()
when done with it. A position query is used to query the current position
of playback in the streams, in some format.


</description>
<parameters>
<parameter name="format">
<parameter_description> the default #GstFormat for the new query
</parameter_description>
</parameter>
</parameters>
<return> A #GstQuery
</return>
</function>

<function name="gst_data_queue_is_full">
<description>
Queries if @queue is full. This check will be done using the
#GstDataQueueCheckFullCallback registered with @queue.
MT safe.


</description>
<parameters>
<parameter name="queue">
<parameter_description> a #GstDataQueue.
</parameter_description>
</parameter>
</parameters>
<return> #TRUE if @queue is full.
</return>
</function>

<function name="gst_util_set_object_arg">
<description>
Convertes the string value to the type of the objects argument and
sets the argument with it.

</description>
<parameters>
<parameter name="object">
<parameter_description> the object to set the argument of
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> the name of the argument to set
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> the string value to set
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_value_fraction_subtract">
<description>
Subtracts the @subtrahend from the @minuend and sets @dest to the result.


</description>
<parameters>
<parameter name="dest">
<parameter_description> a GValue initialized to #GST_TYPE_FRACTION
</parameter_description>
</parameter>
<parameter name="minuend">
<parameter_description> a GValue initialized to #GST_TYPE_FRACTION
</parameter_description>
</parameter>
<parameter name="subtrahend">
<parameter_description> a GValue initialized to #GST_TYPE_FRACTION
</parameter_description>
</parameter>
</parameters>
<return> FALSE in case of an error (like integer overflow), TRUE otherwise.
</return>
</function>

<function name="gst_element_link_pads_filtered">
<description>
Links the two named pads of the source and destination elements. Side effect
is that if one of the pads has no parent, it becomes a child of the parent of
the other element. If they have different parents, the link fails. If @caps
is not #NULL, makes sure that the caps of the link is a subset of @caps.


</description>
<parameters>
<parameter name="src">
<parameter_description> a #GstElement containing the source pad.
</parameter_description>
</parameter>
<parameter name="srcpadname">
<parameter_description> the name of the #GstPad in source element or NULL for any pad.
</parameter_description>
</parameter>
<parameter name="dest">
<parameter_description> the #GstElement containing the destination pad.
</parameter_description>
</parameter>
<parameter name="destpadname">
<parameter_description> the name of the #GstPad in destination element or NULL for any pad.
</parameter_description>
</parameter>
<parameter name="filter">
<parameter_description> the #GstCaps to filter the link, or #NULL for no filter.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the pads could be linked, FALSE otherwise.
</return>
</function>

<function name="gst_mini_object_ref">
<description>
Increase the reference count of the mini-object.

Note that the refcount affects the writeability
of @mini-object, see gst_mini_object_is_writable(). It is 
important to note that keeping additional references to
GstMiniObject instances can potentially increase the number
of memcpy operations in a pipeline, especially if the miniobject
is a #GstBuffer.


</description>
<parameters>
<parameter name="mini_object">
<parameter_description> the mini-object
</parameter_description>
</parameter>
</parameters>
<return> the mini-object.
</return>
</function>

<function name="gst_uri_handler_get_uri_type">
<description>
Gets the type of the given URI handler

Returns #GST_URI_UNKNOWN if the @handler isn&apos;t implemented correctly.

</description>
<parameters>
<parameter name="handler">
<parameter_description> A #GstURIHandler.
</parameter_description>
</parameter>
</parameters>
<return>#GST_URI_UNKNOWN if the @handler isn&apos;t implemented correctly.
</return>
</function>

<function name="gst_event_parse_new_segment_full">
<description>
Get the update, rate, applied_rate, format, start, stop and 
position in the newsegment event. See gst_event_new_new_segment_full() 
for a full description of the newsegment event.

Since: 0.10.6

</description>
<parameters>
<parameter name="event">
<parameter_description> The event to query
</parameter_description>
</parameter>
<parameter name="update">
<parameter_description> A pointer to the update flag of the segment
</parameter_description>
</parameter>
<parameter name="rate">
<parameter_description> A pointer to the rate of the segment
</parameter_description>
</parameter>
<parameter name="applied_rate">
<parameter_description> A pointer to the applied_rate of the segment
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> A pointer to the format of the newsegment values
</parameter_description>
</parameter>
<parameter name="start">
<parameter_description> A pointer to store the start value in
</parameter_description>
</parameter>
<parameter name="stop">
<parameter_description> A pointer to store the stop value in
</parameter_description>
</parameter>
<parameter name="position">
<parameter_description> A pointer to store the stream time in
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_bit_reader_get_pos">
<description>
Returns: The current position of @reader in bits.

</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstBitReader instance
</parameter_description>
</parameter>
</parameters>
<return> The current position of @reader in bits.

Since: 0.10.22
</return>
</function>

<function name="gst_object_set_name_prefix">
<description>
Sets the name prefix of @object to @name_prefix.
This function makes a copy of the provided name prefix, so the caller
retains ownership of the name prefix it sent.

MT safe.  This function grabs and releases @object&apos;s LOCK.

</description>
<parameters>
<parameter name="object">
<parameter_description>      a #GstObject
</parameter_description>
</parameter>
<parameter name="name_prefix">
<parameter_description> new name prefix of @object
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_tag_list_get_long_index">
<description>
Gets the value that is at the given index for the given tag in the given
list.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList to get the tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
<parameter name="index">
<parameter_description> number of entry to read out
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> location for the result
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if a value was copied, FALSE if the tag didn&apos;t exist in the
given list.
</return>
</function>

<function name="gst_index_set_group">
<description>
Set the current groupnumber to the given argument.


</description>
<parameters>
<parameter name="index">
<parameter_description> the index to set the new group in
</parameter_description>
</parameter>
<parameter name="groupnum">
<parameter_description> the groupnumber to set
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the operation succeeded, FALSE if the group
did not exist.
</return>
</function>

<function name="gst_dp_packet_from_event">
<description>
Creates a GDP packet from the given event.

Deprecated: use a #GstDPPacketizer


</description>
<parameters>
<parameter name="event">
<parameter_description> a #GstEvent to create a packet for
</parameter_description>
</parameter>
<parameter name="flags">
<parameter_description> the #GDPHeaderFlags to create the header with
</parameter_description>
</parameter>
<parameter name="length">
<parameter_description> a guint pointer to store the header length in
</parameter_description>
</parameter>
<parameter name="header">
<parameter_description> a guint8 pointer to store a newly allocated header byte array in
</parameter_description>
</parameter>
<parameter name="payload">
<parameter_description> a guint8 pointer to store a newly allocated payload byte array in
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the packet was successfully created.
</return>
</function>

<function name="gst_pad_is_active">
<description>
Query if a pad is active


</description>
<parameters>
<parameter name="pad">
<parameter_description> the #GstPad to query
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the pad is active.

MT safe.
</return>
</function>

<function name="GstBaseSink">
<description>
The additional delay between synchronisation and actual rendering of the
media. This property will add additional latency to the device in order to
make other sinks compensate for the delay.

Since: 0.10.22

</description>
<parameters>
</parameters>
<return></return>
</function>

<function name="gst_value_get_caps">
<description>
Gets the contents of @value.


</description>
<parameters>
<parameter name="value">
<parameter_description> a GValue initialized to GST_TYPE_CAPS
</parameter_description>
</parameter>
</parameters>
<return> the contents of @value
</return>
</function>

<function name="gst_interpolation_control_source_get_count">
<description>
Returns: the number of control points that are set.

</description>
<parameters>
<parameter name="self">
<parameter_description> the #GstInterpolationControlSource to get the number of values from
</parameter_description>
</parameter>
</parameters>
<return> the number of control points that are set.

</return>
</function>

<function name="gst_child_proxy_get_children_count">
<description>
Gets the number of child objects this parent contains.


</description>
<parameters>
<parameter name="parent">
<parameter_description> the parent object
</parameter_description>
</parameter>
</parameters>
<return> the number of child objects

MT safe.
</return>
</function>

<function name="gst_sdp_message_set_origin">
<description>
Configure the SDP origin in @msg with the given parameters.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
<parameter name="username">
<parameter_description> the user name
</parameter_description>
</parameter>
<parameter name="sess_id">
<parameter_description> a session id
</parameter_description>
</parameter>
<parameter name="sess_version">
<parameter_description> a session version
</parameter_description>
</parameter>
<parameter name="nettype">
<parameter_description> a network type
</parameter_description>
</parameter>
<parameter name="addrtype">
<parameter_description> an address type
</parameter_description>
</parameter>
<parameter name="addr">
<parameter_description> an address
</parameter_description>
</parameter>
</parameters>
<return> #GST_SDP_OK.
</return>
</function>

<function name="gst_value_is_fixed">
<description>
Tests if the given GValue, if available in a GstStructure (or any other
container) contains a &quot;fixed&quot; (which means: one value) or an &quot;unfixed&quot;
(which means: multiple possible values, such as data lists or data
ranges) value.


</description>
<parameters>
<parameter name="value">
<parameter_description> the #GValue to check
</parameter_description>
</parameter>
</parameters>
<return> true if the value is &quot;fixed&quot;.
</return>
</function>

<function name="gst_tag_parse_extended_comment">
<description>
Convenience function to parse a GST_TAG_EXTENDED_COMMENT string and
separate it into its components.

If successful, @key, @lang and/or @value will be set to newly allocated
strings that you need to free with g_free() when done. @key and @lang
may also be set to NULL by this function if there is no key or no language
code in the extended comment string.


</description>
<parameters>
<parameter name="ext_comment">
<parameter_description> an extended comment string, see #GST_TAG_EXTENDED_COMMENT
</parameter_description>
</parameter>
<parameter name="key">
<parameter_description> return location for the comment description key, or NULL
</parameter_description>
</parameter>
<parameter name="lang">
<parameter_description> return location for the comment ISO-639 language code, or NULL
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> return location for the actual comment string, or NULL
</parameter_description>
</parameter>
<parameter name="fail_if_no_key">
<parameter_description> whether to fail if strings are not in key=value form
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the string could be parsed, otherwise FALSE

Since: 0.10.10
</return>
</function>

<function name="gst_base_sink_get_blocksize">
<description>
Get the number of bytes that the sink will pull when it is operating in pull
mode.


</description>
<parameters>
<parameter name="sink">
<parameter_description> a #GstBaseSink
</parameter_description>
</parameter>
</parameters>
<return> the number of bytes @sink will pull in pull mode.

Since: 0.10.22
</return>
</function>

<function name="gst_value_set_date">
<description>
Sets the contents of @value to coorespond to @date.  The actual
#GDate structure is copied before it is used.

</description>
<parameters>
<parameter name="value">
<parameter_description> a GValue initialized to GST_TYPE_DATE
</parameter_description>
</parameter>
<parameter name="date">
<parameter_description> the date to set the value to
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_base_audio_sink_get_slave_method">
<description>
Get the current slave method used by @sink.


</description>
<parameters>
<parameter name="sink">
<parameter_description> a #GstBaseAudioSink
</parameter_description>
</parameter>
</parameters>
<return> The current slave method used by @sink.

Since: 0.10.16
</return>
</function>

<function name="gst_alloc_trace_available">
<description>
Check if alloc tracing was compiled into the core


</description>
<parameters>
</parameters>
<return> TRUE if the core was compiled with alloc
tracing enabled.
</return>
</function>

<function name="gst_byte_reader_get_uint24_le">
<description>
Read an unsigned 24 bit little endian integer into @val
and update the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #guint32 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_bus_have_pending">
<description>
Check if there are pending messages on the bus that
should be handled.


</description>
<parameters>
<parameter name="bus">
<parameter_description> a #GstBus to check
</parameter_description>
</parameter>
</parameters>
<return> TRUE if there are messages on the bus to be handled, FALSE 
otherwise.

MT safe.
</return>
</function>

<function name="gst_alloc_trace_print">
<description>
Print the status of the given GstAllocTrace.

</description>
<parameters>
<parameter name="trace">
<parameter_description> the GstAllocTrace to print
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtsp_connection_write">
<description>
Attempt to write @size bytes of @data to the connected @conn, blocking up to
the specified @timeout. @timeout can be #NULL, in which case this function
might block forever.

This function can be cancelled with gst_rtsp_connection_flush().


</description>
<parameters>
<parameter name="conn">
<parameter_description> a #GstRTSPConnection
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> the data to write
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> the size of @data
</parameter_description>
</parameter>
<parameter name="timeout">
<parameter_description> a timeout value or #NULL
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK on success.
</return>
</function>

<function name="gst_element_set_bus">
<description>
Sets the bus of the element. Increases the refcount on the bus.
For internal use only, unless you&apos;re testing elements.

MT safe.

</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement to set the bus of.
</parameter_description>
</parameter>
<parameter name="bus">
<parameter_description> the #GstBus to set.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_cdda_base_src_add_track">
<description>
CDDA sources use this function from their start vfunc to announce the
available data and audio tracks to the base source class. The caller
should allocate @track on the stack, the base source will do a shallow
copy of the structure (and take ownership of the taglist if there is one).


</description>
<parameters>
<parameter name="src">
<parameter_description> a #GstCddaBaseSrc
</parameter_description>
</parameter>
<parameter name="track">
<parameter_description> address of #GstCddaBaseSrcTrack to add
</parameter_description>
</parameter>
</parameters>
<return> FALSE on error, otherwise TRUE.
</return>
</function>

<function name="gst_rtsp_url_get_request_uri">
<description>
Get a newly allocated string describing the request URI for @url. 


</description>
<parameters>
<parameter name="url">
<parameter_description> a #GstRTSPUrl
</parameter_description>
</parameter>
</parameters>
<return> a string with the request URI. g_free() after usage.
</return>
</function>

<function name="gst_poll_add_fd">
<description>
Add a file descriptor to the file descriptor set.


</description>
<parameters>
<parameter name="set">
<parameter_description> a file descriptor set.
</parameter_description>
</parameter>
<parameter name="fd">
<parameter_description> a file descriptor.
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the file descriptor was successfully added to the set.

Since: 0.10.18
</return>
</function>

<function name="gst_element_set_index">
<description>
Set @index on the element. The refcount of the index
will be increased, any previously set index is unreffed.

MT safe.

</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement.
</parameter_description>
</parameter>
<parameter name="index">
<parameter_description> a #GstIndex.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_buffer_create_sub">
<description>
Creates a sub-buffer from @parent at @offset and @size.
This sub-buffer uses the actual memory space of the parent buffer.
This function will copy the offset and timestamp fields when the
offset is 0. If not, they will be set to #GST_CLOCK_TIME_NONE and 
#GST_BUFFER_OFFSET_NONE.
If @offset equals 0 and @size equals the total size of @buffer, the
duration and offset end fields are also copied. If not they will be set
to #GST_CLOCK_TIME_NONE and #GST_BUFFER_OFFSET_NONE.

MT safe.
Returns NULL if the arguments were invalid.

</description>
<parameters>
<parameter name="parent">
<parameter_description> a #GstBuffer.
</parameter_description>
</parameter>
<parameter name="offset">
<parameter_description> the offset into parent #GstBuffer at which the new sub-buffer 
begins.
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> the size of the new #GstBuffer sub-buffer, in bytes.
</parameter_description>
</parameter>
</parameters>
<return>NULL if the arguments were invalid.
</return>
</function>

<function name="gst_tag_image_data_to_image_buffer">
<description>
Helper function for tag-reading plugins to create a #GstBuffer suitable to
add to a #GstTagList as an image tag (such as #GST_TAG_IMAGE or
#GST_TAG_PREVIEW_IMAGE) from the encoded image data and an (optional) image
type.

Background: cover art and other images in tags are usually stored as a
blob of binary image data, often accompanied by a MIME type or some other
content type string (e.g. &apos;png&apos;, &apos;jpeg&apos;, &apos;jpg&apos;). Sometimes there is also an
&apos;image type&apos; to indicate what kind of image this is (e.g. front cover,
back cover, artist, etc.). The image data may also be an URI to the image
rather than the image itself.

In GStreamer, image tags are #GstBuffer&amp;lt;!-- --&amp;gt;s containing the raw image
data, with the buffer caps describing the content type of the image
(e.g. image/jpeg, image/png, text/uri-list). The buffer caps may contain
an additional &apos;image-type&apos; field of #GST_TYPE_TAG_IMAGE_TYPE to describe
the type of image (front cover, back cover etc.). #GST_TAG_PREVIEW_IMAGE
tags should not carry an image type, their type is already indicated via
the special tag name.

This function will do various checks and typefind the encoded image
data (we can&apos;t trust the declared mime type).


</description>
<parameters>
<parameter name="image_data">
<parameter_description> the (encoded) image
</parameter_description>
</parameter>
<parameter name="image_data_len">
<parameter_description> the length of the encoded image data at @image_data
</parameter_description>
</parameter>
<parameter name="image_type">
<parameter_description> type of the image, or #GST_TAG_IMAGE_TYPE_UNDEFINED. Pass
#GST_TAG_IMAGE_TYPE_NONE if no image type should be set at all (e.g.
for preview images)
</parameter_description>
</parameter>
</parameters>
<return> a newly-allocated image buffer for use in tag lists, or NULL

Since: 0.10.20
</return>
</function>

<function name="gst_sdp_media_get_attribute">
<description>
Get the attribute at position @idx in @media.


</description>
<parameters>
<parameter name="media">
<parameter_description> a #GstSDPMedia
</parameter_description>
</parameter>
<parameter name="idx">
<parameter_description> an index
</parameter_description>
</parameter>
</parameters>
<return> the #GstSDPAttribute at position @idx.
</return>
</function>

<function name="gst_tag_from_id3_user_tag">
<description>
Looks up the GStreamer tag for an ID3v2 user tag (e.g. description in
TXXX frame or owner in UFID frame).


</description>
<parameters>
<parameter name="type">
<parameter_description> the type of ID3v2 user tag (e.g. &quot;TXXX&quot; or &quot;UDIF&quot;)
</parameter_description>
</parameter>
<parameter name="id3_user_tag">
<parameter_description> ID3v2 user tag to convert to GStreamer tag
</parameter_description>
</parameter>
</parameters>
<return> The corresponding GStreamer tag or NULL if none exists.
</return>
</function>

<function name="gst_tag_list_get_value_index">
<description>
Gets the value that is at the given index for the given tag in the given
list.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
<parameter name="index">
<parameter_description> number of entry to read out
</parameter_description>
</parameter>
</parameters>
<return> The GValue for the specified entry or NULL if the tag wasn&apos;t
available or the tag doesn&apos;t have as many entries
</return>
</function>

<function name="gst_byte_reader_new">
<description>
Create a new #GstByteReader instance, which will read from @data.


</description>
<parameters>
<parameter name="data">
<parameter_description> Data from which the #GstByteReader should read
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> Size of @data in bytes
</parameter_description>
</parameter>
</parameters>
<return> a new #GstByteReader instance

Since: 0.10.22
</return>
</function>

<function name="gst_element_state_change_return_get_name">
<description>
Gets a string representing the given state change result.


</description>
<parameters>
<parameter name="state_ret">
<parameter_description> a #GstStateChangeReturn to get the name of.
</parameter_description>
</parameter>
</parameters>
<return> a string with the name of the state change result.

Since: 0.10.11
</return>
</function>

<function name="gst_event_get_structure">
<description>
Access the structure of the event.


</description>
<parameters>
<parameter name="event">
<parameter_description> The #GstEvent.
</parameter_description>
</parameter>
</parameters>
<return> The structure of the event. The structure is still
owned by the event, which means that you should not free it and
that the pointer becomes invalid when you free the event.

MT safe.
</return>
</function>

<function name="gst_registry_scan_path">
<description>
Add the given path to the registry. The syntax of the
path is specific to the registry. If the path has already been
added, do nothing.


</description>
<parameters>
<parameter name="registry">
<parameter_description> the registry to add the path to
</parameter_description>
</parameter>
<parameter name="path">
<parameter_description> the path to add to the registry
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if registry changed
</return>
</function>

<function name="gst_rtcp_packet_bye_get_reason_len">
<description>
Get the length of the reason string.


</description>
<parameters>
<parameter name="packet">
<parameter_description> a valid BYE #GstRTCPPacket
</parameter_description>
</parameter>
</parameters>
<return> The length of the reason string or 0 when there is no reason string
present.
</return>
</function>

<function name="gst_byte_reader_get_uint32_be">
<description>
Read an unsigned 32 bit big endian integer into @val
and update the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #guint32 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_video_orientation_get_vflip">
<description>
Get the vertical flipping state (%TRUE for flipped) from the given object.

Since: 0.10.11

</description>
<parameters>
<parameter name="video_orientation">
<parameter_description> #GstVideoOrientation interface of a #GstElement
</parameter_description>
</parameter>
<parameter name="flip">
<parameter_description> return location for the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE in case the element supports flipping
</return>
</function>

<function name="gst_controller_get">
<description>
Gets the value for the given controller-handled property at the requested
time.


</description>
<parameters>
<parameter name="self">
<parameter_description> the controller object which handles the properties
</parameter_description>
</parameter>
<parameter name="property_name">
<parameter_description> the name of the property to get
</parameter_description>
</parameter>
<parameter name="timestamp">
<parameter_description> the time the control-change should be read from
</parameter_description>
</parameter>
</parameters>
<return> the GValue of the property at the given time, or %NULL if the
property isn&apos;t handled by the controller
</return>
</function>

<function name="gst_controller_get_control_source">
<description>
Gets the corresponding #GstControlSource for the property. This should be unreferenced
again after use.


</description>
<parameters>
<parameter name="self">
<parameter_description> the controller object
</parameter_description>
</parameter>
<parameter name="property_name">
<parameter_description> name of the property for which the #GstControlSource should be get
</parameter_description>
</parameter>
</parameters>
<return> the #GstControlSource for @property_name or NULL if the property is not
controlled by this controller or no #GstControlSource was assigned yet.

Since: 0.10.14
</return>
</function>

<function name="__gst_element_factory_add_interface">
<description>
Adds the given interfacename to the list of implemented interfaces of the
element.

</description>
<parameters>
<parameter name="elementfactory">
<parameter_description> The elementfactory to add the interface to
</parameter_description>
</parameter>
<parameter name="interfacename">
<parameter_description> Name of the interface
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_plugin_feature_get_rank">
<description>
Gets the rank of a plugin feature.


</description>
<parameters>
<parameter name="feature">
<parameter_description> a feature
</parameter_description>
</parameter>
</parameters>
<return> The rank of the feature
</return>
</function>

<function name="gst_message_type_to_quark">
<description>
Get the unique quark for the given message type.


</description>
<parameters>
<parameter name="type">
<parameter_description> the message type
</parameter_description>
</parameter>
</parameters>
<return> the quark associated with the message type
</return>
</function>

<function name="gst_util_seqnum_compare">
<description>
Compare two sequence numbers, handling wraparound.

The current implementation just returns (gint32)(@s1 - @s2).


</description>
<parameters>
<parameter name="s1">
<parameter_description> A sequence number.
</parameter_description>
</parameter>
<parameter name="s2">
<parameter_description> Another sequence number.
</parameter_description>
</parameter>
</parameters>
<return> A negative number if @s1 is before @s2, 0 if they are equal, or a
positive number if @s1 is after @s2.

Since: 0.10.22
</return>
</function>

<function name="gst_pad_pause_task">
<description>
Pause the task of @pad. This function will also wait until the
function executed by the task is finished if this function is not
called from the task function.


</description>
<parameters>
<parameter name="pad">
<parameter_description> the #GstPad to pause the task of
</parameter_description>
</parameter>
</parameters>
<return> a TRUE if the task could be paused or FALSE when the pad
has no task.
</return>
</function>

<function name="gst_pad_start_task">
<description>
Starts a task that repeatedly calls @func with @data. This function
is mostly used in pad activation functions to start the dataflow.
The #GST_PAD_STREAM_LOCK of @pad will automatically be acquired
before @func is called.


</description>
<parameters>
<parameter name="pad">
<parameter_description> the #GstPad to start the task of
</parameter_description>
</parameter>
<parameter name="func">
<parameter_description> the task function to call
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> data passed to the task function
</parameter_description>
</parameter>
</parameters>
<return> a %TRUE if the task could be started.
</return>
</function>

<function name="gst_mixer_get_mixer_flags">
<description>
Get the set of supported flags for this mixer implementation.


</description>
<parameters>
<parameter name="mixer">
<parameter_description> The #GstMixer implementation
</parameter_description>
</parameter>
</parameters>
<return> A set of or-ed GstMixerFlags for supported features.
</return>
</function>

<function name="gst_element_change_state">
<description>
Perform @transition on @element.

This function must be called with STATE_LOCK held and is mainly used
internally.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement
</parameter_description>
</parameter>
<parameter name="transition">
<parameter_description> the requested transition
</parameter_description>
</parameter>
</parameters>
<return> the #GstStateChangeReturn of the state transition.
</return>
</function>

<function name="gst_debug_category_free">
<description>
Removes and frees the category and all associated resources.

</description>
<parameters>
<parameter name="category">
<parameter_description> #GstDebugCategory to free.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtcp_packet_get_padding">
<description>
Get the packet padding of the packet pointed to by @packet.


</description>
<parameters>
<parameter name="packet">
<parameter_description> a valid #GstRTCPPacket
</parameter_description>
</parameter>
</parameters>
<return> If the packet has the padding bit set.
</return>
</function>

<function name="gst_trace_set_default">
<description>
Set the default #GstTrace to @trace.

</description>
<parameters>
<parameter name="trace">
<parameter_description> the #GstTrace to set as the default.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_plugin_feature_set_rank">
<description>
Specifies a rank for a plugin feature, so that autoplugging uses
the most appropriate feature.

</description>
<parameters>
<parameter name="feature">
<parameter_description> feature to rank
</parameter_description>
</parameter>
<parameter name="rank">
<parameter_description> rank value - higher number means more priority rank
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_add_buffer_probe">
<description>
Adds a probe that will be called for all buffers passing through a pad. See
gst_pad_add_data_probe() for more information.


</description>
<parameters>
<parameter name="pad">
<parameter_description> pad to add the buffer probe handler to
</parameter_description>
</parameter>
<parameter name="handler">
<parameter_description> function to call when buffers are passed over pad
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> data to pass along with the handler
</parameter_description>
</parameter>
</parameters>
<return> The handler id
</return>
</function>

<function name="gst_uri_has_protocol">
<description>
Checks if the protocol of a given valid URI matches @protocol.


</description>
<parameters>
<parameter name="uri">
<parameter_description> an URI string
</parameter_description>
</parameter>
<parameter name="protocol">
<parameter_description> a protocol string (e.g. &quot;http&quot;)
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the protocol matches.

Since: 0.10.4
</return>
</function>

<function name="gst_net_time_packet_receive">
<description>
Receives a #GstNetTimePacket over a socket. Handles interrupted system calls,
but otherwise returns NULL on error. See recvfrom(2) for more information on
how to interpret @sockaddr.

MT safe. Caller owns return value (g_free to free).


</description>
<parameters>
<parameter name="fd">
<parameter_description> a file descriptor created by socket(2)
</parameter_description>
</parameter>
<parameter name="addr">
<parameter_description> a pointer to a sockaddr to hold the address of the sender
</parameter_description>
</parameter>
<parameter name="len">
<parameter_description> a pointer to the size of the data pointed to by @addr
</parameter_description>
</parameter>
</parameters>
<return> The new #GstNetTimePacket.
</return>
</function>

<function name="gst_query_set_position">
<description>
Answer a position query by setting the requested value in the given format.

</description>
<parameters>
<parameter name="query">
<parameter_description> a #GstQuery with query type GST_QUERY_POSITION
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> the requested #GstFormat
</parameter_description>
</parameter>
<parameter name="cur">
<parameter_description> the position to set
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_dp_header_from_buffer">
<description>
Creates a GDP header from the given buffer.

Deprecated: use a #GstDPPacketizer


</description>
<parameters>
<parameter name="buffer">
<parameter_description> a #GstBuffer to create a header for
</parameter_description>
</parameter>
<parameter name="flags">
<parameter_description> the #GDPHeaderFlags to create the header with
</parameter_description>
</parameter>
<parameter name="length">
<parameter_description> a guint pointer to store the header length in
</parameter_description>
</parameter>
<parameter name="header">
<parameter_description> a guint8 * pointer to store a newly allocated header byte array in
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the header was successfully created.
</return>
</function>

<function name="gst_ring_buffer_commit_full">
<description>
Commit @in_samples samples pointed to by @data to the ringbuffer @buf. 

@in_samples and @out_samples define the rate conversion to perform on the the
samples in @data. For negative rates, @out_samples must be negative and
@in_samples positive.

When @out_samples is positive, the first sample will be written at position @sample
in the ringbuffer. When @out_samples is negative, the last sample will be written to
@sample in reverse order.

@out_samples does not need to be a multiple of the segment size of the ringbuffer
although it is recommended for optimal performance. 

@accum will hold a temporary accumulator used in rate conversion and should be
set to 0 when this function is first called. In case the commit operation is
interrupted, one can resume the processing by passing the previously returned
@accum value back to this function.


</description>
<parameters>
<parameter name="buf">
<parameter_description> the #GstRingBuffer to commit
</parameter_description>
</parameter>
<parameter name="sample">
<parameter_description> the sample position of the data
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> the data to commit
</parameter_description>
</parameter>
<parameter name="in_samples">
<parameter_description> the number of samples in the data to commit
</parameter_description>
</parameter>
<parameter name="out_samples">
<parameter_description> the number of samples to write to the ringbuffer
</parameter_description>
</parameter>
<parameter name="accum">
<parameter_description> accumulator for rate conversion.
</parameter_description>
</parameter>
</parameters>
<return> The number of samples written to the ringbuffer or -1 on error. The
number of samples written can be less than @out_samples when @buf was interrupted
with a flush or stop.

Since: 0.10.11.

MT safe.
</return>
</function>

<function name="gst_rtsp_message_take_body">
<description>
Set the body of @msg to @data and @size. This method takes ownership of
@data.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstRTSPMessage
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> the data
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> the size of @data
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK.
</return>
</function>

<function name="gst_poll_fd_init">
<description>
Initializes @fd. Alternatively you can initialize it with
#GST_POLL_FD_INIT.

Since: 0.10.18

</description>
<parameters>
<parameter name="fd">
<parameter_description> a #GstPollFD
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_byte_reader_peek_data">
<description>
Returns: %TRUE if successful, %FALSE otherwise.

</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> Size in bytes
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #guint8 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_object_suggest_next_sync">
<description>
Convenience function for GObject


</description>
<parameters>
<parameter name="object">
<parameter_description> the object that has controlled properties
</parameter_description>
</parameter>
</parameters>
<return> same thing as gst_controller_suggest_next_sync()
Since: 0.10.13
</return>
</function>

<function name="gst_check_caps_equal">
<description>
Compare two caps with gst_caps_is_equal and fail unless they are
equal.

Since: 0.10.18

</description>
<parameters>
<parameter name="caps1">
<parameter_description> first caps to compare
</parameter_description>
</parameter>
<parameter name="caps2">
<parameter_description> second caps to compare
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_sdp_media_get_proto">
<description>
Get the transport protocol of @media


</description>
<parameters>
<parameter name="media">
<parameter_description> a #GstSDPMedia
</parameter_description>
</parameter>
</parameters>
<return> the transport protocol of @media.
</return>
</function>

<function name="gst_object_default_error">
<description>
A default error function.

The default handler will simply print the error string using g_print.

</description>
<parameters>
<parameter name="source">
<parameter_description> the #GstObject that initiated the error.
</parameter_description>
</parameter>
<parameter name="error">
<parameter_description> the GError.
</parameter_description>
</parameter>
<parameter name="debug">
<parameter_description> an additional debug information string, or NULL.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_parse_launchv">
<description>
Create a new element based on command line syntax.
@error will contain an error message if an erroneuos pipeline is specified.
An error does not mean that the pipeline could not be constructed.


</description>
<parameters>
<parameter name="argv">
<parameter_description> null-terminated array of arguments
</parameter_description>
</parameter>
<parameter name="error">
<parameter_description> pointer to a #GError
</parameter_description>
</parameter>
</parameters>
<return> a new element on success and %NULL on failure.
</return>
</function>

<function name="gst_tag_list_remove_tag">
<description>
Removes the given tag from the taglist.

</description>
<parameters>
<parameter name="list">
<parameter_description> list to remove tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to remove
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_element_get_factory">
<description>
Retrieves the factory that was used to create this element.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement to request the element factory of.
</parameter_description>
</parameter>
</parameters>
<return> the #GstElementFactory used for creating this element.
no refcounting is needed.
</return>
</function>

<function name="gst_controller_set_property_disabled">
<description>
This function is used to disable the #GstController on a property for
some time, i.e. gst_controller_sync_values() will do nothing for the
property.

Since: 0.10.14

</description>
<parameters>
<parameter name="self">
<parameter_description> the #GstController which should be disabled
</parameter_description>
</parameter>
<parameter name="property_name">
<parameter_description> property to disable
</parameter_description>
</parameter>
<parameter name="disabled">
<parameter_description> boolean that specifies whether to disable the controller
or not.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_fft_f64_free">
<description>
This frees the memory allocated for @self.


</description>
<parameters>
<parameter name="self">
<parameter_description> #GstFFTF64 instance for this call
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_tag_list_merge">
<description>
Merges the two given lists into a new list. If one of the lists is NULL, a
copy of the other is returned. If both lists are NULL, NULL is returned.


</description>
<parameters>
<parameter name="list1">
<parameter_description> first list to merge
</parameter_description>
</parameter>
<parameter name="list2">
<parameter_description> second list to merge
</parameter_description>
</parameter>
<parameter name="mode">
<parameter_description> the mode to use
</parameter_description>
</parameter>
</parameters>
<return> the new list
</return>
</function>

<function name="gst_pad_get_allowed_caps">
<description>
Gets the capabilities of the allowed media types that can flow through
@pad and its peer.

The allowed capabilities is calculated as the intersection of the results of
calling gst_pad_get_caps() on @pad and its peer. The caller owns a reference
on the resulting caps.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad.
</parameter_description>
</parameter>
</parameters>
<return> the allowed #GstCaps of the pad link. Unref the caps when you no
longer need it. This function returns NULL when @pad has no peer.

MT safe.
</return>
</function>

<function name="gst_poll_set_flushing">
<description>
When @flushing is %TRUE, this function ensures that current and future calls
to gst_poll_wait() will return -1, with errno set to EBUSY.

Unsetting the flushing state will restore normal operation of @set.

Since: 0.10.18

</description>
<parameters>
<parameter name="set">
<parameter_description> a #GstPoll.
</parameter_description>
</parameter>
<parameter name="flushing">
<parameter_description> new flushing state.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtsp_find_header_field">
<description>
Convert @header to a #GstRTSPHeaderField.


</description>
<parameters>
<parameter name="header">
<parameter_description> a header string
</parameter_description>
</parameter>
</parameters>
<return> a #GstRTSPHeaderField for @header or #GST_RTSP_HDR_INVALID if the
header field is unknown.
</return>
</function>

<function name="gst_buffer_join">
<description>
Create a new buffer that is the concatenation of the two source
buffers, and unrefs the original source buffers.

If the buffers point to contiguous areas of memory, the buffer
is created without copying the data.

This is a convenience function for C programmers. See also 
gst_buffer_merge(), which does the same thing without 
unreffing the input parameters. Language bindings without 
explicit reference counting should not wrap this function.


</description>
<parameters>
<parameter name="buf1">
<parameter_description> the first source #GstBuffer.
</parameter_description>
</parameter>
<parameter name="buf2">
<parameter_description> the second source #GstBuffer.
</parameter_description>
</parameter>
</parameters>
<return> the new #GstBuffer which is the concatenation of the source buffers.
</return>
</function>

<function name="gst_rtsp_connection_poll">
<description>
Wait up to the specified @timeout for the connection to become available for
at least one of the operations specified in @events. When the function returns
with #GST_RTSP_OK, @revents will contain a bitmask of available operations on
@conn.

@timeout can be #NULL, in which case this function might block forever.

This function can be cancelled with gst_rtsp_connection_flush().


</description>
<parameters>
<parameter name="conn">
<parameter_description> a #GstRTSPConnection
</parameter_description>
</parameter>
<parameter name="events">
<parameter_description> a bitmask of #GstRTSPEvent flags to check
</parameter_description>
</parameter>
<parameter name="revents">
<parameter_description> location for result flags 
</parameter_description>
</parameter>
<parameter name="timeout">
<parameter_description> a timeout
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK on success.

Since: 0.10.15
</return>
</function>

<function name="gst_registry_fork_is_enabled">
<description>
By default GStreamer will perform a fork() when scanning and rebuilding the
registry file. 

Applications might want to disable this behaviour with the
gst_registry_fork_set_enabled() function. 


</description>
<parameters>
</parameters>
<return> %TRUE if GStreamer will use fork() when rebuilding the registry. On
platforms without fork(), this function will always return %FALSE.

Since: 0.10.10
</return>
</function>

<function name="gst_type_find_suggest_simple">
<description>
If a #GstTypeFindFunction calls this function it suggests the caps with the
given probability. A #GstTypeFindFunction may supply different suggestions
in one call. It is up to the caller of the #GstTypeFindFunction to interpret
these values.

This function is similar to gst_type_find_suggest(), only that instead of
passing a #GstCaps argument you can create the caps on the fly in the same
way as you can with gst_caps_new_simple().

Make sure you terminate the list of arguments with a NULL argument and that
the values passed have the correct type (in terms of width in bytes when
passed to the vararg function - this applies particularly to gdouble and
guint64 arguments).

Since: 0.10.20

</description>
<parameters>
<parameter name="find">
<parameter_description> The #GstTypeFind object the function was called with
</parameter_description>
</parameter>
<parameter name="probability">
<parameter_description> The probability in percent that the suggestion is right
</parameter_description>
</parameter>
<parameter name="media_type">
<parameter_description> the media type of the suggested caps
</parameter_description>
</parameter>
<parameter name="fieldname">
<parameter_description> first field of the suggested caps, or NULL
</parameter_description>
</parameter>
<parameter name="Varargs">
<parameter_description> additional arguments to the suggested caps in the same format as the
arguments passed to gst_structure_new() (ie. triplets of field name,
field GType and field value)
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_caps_is_subset">
<description>
Checks if all caps represented by @subset are also represented by @superset.
&amp;lt;note&amp;gt;This function does not work reliably if optional properties for caps
are included on one caps and omitted on the other.&amp;lt;/note&amp;gt;


</description>
<parameters>
<parameter name="subset">
<parameter_description> a #GstCaps
</parameter_description>
</parameter>
<parameter name="superset">
<parameter_description> a potentially greater #GstCaps
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if @subset is a subset of @superset
</return>
</function>

<function name="gst_caps_replace">
<description>
Replaces *caps with @newcaps.  Unrefs the #GstCaps in the location
pointed to by @caps, if applicable, then modifies @caps to point to
@newcaps. An additional ref on @newcaps is taken.

This function does not take any locks so you might want to lock
the object owning @caps pointer.

</description>
<parameters>
<parameter name="caps">
<parameter_description> a pointer to #GstCaps
</parameter_description>
</parameter>
<parameter name="newcaps">
<parameter_description> a #GstCaps to replace *caps
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_buffer_new">
<description>
Creates a newly allocated buffer without any data.

MT safe.

</description>
<parameters>
</parameters>
<return> the new #GstBuffer.
</return>
</function>

<function name="gst_bin_iterate_all_by_interface">
<description>
Looks for all elements inside the bin that implements the given
interface. You can safely cast all returned elements to the given interface.
The function recurses inside child bins. The iterator will yield a series
of #GstElement that should be unreffed after use.

Each element yielded by the iterator will have its refcount increased, so
unref after use.

MT safe.  Caller owns returned value.


</description>
<parameters>
<parameter name="bin">
<parameter_description> a #GstBin
</parameter_description>
</parameter>
<parameter name="iface">
<parameter_description> the #GType of an interface
</parameter_description>
</parameter>
</parameters>
<return> a #GstIterator of #GstElement for all elements in the bin
implementing the given interface, or NULL
</return>
</function>

<function name="gst_rtp_buffer_get_csrc">
<description>
Get the CSRC at index @idx in @buffer.


</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer
</parameter_description>
</parameter>
<parameter name="idx">
<parameter_description> the index of the CSRC to get
</parameter_description>
</parameter>
</parameters>
<return> the CSRC at index @idx in host order.
</return>
</function>

<function name="gst_bit_reader_get_bits_uint8">
<description>
Read @nbits bits into @val and update the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstBitReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #guint8 to store the result
</parameter_description>
</parameter>
<parameter name="nbits">
<parameter_description> number of bits to read
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_rtsp_message_get_header">
<description>
Get the @indx header value with key @field from @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstRTSPMessage
</parameter_description>
</parameter>
<parameter name="field">
<parameter_description> a #GstRTSPHeaderField
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> pointer to hold the result
</parameter_description>
</parameter>
<parameter name="indx">
<parameter_description> the index of the header
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK when @field was found, #GST_RTSP_ENOTIMPL if the key
was not found.
</return>
</function>

<function name="gst_sdp_media_new">
<description>
Allocate a new GstSDPMedia and store the result in @media.


</description>
<parameters>
<parameter name="media">
<parameter_description> pointer to new #GstSDPMedia
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPResult.
</return>
</function>

<function name="gst_rtsp_connection_set_auth_param">
<description>
Setup @conn with authentication directives. This is not necesary for
methods #GST_RTSP_AUTH_NONE and #GST_RTSP_AUTH_BASIC. For
#GST_RTSP_AUTH_DIGEST, directives should be taken from the digest challenge
in the WWW-Authenticate response header and can include realm, domain,
nonce, opaque, stale, algorithm, qop as per RFC2617.

Since: 0.10.20

</description>
<parameters>
<parameter name="conn">
<parameter_description> a #GstRTSPConnection
</parameter_description>
</parameter>
<parameter name="param">
<parameter_description> authentication directive
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> value
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_adapter_peek">
<description>
Gets the first @size bytes stored in the @adapter. The returned pointer is
valid until the next function is called on the adapter.

Note that setting the returned pointer as the data of a #GstBuffer is
incorrect for general-purpose plugins. The reason is that if a downstream
element stores the buffer so that it has access to it outside of the bounds
of its chain function, the buffer will have an invalid data pointer after
your element flushes the bytes. In that case you should use
gst_adapter_take(), which returns a freshly-allocated buffer that you can set
as #GstBuffer malloc_data or the potentially more performant 
gst_adapter_take_buffer().

Returns: a pointer to the first @size bytes of data, or NULL.

</description>
<parameters>
<parameter name="adapter">
<parameter_description> a #GstAdapter
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> the number of bytes to peek
</parameter_description>
</parameter>
</parameters>
<return> a pointer to the first @size bytes of data, or NULL.
</return>
</function>

<function name="gst_alloc_trace_set_flags">
<description>
Enable the given features on the given GstAllocTrace object.

</description>
<parameters>
<parameter name="trace">
<parameter_description> the GstAllocTrace
</parameter_description>
</parameter>
<parameter name="flags">
<parameter_description> flags to set
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_element_continue_state">
<description>
Commit the state change of the element and proceed to the next
pending state if any. This function is used
by elements that do asynchronous state changes.
The core will normally call this method automatically when an
element returned %GST_STATE_CHANGE_SUCCESS from the state change function.

If after calling this method the element still has not reached
the pending state, the next state change is performed.

This method is used internally and should normally not be called by plugins
or applications.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement to continue the state change of.
</parameter_description>
</parameter>
<parameter name="ret">
<parameter_description> The previous state return value
</parameter_description>
</parameter>
</parameters>
<return> The result of the commit state change.

MT safe.
</return>
</function>

<function name="gst_control_source_get_value_array">
<description>
Gets an array of values for one element property.

All fields of @value_array must be filled correctly. Especially the
@value_array-&amp;gt;values array must be big enough to keep the requested amount
of values.

The type of the values in the array is the same as the property&apos;s type.


</description>
<parameters>
<parameter name="self">
<parameter_description> the #GstControlSource object
</parameter_description>
</parameter>
<parameter name="timestamp">
<parameter_description> the time that should be processed
</parameter_description>
</parameter>
<parameter name="value_array">
<parameter_description> array to put control-values in
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the given array could be filled, %FALSE otherwise
</return>
</function>

<function name="gst_controller_new_valist">
<description>
Creates a new GstController for the given object&apos;s properties


</description>
<parameters>
<parameter name="object">
<parameter_description> the object of which some properties should be controlled
</parameter_description>
</parameter>
<parameter name="var_args">
<parameter_description> %NULL terminated list of property names that should be controlled
</parameter_description>
</parameter>
</parameters>
<return> the new controller.
</return>
</function>

<function name="gst_audio_default_registry_mixer_filter">
<description>
Utility function to find audio mixer elements.

Will traverse the default plugin registry in order of plugin rank and
find usable audio mixer elements. The caller may optionally fine-tune
the selection by specifying a filter function.


</description>
<parameters>
<parameter name="filter_func">
<parameter_description> filter function, or #NULL
</parameter_description>
</parameter>
<parameter name="first">
<parameter_description> set to #TRUE if you only want the first suitable mixer element
</parameter_description>
</parameter>
<parameter name="user_data">
<parameter_description> user data to pass to the filter function
</parameter_description>
</parameter>
</parameters>
<return> a #GList of audio mixer #GstElement&amp;lt;!-- --&amp;gt;s. You must free each
element in the list by setting it to NULL state and calling
gst_object_unref(). After that the list itself should be freed
using g_list_free().

Since: 0.10.2
</return>
</function>

<function name="gst_element_class_get_pad_template">
<description>
Retrieves a padtemplate from @element_class with the given name.
&amp;lt;note&amp;gt;If you use this function in the #GInstanceInitFunc of an object class
that has subclasses, make sure to pass the g_class parameter of the
#GInstanceInitFunc here.&amp;lt;/note&amp;gt;


</description>
<parameters>
<parameter name="element_class">
<parameter_description> a #GstElementClass to get the pad template of.
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> the name of the #GstPadTemplate to get.
</parameter_description>
</parameter>
</parameters>
<return> the #GstPadTemplate with the given name, or %NULL if none was found.
No unreferencing is necessary.
</return>
</function>

<function name="gst_byte_reader_peek_int16_be">
<description>
Read a signed 16 bit big endian integer into @val
but keep the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #gint16 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_segtrap_set_enabled">
<description>
Applications might want to disable/enable the SIGSEGV handling of
the GStreamer core. See gst_segtrap_is_enabled() for more information.

Since: 0.10.10

</description>
<parameters>
<parameter name="enabled">
<parameter_description> whether a custom SIGSEGV handler should be installed.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_dp_packet_from_caps">
<description>
Creates a GDP packet from the given caps.

Deprecated: use a #GstDPPacketizer


</description>
<parameters>
<parameter name="caps">
<parameter_description> a #GstCaps to create a packet for
</parameter_description>
</parameter>
<parameter name="flags">
<parameter_description> the #GDPHeaderFlags to create the header with
</parameter_description>
</parameter>
<parameter name="length">
<parameter_description> a guint pointer to store the header length in
</parameter_description>
</parameter>
<parameter name="header">
<parameter_description> a guint8 pointer to store a newly allocated header byte array in
</parameter_description>
</parameter>
<parameter name="payload">
<parameter_description> a guint8 pointer to store a newly allocated payload byte array in
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the packet was successfully created.
</return>
</function>

<function name="gst_message_new_structure_change">
<description>
Create a new structure change message. This message is posted when the
structure of a pipeline is in the process of being changed, for example
when pads are linked or unlinked.

@src should be the srcpad that unlinked or linked.


</description>
<parameters>
<parameter name="src">
<parameter_description> The object originating the message.
</parameter_description>
</parameter>
<parameter name="type">
<parameter_description> The change type.
</parameter_description>
</parameter>
<parameter name="owner">
<parameter_description> The owner element of @src.
</parameter_description>
</parameter>
<parameter name="busy">
<parameter_description> Whether the structure change is busy.
</parameter_description>
</parameter>
</parameters>
<return> The new structure change message.

MT safe.

Since: 0.10.22.
</return>
</function>

<function name="gst_pipeline_set_delay">
<description>
Set the expected delay needed for all elements to perform the
PAUSED to PLAYING state change. @delay will be added to the
base time of the elements so that they wait an additional @delay
amount of time before starting to process buffers and cannot be
#GST_CLOCK_TIME_NONE.

This option is used for tuning purposes and should normally not be
used.

MT safe.

Since: 0.10.5

</description>
<parameters>
<parameter name="pipeline">
<parameter_description> a #GstPipeline
</parameter_description>
</parameter>
<parameter name="delay">
<parameter_description> the delay
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_fft_f64_inverse_fft">
<description>
This performs the inverse FFT on @freqdata and puts the result in @timedata.

@freqdata must have @len/2 + 1 samples, where @len is the parameter specified
while allocating the #GstFFTF64 instance with gst_fft_f64_new().

@timedata must be large enough to hold @len time domain samples.


</description>
<parameters>
<parameter name="self">
<parameter_description> #GstFFTF64 instance for this call
</parameter_description>
</parameter>
<parameter name="freqdata">
<parameter_description> Buffer of the samples in the frequency domain
</parameter_description>
</parameter>
<parameter name="timedata">
<parameter_description> Target buffer for the samples in the time domain
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_byte_reader_peek_int64_be">
<description>
Read a signed 64 bit big endian integer into @val
but keep the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #gint64 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_base_src_set_format">
<description>
Sets the default format of the source. This will be the format used
for sending NEW_SEGMENT events and for performing seeks.

If a format of GST_FORMAT_BYTES is set, the element will be able to
operate in pull mode if the #GstBaseSrc::is_seekable returns TRUE.

Since: 0.10.1

</description>
<parameters>
<parameter name="src">
<parameter_description> base source instance
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> the format to use
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_value_take_mini_object">
<description>
Set the contents of a %GST_TYPE_MINI_OBJECT derived #GValue to
@mini_object.
Takes over the ownership of the caller&apos;s reference to @mini_object;
the caller doesn&apos;t have to unref it any more.

</description>
<parameters>
<parameter name="value">
<parameter_description>       a valid #GValue of %GST_TYPE_MINI_OBJECT derived type
</parameter_description>
</parameter>
<parameter name="mini_object">
<parameter_description> mini object value to take
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_byte_reader_peek_uint32_le">
<description>
Read a signed 32 bit little endian integer into @val
but keep the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #guint32 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_message_parse_tag">
<description>
Extracts the tag list from the GstMessage. The tag list returned in the
output argument is a copy; the caller must free it when done.

MT safe.

</description>
<parameters>
<parameter name="message">
<parameter_description> A valid #GstMessage of type GST_MESSAGE_TAG.
</parameter_description>
</parameter>
<parameter name="tag_list">
<parameter_description> Return location for the tag-list.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_element_get_pad">
<description>
Retrieves a pad from @element by name. Tries gst_element_get_static_pad()
first, then gst_element_get_request_pad().

Deprecated: This function is deprecated as it&apos;s unclear if the reference
to the result pad should be released with gst_object_unref() in case of a static pad
or gst_element_release_request_pad() in case of a request pad.
Use gst_element_get_static_pad() or gst_element_get_request_pad() instead.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement.
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> the name of the pad to retrieve.
</parameter_description>
</parameter>
</parameters>
<return> the #GstPad if found, otherwise %NULL. Unref or Release after usage,
depending on the type of the pad.
</return>
</function>

<function name="gst_base_src_wait_playing">
<description>
If the #GstBaseSrcClass::create method performs its own synchronisation against
the clock it must unblock when going from PLAYING to the PAUSED state and call
this method before continuing to produce the remaining data.

This function will block until a state change to PLAYING happens (in which
case this function returns #GST_FLOW_OK) or the processing must be stopped due
to a state change to READY or a FLUSH event (in which case this function
Returns: #GST_FLOW_OK if @src is PLAYING and processing can

</description>
<parameters>
<parameter name="src">
<parameter_description> the src
</parameter_description>
</parameter>
</parameters>
<return> #GST_FLOW_OK if @src is PLAYING and processing can
continue. Any other return value should be returned from the create vmethod.
</return>
</function>

<function name="gst_mixer_options_get_values">
<description>
Get the values for the mixer option.


</description>
<parameters>
<parameter name="mixer_options">
<parameter_description> The #GstMixerOptions item that owns the values.
</parameter_description>
</parameter>
</parameters>
<return> A list of strings with all the possible values for the mixer
option. You must not free or modify the list or its contents, it belongs
to the @mixer_options object.
</return>
</function>

<function name="gst_structure_get_field_type">
<description>
Finds the field with the given name, and returns the type of the
value it contains.  If the field is not found, G_TYPE_INVALID is
returned.


</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="fieldname">
<parameter_description> the name of the field
</parameter_description>
</parameter>
</parameters>
<return> the #GValue of the field
</return>
</function>

<function name="gst_caps_merge">
<description>
Appends the structures contained in @caps2 to @caps1 if they are not yet
expressed by @caps1. The structures in @caps2 are not copied -- they are
transferred to @caps1, and then @caps2 is freed.
If either caps is ANY, the resulting caps will be ANY.

Since: 0.10.10

</description>
<parameters>
<parameter name="caps1">
<parameter_description> the #GstCaps that will take the new entries
</parameter_description>
</parameter>
<parameter name="caps2">
<parameter_description> the #GstCaps to merge in
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_mixer_set_record">
<description>
Enables or disables recording on the given track. Note that
this is only possible on input tracks, not on output tracks
(see GST_MIXER_TRACK_HAS_FLAG () and the GST_MIXER_TRACK_INPUT
flag).

</description>
<parameters>
<parameter name="mixer">
<parameter_description> The #GstMixer (a #GstElement) that owns the track.
</parameter_description>
</parameter>
<parameter name="track">
<parameter_description> the #GstMixerTrack to operate on.
</parameter_description>
</parameter>
<parameter name="record">
<parameter_description> a boolean value that indicates whether to turn on
or off recording.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_tag_to_vorbis_comments">
<description>
Creates a new tag list that contains the information parsed out of a
vorbiscomment packet.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> a GStreamer tag identifier, such as #GST_TAG_ARTIST
</parameter_description>
</parameter>
</parameters>
<return> A #GList of newly-allowcated key=value strings. Free with
g_list_foreach (list, (GFunc) g_free, NULL) plus g_list_free (list)
</return>
</function>

<function name="escape_string">
<description>
Escapes @string, replacing any and all special characters
with equivalent escape sequences.


</description>
<parameters>
<parameter name="string">
<parameter_description> string to be escaped
</parameter_description>
</parameter>
</parameters>
<return> a newly allocated string equivalent to @string
but with all special characters escaped
</return>
</function>

<function name="gst_registry_get_default">
<description>
Retrieves the default registry. The caller does not own a reference on the
registry, as it is alive as long as GStreamer is initialized.


</description>
<parameters>
</parameters>
<return> The default #GstRegistry.
</return>
</function>

<function name="gst_registry_get_feature_list_by_plugin">
<description>
Retrieves a #GList of features of the plugin with name @name.


</description>
<parameters>
<parameter name="registry">
<parameter_description> a #GstRegistry.
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> a plugin name.
</parameter_description>
</parameter>
</parameters>
<return> a #GList of #GstPluginFeature. Use gst_plugin_feature_list_free()
after usage.
</return>
</function>

<function name="gst_sdp_media_add_attribute">
<description>
Add the attribute with @key and @value to @media.


</description>
<parameters>
<parameter name="media">
<parameter_description> a #GstSDPMedia
</parameter_description>
</parameter>
<parameter name="key">
<parameter_description> a key
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> a value
</parameter_description>
</parameter>
</parameters>
<return> #GST_SDP_OK.
</return>
</function>

<function name="gst_rtsp_message_get_type">
<description>
Get the message type of @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstRTSPMessage
</parameter_description>
</parameter>
</parameters>
<return> the message type.
</return>
</function>

<function name="gst_ghost_pad_new_from_template">
<description>
Create a new ghostpad with @target as the target. The direction will be taken
from the target pad. The template used on the ghostpad will be @template.

Will ref the target.


</description>
<parameters>
<parameter name="name">
<parameter_description> the name of the new pad, or NULL to assign a default name.
</parameter_description>
</parameter>
<parameter name="target">
<parameter_description> the pad to ghost.
</parameter_description>
</parameter>
<parameter name="templ">
<parameter_description> the #GstPadTemplate to use on the ghostpad.
</parameter_description>
</parameter>
</parameters>
<return> a new #GstPad, or NULL in case of an error.

Since: 0.10.10
</return>
</function>

<function name="gst_is_tag_list">
<description>
Checks if the given pointer is a taglist.


</description>
<parameters>
<parameter name="p">
<parameter_description> Object that might be a taglist
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if the given pointer is a taglist
</return>
</function>

<function name="gst_byte_reader_peek_uint8">
<description>
Read a signed 8 bit integer into @val but keep the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #guint8 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_rtp_buffer_set_payload_type">
<description>
Set the payload type of the RTP packet in @buffer to @payload_type.

</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer
</parameter_description>
</parameter>
<parameter name="payload_type">
<parameter_description> the new type
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_error_get_message">
<description>
Get a string describing the error message in the current locale.


</description>
<parameters>
<parameter name="domain">
<parameter_description> the GStreamer error domain this error belongs to.
</parameter_description>
</parameter>
<parameter name="code">
<parameter_description> the error code belonging to the domain.
</parameter_description>
</parameter>
</parameters>
<return> a newly allocated string describing the error message in the
current locale.
</return>
</function>

<function name="gst_audio_clock_new">
<description>
Create a new #GstAudioClock instance. Whenever the clock time should be
calculated it will call @func with @user_data. When @func returns
#GST_CLOCK_TIME_NONE, the clock will return the last reported time.


</description>
<parameters>
<parameter name="name">
<parameter_description> the name of the clock
</parameter_description>
</parameter>
<parameter name="func">
<parameter_description> a function
</parameter_description>
</parameter>
<parameter name="user_data">
<parameter_description> user data
</parameter_description>
</parameter>
</parameters>
<return> a new #GstAudioClock casted to a #GstClock.
</return>
</function>

<function name="gst_poll_remove_fd">
<description>
Remove a file descriptor from the file descriptor set.


</description>
<parameters>
<parameter name="set">
<parameter_description> a file descriptor set.
</parameter_description>
</parameter>
<parameter name="fd">
<parameter_description> a file descriptor.
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the file descriptor was successfully removed from the set.

Since: 0.10.18
</return>
</function>

<function name="gst_sdp_message_get_key">
<description>
Get the encryption information from @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPKey.
</return>
</function>

<function name="gst_message_new_clock_lost">
<description>
Create a clock lost message. This message is posted whenever the
clock is not valid anymore.

If this message is posted by the pipeline, the pipeline will
select a new clock again when it goes to PLAYING. It might therefore
be needed to set the pipeline to PAUSED and PLAYING again.


</description>
<parameters>
<parameter name="src">
<parameter_description> The object originating the message.
</parameter_description>
</parameter>
<parameter name="clock">
<parameter_description> the clock that was lost
</parameter_description>
</parameter>
</parameters>
<return> The new clock lost message.

MT safe.
</return>
</function>

<function name="gst_sdp_message_add_time">
<description>
Add time information @start and @stop to @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
<parameter name="start">
<parameter_description> the start time
</parameter_description>
</parameter>
<parameter name="stop">
<parameter_description> the stop time
</parameter_description>
</parameter>
<parameter name="repeat">
<parameter_description> the repeat times
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPResult.
</return>
</function>

<function name="gst_value_set_int_range">
<description>
Sets @value to the range specified by @start and @end.

</description>
<parameters>
<parameter name="value">
<parameter_description> a GValue initialized to GST_TYPE_INT_RANGE
</parameter_description>
</parameter>
<parameter name="start">
<parameter_description> the start of the range
</parameter_description>
</parameter>
<parameter name="end">
<parameter_description> the end of the range
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_caps_is_empty">
<description>
Determines if @caps represents no media formats.


</description>
<parameters>
<parameter name="caps">
<parameter_description> the #GstCaps to test
</parameter_description>
</parameter>
</parameters>
<return> TRUE if @caps represents no formats.
</return>
</function>

<function name="gst_video_format_get_pixel_stride">
<description>
Calculates the pixel stride (number of bytes from one pixel to the
pixel to its immediate left) for the video component with an index
of @component.  See @gst_video_format_get_row_stride for a description
of the component index.

Since: 0.10.16


</description>
<parameters>
<parameter name="format">
<parameter_description> a #GstVideoFormat
</parameter_description>
</parameter>
<parameter name="component">
<parameter_description> the component index
</parameter_description>
</parameter>
</parameters>
<return> pixel stride of component @component
</return>
</function>

<function name="gst_structure_new">
<description>
Creates a new #GstStructure with the given name.  Parses the
list of variable arguments and sets fields to the values listed.
Variable arguments should be passed as field name, field type,
and value.  Last variable argument should be NULL.


</description>
<parameters>
<parameter name="name">
<parameter_description> name of new structure
</parameter_description>
</parameter>
<parameter name="firstfield">
<parameter_description> name of first field to set
</parameter_description>
</parameter>
<parameter name="Varargs">
<parameter_description> additional arguments
</parameter_description>
</parameter>
</parameters>
<return> a new #GstStructure
</return>
</function>

<function name="gst_iterator_next">
<description>
Get the next item from the iterator in @elem. 

Only when this function returns %GST_ITERATOR_OK, @elem will contain a valid
value. For iterators that return refcounted objects, the returned object
will have its refcount increased and should therefore be unreffed after
usage.

When this function returns %GST_ITERATOR_DONE, no more elements can be
retrieved from @it.

A return value of %GST_ITERATOR_RESYNC indicates that the element list was
concurrently updated. The user of @it should call gst_iterator_resync() to
get the newly updated list. 

A return value of %GST_ITERATOR_ERROR indicates an unrecoverable fatal error.


</description>
<parameters>
<parameter name="it">
<parameter_description> The #GstIterator to iterate
</parameter_description>
</parameter>
<parameter name="elem">
<parameter_description> pointer to hold next element
</parameter_description>
</parameter>
</parameters>
<return> The result of the iteration. Unref @elem after usage if this
is a refcounted object.

MT safe.
</return>
</function>

<function name="gst_value_set_caps">
<description>
Sets the contents of @value to @caps.  The actual
#GstCaps structure is copied before it is used.

</description>
<parameters>
<parameter name="value">
<parameter_description> a GValue initialized to GST_TYPE_CAPS
</parameter_description>
</parameter>
<parameter name="caps">
<parameter_description> the caps to set the value to
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_collect_pads_remove_pad">
<description>
Remove a pad from the collection of collect pads. This function will also
free the #GstCollectData and all the resources that were allocated with 
gst_collect_pads_add_pad().

The pad will be deactivated automatically when @pads is stopped.


</description>
<parameters>
<parameter name="pads">
<parameter_description> the collectspads to use
</parameter_description>
</parameter>
<parameter name="pad">
<parameter_description> the pad to remove
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the pad could be removed.

MT safe.
</return>
</function>

<function name="gst_rtsp_message_add_header">
<description>
Add a header with key @field and @value to @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstRTSPMessage
</parameter_description>
</parameter>
<parameter name="field">
<parameter_description> a #GstRTSPHeaderField
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> the value of the header
</parameter_description>
</parameter>
</parameters>
<return> a #GstRTSPResult.
</return>
</function>

<function name="gst_pad_set_blocked_async">
<description>
Blocks or unblocks the dataflow on a pad. The provided callback
is called when the operation succeeds; this happens right before the next
attempt at pushing a buffer on the pad.

This can take a while as the pad can only become blocked when real dataflow
is happening.
When the pipeline is stalled, for example in PAUSED, this can
take an indeterminate amount of time.
You can pass NULL as the callback to make this call block. Be careful with
this blocking call as it might not return for reasons stated above.


</description>
<parameters>
<parameter name="pad">
<parameter_description> the #GstPad to block or unblock
</parameter_description>
</parameter>
<parameter name="blocked">
<parameter_description> boolean indicating whether the pad should be blocked or unblocked
</parameter_description>
</parameter>
<parameter name="callback">
<parameter_description> #GstPadBlockCallback that will be called when the
operation succeeds
</parameter_description>
</parameter>
<parameter name="user_data">
<parameter_description> user data passed to the callback
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the pad could be blocked. This function can fail if the
wrong parameters were passed or the pad was already in the requested state.

MT safe.
</return>
</function>

<function name="gst_index_entry_assoc_map">
<description>
Gets alternative formats associated with the indexentry.


</description>
<parameters>
<parameter name="entry">
<parameter_description> the index to search
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> the format of the value the find
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> a pointer to store the value
</parameter_description>
</parameter>
</parameters>
<return> TRUE if there was a value associated with the given
format.
</return>
</function>

<function name="gst_alloc_trace_list">
<description>
Get a list of all registered alloc trace objects.


</description>
<parameters>
</parameters>
<return> a GList of GstAllocTrace objects.
</return>
</function>

<function name="gst_element_class_add_pad_template">
<description>
Adds a padtemplate to an element class. This is mainly used in the _base_init
functions of classes.

</description>
<parameters>
<parameter name="klass">
<parameter_description> the #GstElementClass to add the pad template to.
</parameter_description>
</parameter>
<parameter name="templ">
<parameter_description> a #GstPadTemplate to add to the element class.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_tuner_get_frequency">
<description>
Retrieve the current frequency from the given channel. As for
gst_tuner_set_frequency(), the #GstTunerChannel must support frequency
operations, as indicated by the GST_TUNER_CHANNEL_FREQUENCY flag.


</description>
<parameters>
<parameter name="tuner">
<parameter_description> The #GstTuner (a #GstElement) that owns the given channel.
</parameter_description>
</parameter>
<parameter name="channel">
<parameter_description> The #GstTunerChannel to retrieve the frequency from.
</parameter_description>
</parameter>
</parameters>
<return> The current frequency, or 0 on error.
</return>
</function>

<function name="gst_index_commit">
<description>
Tell the index that the writer with the given id is done
with this index and is not going to write any more entries
to it.

</description>
<parameters>
<parameter name="index">
<parameter_description> the index to commit
</parameter_description>
</parameter>
<parameter name="id">
<parameter_description> the writer that commited the index
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_bin_iterate_recurse">
<description>
Gets an iterator for the elements in this bin.
This iterator recurses into GstBin children.

Each element yielded by the iterator will have its refcount increased, so
unref after use.

MT safe.  Caller owns returned value.


</description>
<parameters>
<parameter name="bin">
<parameter_description> a #GstBin
</parameter_description>
</parameter>
</parameters>
<return> a #GstIterator of #GstElement, or NULL
</return>
</function>

<function name="gst_plugin_feature_check_version">
<description>
Checks whether the given plugin feature is at least
the required version


</description>
<parameters>
<parameter name="feature">
<parameter_description> a feature
</parameter_description>
</parameter>
<parameter name="min_major">
<parameter_description> minimum required major version
</parameter_description>
</parameter>
<parameter name="min_minor">
<parameter_description> minimum required minor version
</parameter_description>
</parameter>
<parameter name="min_micro">
<parameter_description> minimum required micro version
</parameter_description>
</parameter>
</parameters>
<return> #TRUE if the plugin feature has at least
the required version, otherwise #FALSE.
</return>
</function>

<function name="gst_index_new_group">
<description>
Create a new group for the given index. It will be
set as the current group.


</description>
<parameters>
<parameter name="index">
<parameter_description> the index to create the new group in
</parameter_description>
</parameter>
</parameters>
<return> the id of the newly created group.
</return>
</function>

<function name="gst_element_set_clock">
<description>
Sets the clock for the element. This function increases the
refcount on the clock. Any previously set clock on the object
is unreffed.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement to set the clock for.
</parameter_description>
</parameter>
<parameter name="clock">
<parameter_description> the #GstClock to set for the element.
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the element accepted the clock. An element can refuse a
clock when it, for example, is not able to slave its internal clock to the
@clock or when it requires a specific clock to operate.

MT safe.
</return>
</function>

<function name="gst_structure_remove_field">
<description>
Removes the field with the given name.  If the field with the given
name does not exist, the structure is unchanged.

</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="fieldname">
<parameter_description> the name of the field to remove
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_base_audio_sink_set_slave_method">
<description>
Controls how clock slaving will be performed in @sink. 

Since: 0.10.16

</description>
<parameters>
<parameter name="sink">
<parameter_description> a #GstBaseAudioSink
</parameter_description>
</parameter>
<parameter name="method">
<parameter_description> the new slave method
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_fft_s16_window">
<description>
This calls the window function @window on the @timedata sample buffer.


</description>
<parameters>
<parameter name="self">
<parameter_description> #GstFFTS16 instance for this call
</parameter_description>
</parameter>
<parameter name="timedata">
<parameter_description> Time domain samples
</parameter_description>
</parameter>
<parameter name="window">
<parameter_description> Window function to apply
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_init">
<description>
Initializes the GStreamer library, setting up internal path lists,
registering built-in elements, and loading standard plugins.

This function should be called before calling any other GLib functions. If
this is not an option, your program must initialise the GLib thread system
using g_thread_init() before any other GLib functions are called.

&amp;lt;note&amp;gt;&amp;lt;para&amp;gt;
This function will terminate your program if it was unable to initialize
GStreamer for some reason.  If you want your program to fall back,
use gst_init_check() instead.
&amp;lt;/para&amp;gt;&amp;lt;/note&amp;gt;

WARNING: This function does not work in the same way as corresponding
functions in other glib-style libraries, such as gtk_init().  In
particular, unknown command line options cause this function to
abort program execution.

</description>
<parameters>
<parameter name="argc">
<parameter_description> pointer to application&apos;s argc
</parameter_description>
</parameter>
<parameter name="argv">
<parameter_description> pointer to application&apos;s argv
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_buffer_get_caps">
<description>
Gets the media type of the buffer. This can be NULL if there
is no media type attached to this buffer.

Returns NULL if there were no caps on this buffer.

</description>
<parameters>
<parameter name="buffer">
<parameter_description> a #GstBuffer.
</parameter_description>
</parameter>
</parameters>
<return>NULL if there were no caps on this buffer.
</return>
</function>

<function name="gst_missing_plugin_message_get_description">
<description>
Returns: a newly-allocated description string, or NULL on error. Free

</description>
<parameters>
<parameter name="msg">
<parameter_description> a missing-plugin #GstMessage of type #GST_MESSAGE_ELEMENT
</parameter_description>
</parameter>
</parameters>
<return> a newly-allocated description string, or NULL on error. Free
string with g_free() when not needed any longer.
</return>
</function>

<function name="gst_rtsp_range_free">
<description>
Free the memory alocated by @range.

</description>
<parameters>
<parameter name="range">
<parameter_description> a #GstRTSPTimeRange
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_audio_filter_class_add_pad_templates">
<description>
Convenience function to add pad templates to this element class, with
@allowed_caps as the caps that can be handled.

This function is usually used from within a GObject base_init function.

Since: 0.10.12

</description>
<parameters>
<parameter name="klass">
<parameter_description> an #GstAudioFilterClass
</parameter_description>
</parameter>
<parameter name="allowed_caps">
<parameter_description> what formats the filter can handle, as #GstCaps
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_add_buffer_probe_full">
<description>
Adds a probe that will be called for all buffers passing through a pad. See
gst_pad_add_data_probe() for more information.

The @notify function is called when the probe is disconnected and usually
used to free @data.


</description>
<parameters>
<parameter name="pad">
<parameter_description> pad to add the buffer probe handler to
</parameter_description>
</parameter>
<parameter name="handler">
<parameter_description> function to call when buffer are passed over pad
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> data to pass along with the handler
</parameter_description>
</parameter>
<parameter name="notify">
<parameter_description> function to call when the probe is disconnected, or NULL
</parameter_description>
</parameter>
</parameters>
<return> The handler id

Since: 0.10.20
</return>
</function>

<function name="gst_bin_find_unlinked_pad">
<description>
Recursively looks for elements with an unlinked pad of the given
direction within the specified bin and returns an unlinked pad
if one is found, or NULL otherwise. If a pad is found, the caller
owns a reference to it and should use gst_object_unref() on the
pad when it is not needed any longer.


</description>
<parameters>
<parameter name="bin">
<parameter_description> bin in which to look for elements with unlinked pads
</parameter_description>
</parameter>
<parameter name="direction">
<parameter_description> whether to look for an unlinked source or sink pad
</parameter_description>
</parameter>
</parameters>
<return> unlinked pad of the given direction, or NULL.

Since: 0.10.20
</return>
</function>

<function name="gst_tag_get_nick">
<description>
Returns: the human-readable name of this tag

</description>
<parameters>
<parameter name="tag">
<parameter_description> the tag
</parameter_description>
</parameter>
</parameters>
<return> the human-readable name of this tag
</return>
</function>

<function name="gst_debug_get_all_categories">
<description>
Returns: the list of categories

</description>
<parameters>
</parameters>
<return> the list of categories
</return>
</function>

<function name="gst_query_new_formats">
<description>
Constructs a new query object for querying formats of
the stream. 


</description>
<parameters>
</parameters>
<return> A #GstQuery

Since: 0.10.4
</return>
</function>

<function name="gst_class_signal_connect">
<description>
Connect to a class signal.


</description>
<parameters>
<parameter name="klass">
<parameter_description> a #GstObjectClass to attach the signal to
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> the name of the signal to attach to
</parameter_description>
</parameter>
<parameter name="func">
<parameter_description> the signal function
</parameter_description>
</parameter>
<parameter name="func_data">
<parameter_description> a pointer to user data
</parameter_description>
</parameter>
</parameters>
<return> the signal id.
</return>
</function>

<function name="gst_value_can_subtract">
<description>
Checks if it&apos;s possible to subtract @subtrahend from @minuend.


</description>
<parameters>
<parameter name="minuend">
<parameter_description> the value to subtract from
</parameter_description>
</parameter>
<parameter name="subtrahend">
<parameter_description> the value to subtract
</parameter_description>
</parameter>
</parameters>
<return> TRUE if a subtraction is possible
</return>
</function>

<function name="gst_caps_append">
<description>
Appends the structures contained in @caps2 to @caps1. The structures in
@caps2 are not copied -- they are transferred to @caps1, and then @caps2 is
freed. If either caps is ANY, the resulting caps will be ANY.

</description>
<parameters>
<parameter name="caps1">
<parameter_description> the #GstCaps that will be appended to
</parameter_description>
</parameter>
<parameter name="caps2">
<parameter_description> the #GstCaps to append
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_type_find_get_length">
<description>
Get the length of the data stream.


</description>
<parameters>
<parameter name="find">
<parameter_description> The #GstTypeFind the function was called with
</parameter_description>
</parameter>
</parameters>
<return> The length of the data stream, or 0 if it is not available.
</return>
</function>

<function name="gst_pad_set_query_function">
<description>
Set the given query function for the pad.

</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad of either direction.
</parameter_description>
</parameter>
<parameter name="query">
<parameter_description> the #GstPadQueryFunction to set.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_property_probe_get_property">
<description>
Get #GParamSpec for a property for which probing is supported.


</description>
<parameters>
<parameter name="probe">
<parameter_description> the #GstPropertyProbe to get the properties for.
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> name of the property.
</parameter_description>
</parameter>
</parameters>
<return> the #GParamSpec of %NULL.
</return>
</function>

<function name="gst_property_probe_probe_and_get_values_name">
<description>
Same as gst_property_probe_probe_and_get_values ().


</description>
<parameters>
<parameter name="probe">
<parameter_description> the #GstPropertyProbe object.
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> the name of the property to get values for.
</parameter_description>
</parameter>
</parameters>
<return> the list of valid values for this property.
</return>
</function>

<function name="gst_rtcp_packet_sdes_add_item">
<description>
Add a new SDES item for @ssrc to @packet.


</description>
<parameters>
<parameter name="packet">
<parameter_description> a valid SDES #GstRTCPPacket
</parameter_description>
</parameter>
<parameter name="ssrc">
<parameter_description> the SSRC of the new item to add
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the item could be added, %FALSE if the maximum amount of
items has been exceeded for the SDES packet or the MTU has been reached.
</return>
</function>

<function name="gst_clock_id_ref">
<description>
Increase the refcount of given @id.


</description>
<parameters>
<parameter name="id">
<parameter_description> The #GstClockID to ref
</parameter_description>
</parameter>
</parameters>
<return> The same #GstClockID with increased refcount.

MT safe.
</return>
</function>

<function name="gst_bit_reader_skip_to_byte">
<description>
Skips until the next byte.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstBitReader instance
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_video_orientation_get_vcenter">
<description>
Get the vertical centering offset from the given object.

Since: 0.10.11

</description>
<parameters>
<parameter name="video_orientation">
<parameter_description> #GstVideoOrientation interface of a #GstElement
</parameter_description>
</parameter>
<parameter name="center">
<parameter_description> return location for the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE in case the element supports centering
</return>
</function>

<function name="gst_bus_pop_filtered">
<description>
Get a message matching @type from the bus.  Will discard all messages on
the bus that do not match @type and that have been posted before the first
message that does match @type.  If there is no message matching @type on
the bus, all messages will be discarded.


</description>
<parameters>
<parameter name="bus">
<parameter_description> a #GstBus to pop
</parameter_description>
</parameter>
<parameter name="types">
<parameter_description> message types to take into account
</parameter_description>
</parameter>
</parameters>
<return> The next #GstMessage matching @type that is on the bus, or NULL if
the bus is empty or there is no message matching @type.
The message is taken from the bus and needs to be unreffed with
gst_message_unref() after usage.

MT safe.

Since: 0.10.15
</return>
</function>

<function name="scan">
<description>

</description>
<parameters>
</parameters>
<return></return>
</function>

<function name="gst_mixer_mute_toggled">
<description>
This function is called by the mixer implementation to produce
a notification message on the bus indicating that the given track
has changed mute state.

This function only works for GstElements that are implementing the
GstMixer interface, and the element needs to have been provided a bus.

</description>
<parameters>
<parameter name="mixer">
<parameter_description> the #GstMixer (a #GstElement) that owns the track
</parameter_description>
</parameter>
<parameter name="track">
<parameter_description> the GstMixerTrack that has change mute state.
</parameter_description>
</parameter>
<parameter name="mute">
<parameter_description> the new state of the mute flag on the track
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_set_fixatecaps_function">
<description>
Sets the given fixatecaps function for the pad.  The fixatecaps function
will be called whenever the default values for a GstCaps needs to be
filled in.

</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad.
</parameter_description>
</parameter>
<parameter name="fixatecaps">
<parameter_description> the #GstPadFixateCapsFunction to set.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_sdp_message_get_attribute">
<description>
Get the attribute at position @idx in @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
<parameter name="idx">
<parameter_description> the index
</parameter_description>
</parameter>
</parameters>
<return> the #GstSDPAttribute at position @idx.
</return>
</function>

<function name="gst_byte_reader_peek_uint16_le">
<description>
Read a signed 16 bit little endian integer into @val
but keep the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #guint16 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_tag_list_get_uint">
<description>
Copies the contents for the given tag into the value, merging multiple values
into one if multiple values are associated with the tag.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList to get the tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> location for the result
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if a value was copied, FALSE if the tag didn&apos;t exist in the
given list.
</return>
</function>

<function name="gst_pad_get_query_types_default">
<description>
Invoke the default dispatcher for the query types on
the pad.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad.
</parameter_description>
</parameter>
</parameters>
<return> an zero-terminated array of #GstQueryType, or NULL if none of the
internally-linked pads has a query types function.
</return>
</function>

<function name="gst_base_src_set_do_timestamp">
<description>
Configure @src to automatically timestamp outgoing buffers based on the
current running_time of the pipeline. This property is mostly useful for live
sources.

Since: 0.10.15

</description>
<parameters>
<parameter name="src">
<parameter_description> the source
</parameter_description>
</parameter>
<parameter name="timestamp">
<parameter_description> enable or disable timestamping
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtcp_packet_bye_set_reason">
<description>
Set the reason string to @reason in @packet.


</description>
<parameters>
<parameter name="packet">
<parameter_description> a valid BYE #GstRTCPPacket
</parameter_description>
</parameter>
<parameter name="reason">
<parameter_description> a reason string
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the string could be set.
</return>
</function>

<function name="gst_structure_fixate_field_nearest_fraction">
<description>
Fixates a #GstStructure by changing the given field to the nearest
fraction to @target_numerator/@target_denominator that is a subset 
of the existing field.


</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="field_name">
<parameter_description> a field in @structure
</parameter_description>
</parameter>
<parameter name="target_numerator">
<parameter_description> The numerator of the target value of the fixation
</parameter_description>
</parameter>
<parameter name="target_denominator">
<parameter_description> The denominator of the target value of the fixation
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the structure could be fixated
</return>
</function>

<function name="gst_object_get_value_array">
<description>
Function to be able to get an array of values for one element properties

If the GstValueArray-&amp;gt;values array is NULL, it will be created by the function.
The type of the values in the array are the same as the property&apos;s type.

The g_object_* functions are just convenience functions for GObject


</description>
<parameters>
<parameter name="object">
<parameter_description> the object that has controlled properties
</parameter_description>
</parameter>
<parameter name="timestamp">
<parameter_description> the time that should be processed
</parameter_description>
</parameter>
<parameter name="value_array">
<parameter_description> array to put control-values in
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the given array(s) could be filled, %FALSE otherwise
Since: 0.9
</return>
</function>

<function name="gst_pad_push_event">
<description>
Sends the event to the peer of the given pad. This function is
mainly used by elements to send events to their peer
elements.

This function takes owership of the provided event so you should
gst_event_ref() it if you want to reuse the event after this call.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad to push the event to.
</parameter_description>
</parameter>
<parameter name="event">
<parameter_description> the #GstEvent to send to the pad.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the event was handled.

MT safe.
</return>
</function>

<function name="gst_adapter_clear">
<description>
Removes all buffers from @adapter.

</description>
<parameters>
<parameter name="adapter">
<parameter_description> a #GstAdapter
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_xml_parse_doc">
<description>
Fills the GstXML object with the elements from the
xmlDocPtr.


</description>
<parameters>
<parameter name="xml">
<parameter_description> a pointer to a GstXML object
</parameter_description>
</parameter>
<parameter name="doc">
<parameter_description> a pointer to an xml document to parse
</parameter_description>
</parameter>
<parameter name="root">
<parameter_description> The name of the root object to build
</parameter_description>
</parameter>
</parameters>
<return> TRUE on success, FALSE otherwise
</return>
</function>

<function name="gst_query_parse_buffering_stats">
<description>
Extracts the buffering stats values from @query.

Since: 0.10.20

</description>
<parameters>
<parameter name="query">
<parameter_description> A valid #GstQuery of type GST_QUERY_BUFFERING.
</parameter_description>
</parameter>
<parameter name="mode">
<parameter_description> a buffering mode 
</parameter_description>
</parameter>
<parameter name="avg_in">
<parameter_description> the average input rate
</parameter_description>
</parameter>
<parameter name="avg_out">
<parameter_description> the average output rate
</parameter_description>
</parameter>
<parameter name="buffering_left">
<parameter_description> amount of buffering time left
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_format_to_quark">
<description>
Get the unique quark for the given format.


</description>
<parameters>
<parameter name="format">
<parameter_description> a #GstFormat
</parameter_description>
</parameter>
</parameters>
<return> the quark associated with the format or 0 if the format
is unknown.
</return>
</function>

<function name="gst_missing_plugin_message_get_installer_detail">
<description>
Returns: a newly-allocated detail string, or NULL on error. Free string

</description>
<parameters>
<parameter name="msg">
<parameter_description> a missing-plugin #GstMessage of type #GST_MESSAGE_ELEMENT
</parameter_description>
</parameter>
</parameters>
<return> a newly-allocated detail string, or NULL on error. Free string
with g_free() when not needed any longer.
</return>
</function>

<function name="gst_query_set_uri">
<description>
Answer a URI query by setting the requested URI.

Since: 0.10.22

</description>
<parameters>
<parameter name="query">
<parameter_description> a #GstQuery with query type GST_QUERY_URI
</parameter_description>
</parameter>
<parameter name="uri">
<parameter_description> the URI to set
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_message_new_custom">
<description>
Create a new custom-typed message. This can be used for anything not
handled by other message-specific functions to pass a message to the
app. The structure field can be NULL.


</description>
<parameters>
<parameter name="type">
<parameter_description> The #GstMessageType to distinguish messages
</parameter_description>
</parameter>
<parameter name="src">
<parameter_description> The object originating the message.
</parameter_description>
</parameter>
<parameter name="structure">
<parameter_description> The structure for the message. The message will take ownership of
the structure.
</parameter_description>
</parameter>
</parameters>
<return> The new message.

MT safe.
</return>
</function>

<function name="gst_sdp_message_get_time">
<description>
Get time information with index @idx from @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
<parameter name="idx">
<parameter_description> the time index
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPTime.
</return>
</function>

<function name="gst_byte_reader_new_from_buffer">
<description>
Create a new #GstByteReader instance, which will read from the
#GstBuffer @buffer.


</description>
<parameters>
<parameter name="buffer">
<parameter_description> Buffer from which the #GstByteReader should read
</parameter_description>
</parameter>
</parameters>
<return> a new #GstByteReader instance

Since: 0.10.22
</return>
</function>

<function name="gst_registry_find_plugin">
<description>
Find the plugin with the given name in the registry.
The plugin will be reffed; caller is responsible for unreffing.


</description>
<parameters>
<parameter name="registry">
<parameter_description> the registry to search
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> the plugin name to find
</parameter_description>
</parameter>
</parameters>
<return> The plugin with the given name or NULL if the plugin was not found.
gst_object_unref() after usage.

MT safe.
</return>
</function>

<function name="gst_rtsp_message_init_data">
<description>
Initialize a new data #GstRTSPMessage for @channel.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstRTSPMessage
</parameter_description>
</parameter>
<parameter name="channel">
<parameter_description> a channel
</parameter_description>
</parameter>
</parameters>
<return> a #GstRTSPResult.
</return>
</function>

<function name="gst_element_requires_clock">
<description>
Query if the element requires a clock.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement to query
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the element requires a clock

MT safe.
</return>
</function>

<function name="gst_message_new_latency">
<description>
This message can be posted by elements when their latency requirements have
changed.


</description>
<parameters>
<parameter name="src">
<parameter_description> The object originating the message.
</parameter_description>
</parameter>
</parameters>
<return> The new latency message. 

MT safe.

Since: 0.10.12
</return>
</function>

<function name="gst_video_orientation_get_hcenter">
<description>
Get the horizontal centering offset from the given object.

Since: 0.10.11

</description>
<parameters>
<parameter name="video_orientation">
<parameter_description> #GstVideoOrientation interface of a #GstElement
</parameter_description>
</parameter>
<parameter name="center">
<parameter_description> return location for the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE in case the element supports centering
</return>
</function>

<function name="gst_clock_get_internal_time">
<description>
Gets the current internal time of the given clock. The time is returned
unadjusted for the offset and the rate.


</description>
<parameters>
<parameter name="clock">
<parameter_description> a #GstClock to query
</parameter_description>
</parameter>
</parameters>
<return> the internal time of the clock. Or GST_CLOCK_TIME_NONE when
given invalid input.

MT safe.
</return>
</function>

<function name="gst_sdp_media_get_information">
<description>
Get the information of @media


</description>
<parameters>
<parameter name="media">
<parameter_description> a #GstSDPMedia
</parameter_description>
</parameter>
</parameters>
<return> the information of @media.
</return>
</function>

<function name="gst_query_type_to_quark">
<description>
Get the unique quark for the given query type.


</description>
<parameters>
<parameter name="query">
<parameter_description> the query type
</parameter_description>
</parameter>
</parameters>
<return> the quark associated with the query type
</return>
</function>

<function name="gst_bit_reader_get_remaining">
<description>
Returns: The remaining number of bits of @reader instance.

</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstBitReader instance
</parameter_description>
</parameter>
</parameters>
<return> The remaining number of bits of @reader instance.

Since: 0.10.22
</return>
</function>

<function name="gst_dp_validate_payload">
<description>
Validates the given packet payload using the given packet header
by checking the CRC checksum.


</description>
<parameters>
<parameter name="header_length">
<parameter_description> the length of the packet header
</parameter_description>
</parameter>
<parameter name="header">
<parameter_description> the byte array of the packet header
</parameter_description>
</parameter>
<parameter name="payload">
<parameter_description> the byte array of the packet payload
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the CRC matches, or no CRC checksum is present.
</return>
</function>

<function name="gst_value_compare">
<description>
Compares @value1 and @value2.  If @value1 and @value2 cannot be
compared, the function returns GST_VALUE_UNORDERED.  Otherwise,
if @value1 is greater than @value2, GST_VALUE_GREATER_THAN is returned.
If @value1 is less than @value2, GST_VALUE_LESS_THAN is returned.
If the values are equal, GST_VALUE_EQUAL is returned.


</description>
<parameters>
<parameter name="value1">
<parameter_description> a value to compare
</parameter_description>
</parameter>
<parameter name="value2">
<parameter_description> another value to compare
</parameter_description>
</parameter>
</parameters>
<return> A #GstValueCompareType value
</return>
</function>

<function name="gst_video_orientation_get_hflip">
<description>
Get the horizontal flipping state (%TRUE for flipped) from the given object.

Since: 0.10.11

</description>
<parameters>
<parameter name="video_orientation">
<parameter_description> #GstVideoOrientation interface of a #GstElement
</parameter_description>
</parameter>
<parameter name="flip">
<parameter_description> return location for the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE in case the element supports flipping
</return>
</function>

<function name="gst_mini_object_replace">
<description>
Modifies a pointer to point to a new mini-object.  The modification
is done atomically, and the reference counts are updated correctly.
Either @newdata and the value pointed to by @olddata may be NULL.

</description>
<parameters>
<parameter name="olddata">
<parameter_description> pointer to a pointer to a mini-object to be replaced
</parameter_description>
</parameter>
<parameter name="newdata">
<parameter_description> pointer to new mini-object
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtcp_packet_sdes_get_item_count">
<description>
Get the number of items in the SDES packet @packet.


</description>
<parameters>
<parameter name="packet">
<parameter_description> a valid SDES #GstRTCPPacket
</parameter_description>
</parameter>
</parameters>
<return> The number of items in @packet.
</return>
</function>

<function name="gst_trace_flush">
<description>
Flush any pending trace entries in @trace to the trace file.
@trace can be NULL in which case the default #GstTrace will be
flushed.

</description>
<parameters>
<parameter name="trace">
<parameter_description> the #GstTrace to flush.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_bus_set_sync_handler">
<description>
Sets the synchronous handler on the bus. The function will be called
every time a new message is posted on the bus. Note that the function
will be called in the same thread context as the posting object. This
function is usually only called by the creator of the bus. Applications
should handle messages asynchronously using the gst_bus watch and poll
functions.

You cannot replace an existing sync_handler. You can pass NULL to this
function, which will clear the existing handler.

</description>
<parameters>
<parameter name="bus">
<parameter_description> a #GstBus to install the handler on
</parameter_description>
</parameter>
<parameter name="func">
<parameter_description> The handler function to install
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> User data that will be sent to the handler function.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_uri_protocol_is_supported">
<description>
Checks if an element exists that supports the given URI protocol. Note
that a positive return value does not imply that a subsequent call to
gst_element_make_from_uri() is guaranteed to work.


</description>
<parameters>
<parameter name="type">
<parameter_description> Whether to check for a source or a sink
</parameter_description>
</parameter>
<parameter name="protocol">
<parameter_description> Protocol that should be checked for (e.g. &quot;http&quot; or &quot;smb&quot;)
</parameter_description>
</parameter>
</parameters>
<return> TRUE

Since: 0.10.13
</return>
</function>

<function name="gst_formats_contains">
<description>
See if the given format is inside the format array.


</description>
<parameters>
<parameter name="formats">
<parameter_description> The format array to search
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> the format to find
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the format is found inside the array
</return>
</function>

<function name="gst_pad_query_position">
<description>
Queries a pad for the stream position.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad to invoke the position query on.
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> a pointer to the #GstFormat asked for.
On return contains the #GstFormat used.
</parameter_description>
</parameter>
<parameter name="cur">
<parameter_description> A location in which to store the current position, or NULL.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the query could be performed.
</return>
</function>

<function name="gst_bus_add_watch_full">
<description>
Adds a bus watch to the default main context with the given @priority.
This function is used to receive asynchronous messages in the main loop.
There can only be a single bus watch per bus, you must remove it before you
can set a new one.

When @func is called, the message belongs to the caller; if you want to
keep a copy of it, call gst_message_ref() before leaving @func.

The watch can be removed using g_source_remove() or by returning FALSE
from @func.


</description>
<parameters>
<parameter name="bus">
<parameter_description> a #GstBus to create the watch for.
</parameter_description>
</parameter>
<parameter name="priority">
<parameter_description> The priority of the watch.
</parameter_description>
</parameter>
<parameter name="func">
<parameter_description> A function to call when a message is received.
</parameter_description>
</parameter>
<parameter name="user_data">
<parameter_description> user data passed to @func.
</parameter_description>
</parameter>
<parameter name="notify">
<parameter_description> the function to call when the source is removed.
</parameter_description>
</parameter>
</parameters>
<return> The event source id.

MT safe.
</return>
</function>

<function name="gst_element_provide_clock">
<description>
Get the clock provided by the given element.
&amp;lt;note&amp;gt;An element is only required to provide a clock in the PAUSED
state. Some elements can provide a clock in other states.&amp;lt;/note&amp;gt;


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement to query
</parameter_description>
</parameter>
</parameters>
<return> the GstClock provided by the element or %NULL
if no clock could be provided.  Unref after usage.

MT safe.
</return>
</function>

<function name="gst_plugin_get_source">
<description>
get the source module the plugin belongs to.


</description>
<parameters>
<parameter name="plugin">
<parameter_description> plugin to get the source of
</parameter_description>
</parameter>
</parameters>
<return> the source of the plugin
</return>
</function>

<function name="gst_net_time_packet_new">
<description>
Creates a new #GstNetTimePacket from a buffer received over the network. The
caller is responsible for ensuring that @buffer is at least
#GST_NET_TIME_PACKET_SIZE bytes long.

If @buffer is #NULL, the local and remote times will be set to
#GST_CLOCK_TIME_NONE.

MT safe. Caller owns return value (g_free to free).


</description>
<parameters>
<parameter name="buffer">
<parameter_description> a buffer from which to construct the packet, or NULL
</parameter_description>
</parameter>
</parameters>
<return> The new #GstNetTimePacket.
</return>
</function>

<function name="gst_segment_set_last_stop">
<description>
Set the last observed stop position in the segment to @position.

This field should be set to allow seeking requests relative to the
current playing position.

</description>
<parameters>
<parameter name="segment">
<parameter_description> a #GstSegment structure.
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> the format of the segment.
</parameter_description>
</parameter>
<parameter name="position">
<parameter_description> the position 
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_push">
<description>
Pushes a buffer to the peer of @pad.

This function will call an installed pad block before triggering any
installed pad probes.

If the caps on @buffer are different from the currently configured caps on
@pad, this function will call any installed setcaps function on @pad (see
gst_pad_set_setcaps_function()). In case of failure to renegotiate the new
format, this function returns #GST_FLOW_NOT_NEGOTIATED.

The function proceeds calling gst_pad_chain() on the peer pad and returns
the value from that function. If @pad has no peer, #GST_FLOW_NOT_LINKED will
be returned.

In all cases, success or failure, the caller loses its reference to @buffer
after calling this function.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a source #GstPad, returns #GST_FLOW_ERROR if not.
</parameter_description>
</parameter>
<parameter name="buffer">
<parameter_description> the #GstBuffer to push returns GST_FLOW_ERROR if not.
</parameter_description>
</parameter>
</parameters>
<return> a #GstFlowReturn from the peer pad.

MT safe.
</return>
</function>

<function name="gst_event_has_name">
<description>
Checks if @event has the given @name. This function is usually used to
check the name of a custom event.


</description>
<parameters>
<parameter name="event">
<parameter_description> The #GstEvent.
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> name to check
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if @name matches the name of the event structure.

Since: 0.10.20
</return>
</function>

<function name="gst_data_queue_is_empty">
<description>
Queries if there are any items in the @queue.
MT safe.


</description>
<parameters>
<parameter name="queue">
<parameter_description> a #GstDataQueue.
</parameter_description>
</parameter>
</parameters>
<return> #TRUE if @queue is empty.
</return>
</function>

<function name="gst_caps_subtract">
<description>
Subtracts the @subtrahend from the @minuend.
&amp;lt;note&amp;gt;This function does not work reliably if optional properties for caps
are included on one caps and omitted on the other.&amp;lt;/note&amp;gt;


</description>
<parameters>
<parameter name="minuend">
<parameter_description> #GstCaps to substract from
</parameter_description>
</parameter>
<parameter name="subtrahend">
<parameter_description> #GstCaps to substract
</parameter_description>
</parameter>
</parameters>
<return> the resulting caps
</return>
</function>

<function name="gst_bus_async_signal_func">
<description>
A helper #GstBusFunc that can be used to convert all asynchronous messages
into signals.


</description>
<parameters>
<parameter name="bus">
<parameter_description> a #GstBus
</parameter_description>
</parameter>
<parameter name="message">
<parameter_description> the #GstMessage received
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> user data
</parameter_description>
</parameter>
</parameters>
<return> TRUE
</return>
</function>

<function name="gst_pad_is_linked">
<description>
Checks if a @pad is linked to another pad or not.


</description>
<parameters>
<parameter name="pad">
<parameter_description> pad to check
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the pad is linked, FALSE otherwise.

MT safe.
</return>
</function>

<function name="gst_tuner_norm_changed">
<description>
Called by elements implementing the #GstTuner interface when the
current norm changes. Fires the #GstTuner::norm-changed signal.


</description>
<parameters>
<parameter name="tuner">
<parameter_description> A #GstTuner instance
</parameter_description>
</parameter>
<parameter name="norm">
<parameter_description> A #GstTunerNorm instance
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_fft_s32_free">
<description>
This frees the memory allocated for @self.


</description>
<parameters>
<parameter name="self">
<parameter_description> #GstFFTS32 instance for this call
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_structure_has_name">
<description>
Checks if the structure has the given name


</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> structure name to check for
</parameter_description>
</parameter>
</parameters>
<return> TRUE if @name matches the name of the structure.
</return>
</function>

<function name="GstColorBalanceChannel">
<description>
Fired when the value of the indicated channel has changed.

</description>
<parameters>
<parameter name="channel">
<parameter_description> The #GstColorBalanceChannel
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> The new value
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="GstBin">
<description>
Will be emitted when the bin needs to perform latency calculations. This
signal is only emited for toplevel bins or when async-handling is
enabled.

Only one signal handler is invoked. If no signals are connected, the
default handler is invoked, which will query and distribute the lowest
possible latency to all sinks.

Connect to this signal if the default latency calculations are not
sufficient, like when you need different latencies for different sinks in
the same pipeline.

Since: 0.10.22

</description>
<parameters>
<parameter name="bin">
<parameter_description> the #GstBin
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_message_parse_clock_lost">
<description>
Extracts the lost clock from the GstMessage.
The clock object returned remains valid until the message is freed.

MT safe.

</description>
<parameters>
<parameter name="message">
<parameter_description> A valid #GstMessage of type GST_MESSAGE_CLOCK_LOST.
</parameter_description>
</parameter>
<parameter name="clock">
<parameter_description> A pointer to hold the lost clock
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_xml_write">
<description>
Converts the given element into an XML presentation.


</description>
<parameters>
<parameter name="element">
<parameter_description> The element to write out
</parameter_description>
</parameter>
</parameters>
<return> a pointer to an XML document
</return>
</function>

<function name="gst_element_provides_clock">
<description>
Query if the element provides a clock. A #GstClock provided by an
element can be used as the global #GstClock for the pipeline.
An element that can provide a clock is only required to do so in the PAUSED
state, this means when it is fully negotiated and has allocated the resources
to operate the clock.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement to query
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the element provides a clock

MT safe.
</return>
</function>

<function name="gst_type_find_helper">
<description>
Tries to find what type of data is flowing from the given source #GstPad.

Returns #NULL if no #GstCaps matches the data stream.

</description>
<parameters>
<parameter name="src">
<parameter_description> A source #GstPad
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> The length in bytes
</parameter_description>
</parameter>
</parameters>
<return>#NULL if no #GstCaps matches the data stream.
</return>
</function>

<function name="gst_value_get_date">
<description>
Gets the contents of @value.


</description>
<parameters>
<parameter name="value">
<parameter_description> a GValue initialized to GST_TYPE_DATE
</parameter_description>
</parameter>
</parameters>
<return> the contents of @value
</return>
</function>

<function name="gst_poll_restart">
<description>
Restart any gst_poll_wait() that is in progress. This function is typically
used after adding or removing descriptors to @set.

If @set is not controllable, then this call will have no effect.

Since: 0.10.18

</description>
<parameters>
<parameter name="set">
<parameter_description> a #GstPoll.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtsp_message_steal_body">
<description>
Take the body of @msg and store it in @data and @size. After this method,
the body and size of @msg will be set to #NULL and 0 respectively.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstRTSPMessage
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> location for the data
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> location for the size of @data
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK.
</return>
</function>

<function name="gst_ghost_pad_set_target">
<description>
Set the new target of the ghostpad @gpad. Any existing target
is unlinked and links to the new target are established. if @newtarget is
NULL the target will be cleared.


</description>
<parameters>
<parameter name="gpad">
<parameter_description> the #GstGhostpad
</parameter_description>
</parameter>
<parameter name="newtarget">
<parameter_description> the new pad target
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the new target could be set. This function can return FALSE
when the internal pads could not be linked.
</return>
</function>

<function name="gst_index_get_assoc_entry">
<description>
Finds the given format/value in the index


</description>
<parameters>
<parameter name="index">
<parameter_description> the index to search
</parameter_description>
</parameter>
<parameter name="id">
<parameter_description> the id of the index writer
</parameter_description>
</parameter>
<parameter name="method">
<parameter_description> The lookup method to use
</parameter_description>
</parameter>
<parameter name="flags">
<parameter_description> Flags for the entry
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> the format of the value
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> the value to find
</parameter_description>
</parameter>
</parameters>
<return> the entry associated with the value or NULL if the
value was not found.
</return>
</function>

<function name="gst_object_replace">
<description>
Unrefs the #GstObject pointed to by @oldobj, refs @newobj and
puts @newobj in *@oldobj. Be carefull when calling this
function, it does not take any locks. You might want to lock
the object owning @oldobj pointer before calling this
function.

Make sure not to LOCK @oldobj because it might be unreffed
which could cause a deadlock when it is disposed.

</description>
<parameters>
<parameter name="oldobj">
<parameter_description> pointer to a place of a #GstObject to replace
</parameter_description>
</parameter>
<parameter name="newobj">
<parameter_description> a new #GstObject
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_plugin_name_filter">
<description>
A standard filter that returns TRUE when the plugin is of the
given name.


</description>
<parameters>
<parameter name="plugin">
<parameter_description> the plugin to check
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> the name of the plugin
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the plugin is of the given name.
</return>
</function>

<function name="gst_base_sink_get_latency">
<description>
Get the currently configured latency.


</description>
<parameters>
<parameter name="sink">
<parameter_description> the sink
</parameter_description>
</parameter>
</parameters>
<return> The configured latency.

Since: 0.10.12
</return>
</function>

<function name="gst_ring_buffer_close_device">
<description>
Close the audio device associated with the ring buffer. The ring buffer
should already have been released via gst_ring_buffer_release().


</description>
<parameters>
<parameter name="buf">
<parameter_description> the #GstRingBuffer
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the device could be closed, FALSE on error.

MT safe.
</return>
</function>

<function name="gst_collect_pads_peek">
<description>
Peek at the buffer currently queued in @data. This function
should be called with the @pads LOCK held, such as in the callback
handler.


</description>
<parameters>
<parameter name="pads">
<parameter_description> the collectspads to peek
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> the data to use
</parameter_description>
</parameter>
</parameters>
<return> The buffer in @data or NULL if no buffer is queued.
should unref the buffer after usage.

MT safe.
</return>
</function>

<function name="gst_rtp_buffer_set_extension">
<description>
Set the extension bit on the RTP packet in @buffer to @extension.

</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer
</parameter_description>
</parameter>
<parameter name="extension">
<parameter_description> the new extension
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_tag_list_get_uint64_index">
<description>
Gets the value that is at the given index for the given tag in the given
list.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList to get the tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
<parameter name="index">
<parameter_description> number of entry to read out
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> location for the result
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if a value was copied, FALSE if the tag didn&apos;t exist in the
given list.
</return>
</function>

<function name="GstIndex">
<description>
Is emitted when a new entry is added to the index.

</description>
<parameters>
<parameter name="gstindex">
<parameter_description> the object which received the signal.
</parameter_description>
</parameter>
<parameter name="arg1">
<parameter_description> The entry added to the index.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_element_message_full">
<description>
Post an error, warning or info message on the bus from inside an element.

@type must be of #GST_MESSAGE_ERROR, #GST_MESSAGE_WARNING or
#GST_MESSAGE_INFO.

MT safe.

</description>
<parameters>
<parameter name="element">
<parameter_description>  a #GstElement to send message from
</parameter_description>
</parameter>
<parameter name="type">
<parameter_description>     the #GstMessageType
</parameter_description>
</parameter>
<parameter name="domain">
<parameter_description>   the GStreamer GError domain this message belongs to
</parameter_description>
</parameter>
<parameter name="code">
<parameter_description>     the GError code belonging to the domain
</parameter_description>
</parameter>
<parameter name="text">
<parameter_description>     an allocated text string to be used as a replacement for the
default message connected to code, or %NULL
</parameter_description>
</parameter>
<parameter name="debug">
<parameter_description>    an allocated debug message to be used as a replacement for the
default debugging information, or %NULL
</parameter_description>
</parameter>
<parameter name="file">
<parameter_description>     the source code file where the error was generated
</parameter_description>
</parameter>
<parameter name="function">
<parameter_description> the source code function where the error was generated
</parameter_description>
</parameter>
<parameter name="line">
<parameter_description>     the source code line where the error was generated
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_bit_reader_get_bits_uint32">
<description>
Read @nbits bits into @val and update the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstBitReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #guint32 to store the result
</parameter_description>
</parameter>
<parameter name="nbits">
<parameter_description> number of bits to read
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_index_entry_copy">
<description>
Copies an entry and returns the result.


</description>
<parameters>
<parameter name="entry">
<parameter_description> the entry to copy
</parameter_description>
</parameter>
</parameters>
<return> a newly allocated #GstIndexEntry.
</return>
</function>

<function name="gst_base_transform_set_qos_enabled">
<description>
Enable or disable QoS handling in the transform.

MT safe.

Since: 0.10.5

</description>
<parameters>
<parameter name="trans">
<parameter_description> a #GstBaseTransform
</parameter_description>
</parameter>
<parameter name="enabled">
<parameter_description> new state
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_static_caps_get">
<description>
Converts a #GstStaticCaps to a #GstCaps.


</description>
<parameters>
<parameter name="static_caps">
<parameter_description> the #GstStaticCaps to convert
</parameter_description>
</parameter>
</parameters>
<return> A pointer to the #GstCaps. Unref after usage. Since the
core holds an additional ref to the returned caps,
use gst_caps_make_writable() on the returned caps to modify it.
</return>
</function>

<function name="gst_element_iterate_pads">
<description>
Retrieves an iterattor of @element&apos;s pads. The iterator should
be freed after usage.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement to iterate pads of.
</parameter_description>
</parameter>
</parameters>
<return> the #GstIterator of #GstPad. Unref each pad after use.

MT safe.
</return>
</function>

<function name="gst_sdp_message_set_version">
<description>
Set the version in @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
<parameter name="version">
<parameter_description> the version
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPResult.
</return>
</function>

<function name="gst_bit_reader_peek_bits_uint32">
<description>
Read @nbits bits into @val but keep the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstBitReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #guint32 to store the result
</parameter_description>
</parameter>
<parameter name="nbits">
<parameter_description> number of bits to read
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_index_factory_new">
<description>
Create a new indexfactory with the given parameters


</description>
<parameters>
<parameter name="name">
<parameter_description> name of indexfactory to create
</parameter_description>
</parameter>
<parameter name="longdesc">
<parameter_description> long description of indexfactory to create
</parameter_description>
</parameter>
<parameter name="type">
<parameter_description> the GType of the GstIndex element of this factory
</parameter_description>
</parameter>
</parameters>
<return> a new #GstIndexFactory.
</return>
</function>

<function name="gst_query_parse_buffering_percent">
<description>
Get the percentage of buffered data. This is a value between 0 and 100.
The @busy indicator is %TRUE when the buffering is in progress.

Since: 0.10.20

</description>
<parameters>
<parameter name="query">
<parameter_description> A valid #GstQuery of type GST_QUERY_BUFFERING.
</parameter_description>
</parameter>
<parameter name="busy">
<parameter_description> if buffering is busy
</parameter_description>
</parameter>
<parameter name="percent">
<parameter_description> a buffering percent
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_byte_reader_peek_uint24_le">
<description>
Read a signed 24 bit little endian integer into @val
but keep the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #guint32 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_mixer_volume_changed">
<description>
This function is called by the mixer implementation to produce
a notification message on the bus indicating that the volume(s) for the
given track have changed.

This function only works for GstElements that are implementing the
GstMixer interface, and the element needs to have been provided a bus.

</description>
<parameters>
<parameter name="mixer">
<parameter_description> the #GstMixer (a #GstElement) that owns the track
</parameter_description>
</parameter>
<parameter name="track">
<parameter_description> the GstMixerTrack that has changed.
</parameter_description>
</parameter>
<parameter name="volumes">
<parameter_description> Array of volume values, one per channel on the mixer track.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_element_create_all_pads">
<description>
Creates a pad for each pad template that is always available.
This function is only useful during object intialization of
subclasses of #GstElement.

</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement to create pads for
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_poll_fd_has_closed">
<description>
Check if @fd in @set has closed the connection.


</description>
<parameters>
<parameter name="set">
<parameter_description> a file descriptor set.
</parameter_description>
</parameter>
<parameter name="fd">
<parameter_description> a file descriptor.
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the connection was closed.

Since: 0.10.18
</return>
</function>

<function name="gst_proxy_pad_save_thyself">
<description>
Saves the ghost pad into an xml representation.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a ghost #GstPad to save.
</parameter_description>
</parameter>
<parameter name="parent">
<parameter_description> the parent #xmlNodePtr to save the description in.
</parameter_description>
</parameter>
</parameters>
<return> the #xmlNodePtr representation of the pad.
</return>
</function>

<function name="gst_clock_set_calibration">
<description>
Adjusts the rate and time of @clock. A rate of 1/1 is the normal speed of
the clock. Values bigger than 1/1 make the clock go faster.

@internal and @external are calibration parameters that arrange that
gst_clock_get_time() should have been @external at internal time @internal.
This internal time should not be in the future; that is, it should be less
than the value of gst_clock_get_internal_time() when this function is called.

Subsequent calls to gst_clock_get_time() will return clock times computed as
follows:

&amp;lt;programlisting&amp;gt;
time = (internal_time - internal) * rate_num / rate_denom + external
&amp;lt;/programlisting&amp;gt;

This formula is implemented in gst_clock_adjust_unlocked(). Of course, it
tries to do the integer arithmetic as precisely as possible.

Note that gst_clock_get_time() always returns increasing values so when you
move the clock backwards, gst_clock_get_time() will report the previous value
until the clock catches up.

MT safe.

</description>
<parameters>
<parameter name="clock">
<parameter_description> a #GstClock to calibrate
</parameter_description>
</parameter>
<parameter name="internal">
<parameter_description> a reference internal time
</parameter_description>
</parameter>
<parameter name="external">
<parameter_description> a reference external time
</parameter_description>
</parameter>
<parameter name="rate_num">
<parameter_description> the numerator of the rate of the clock relative to its
internal time 
</parameter_description>
</parameter>
<parameter name="rate_denom">
<parameter_description> the denominator of the rate of the clock
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtp_payload_info_for_pt">
<description>
Get the #GstRTPPayloadInfo for @payload_type. This function is
mostly used to get the default clock-rate and bandwidth for static payload
types specified with @payload_type.


</description>
<parameters>
<parameter name="payload_type">
<parameter_description> the payload_type to find
</parameter_description>
</parameter>
</parameters>
<return> a #GstRTPPayloadInfo or NULL when no info could be found.
</return>
</function>

<function name="gst_sdp_message_add_phone">
<description>
Add @phone to the list of phones in @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
<parameter name="phone">
<parameter_description> a phone
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPResult.
</return>
</function>

<function name="gst_byte_reader_peek_uint64_be">
<description>
Read a signed 64 bit big endian integer into @val
but keep the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #guint64 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_video_format_get_component_width">
<description>
Calculates the width of the component.  See
@gst_video_format_get_row_stride for a description
of the component index.

Since: 0.10.16


</description>
<parameters>
<parameter name="format">
<parameter_description> a #GstVideoFormat
</parameter_description>
</parameter>
<parameter name="component">
<parameter_description> the component index
</parameter_description>
</parameter>
<parameter name="width">
<parameter_description> the width of video
</parameter_description>
</parameter>
</parameters>
<return> width of component @component
</return>
</function>

<function name="gst_registry_remove_plugin">
<description>
Remove the plugin from the registry.

MT safe.

</description>
<parameters>
<parameter name="registry">
<parameter_description> the registry to remove the plugin from
</parameter_description>
</parameter>
<parameter name="plugin">
<parameter_description> the plugin to remove
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_x_overlay_got_xwindow_id">
<description>
This will post a &quot;have-xwindow-id&quot; element message on the bus.

This function should only be used by video overlay plugin developers.

</description>
<parameters>
<parameter name="overlay">
<parameter_description> a #GstXOverlay which got a XWindow.
</parameter_description>
</parameter>
<parameter name="xwindow_id">
<parameter_description> a #XID referencing the XWindow.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_element_set_state">
<description>
Sets the state of the element. This function will try to set the
requested state by going through all the intermediary states and calling
the class&apos;s state change function for each.

This function can return #GST_STATE_CHANGE_ASYNC, in which case the
element will perform the remainder of the state change asynchronously in
another thread.
An application can use gst_element_get_state() to wait for the completion
of the state change or it can wait for a state change message on the bus.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement to change state of.
</parameter_description>
</parameter>
<parameter name="state">
<parameter_description> the element&apos;s new #GstState.
</parameter_description>
</parameter>
</parameters>
<return> Result of the state change using #GstStateChangeReturn.

MT safe.
</return>
</function>

<function name="gst_tag_exists">
<description>
Checks if the given type is already registered.


</description>
<parameters>
<parameter name="tag">
<parameter_description> name of the tag
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the type is already registered
</return>
</function>

<function name="gst_tag_register">
<description>
Registers a new tag type for the use with GStreamer&apos;s type system. If a type
with that name is already registered, that one is used.
The old registration may have used a different type however. So don&apos;t rely
on your supplied values.

Important: if you do not supply a merge function the implication will be
that there can only be one single value for this tag in a tag list and
any additional values will silenty be discarded when being added (unless
#GST_TAG_MERGE_REPLACE, #GST_TAG_MERGE_REPLACE_ALL, or
#GST_TAG_MERGE_PREPEND is used as merge mode, in which case the new
value will replace the old one in the list).

The merge function will be called from gst_tag_list_copy_value() when
it is required that one or more values for a tag be condensed into
one single value. This may happen from gst_tag_list_get_string(),
gst_tag_list_get_int(), gst_tag_list_get_double() etc. What will happen
exactly in that case depends on how the tag was registered and if a
merge function was supplied and if so which one.

Two default merge functions are provided: gst_tag_merge_use_first() and
gst_tag_merge_strings_with_commas().

</description>
<parameters>
<parameter name="name">
<parameter_description> the name or identifier string
</parameter_description>
</parameter>
<parameter name="flag">
<parameter_description> a flag describing the type of tag info
</parameter_description>
</parameter>
<parameter name="type">
<parameter_description> the type this data is in
</parameter_description>
</parameter>
<parameter name="nick">
<parameter_description> human-readable name
</parameter_description>
</parameter>
<parameter name="blurb">
<parameter_description> a human-readable description about this tag
</parameter_description>
</parameter>
<parameter name="func">
<parameter_description> function for merging multiple values of this tag, or NULL
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_message_new_element">
<description>
Create a new element-specific message. This is meant as a generic way of
allowing one-way communication from an element to an application, for example
&quot;the firewire cable was unplugged&quot;. The format of the message should be
documented in the element&apos;s documentation. The structure field can be NULL.


</description>
<parameters>
<parameter name="src">
<parameter_description> The object originating the message.
</parameter_description>
</parameter>
<parameter name="structure">
<parameter_description> The structure for the message. The message will take ownership of
the structure.
</parameter_description>
</parameter>
</parameters>
<return> The new element message.

MT safe.
</return>
</function>

<function name="gst_segment_set_seek">
<description>
Update the segment structure with the field values of a seek event (see
gst_event_new_seek()).

After calling this method, the segment field last_stop and time will
contain the requested new position in the segment. The new requested
position in the segment depends on @rate and @start_type and @stop_type. 

For positive @rate, the new position in the segment is the new @segment
start field when it was updated with a @start_type different from
#GST_SEEK_TYPE_NONE. If no update was performed on @segment start position
(#GST_SEEK_TYPE_NONE), @start is ignored and @segment last_stop is
unmodified.

For negative @rate, the new position in the segment is the new @segment
stop field when it was updated with a @stop_type different from
#GST_SEEK_TYPE_NONE. If no stop was previously configured in the segment, the
duration of the segment will be used to update the stop position.
If no update was performed on @segment stop position (#GST_SEEK_TYPE_NONE),
@stop is ignored and @segment last_stop is unmodified.

The applied rate of the segment will be set to 1.0 by default.
If the caller can apply a rate change, it should update @segment
rate and applied_rate after calling this function.

@update will be set to TRUE if a seek should be performed to the segment 
last_stop field. This field can be FALSE if, for example, only the @rate
has been changed but not the playback position.

</description>
<parameters>
<parameter name="segment">
<parameter_description> a #GstSegment structure.
</parameter_description>
</parameter>
<parameter name="rate">
<parameter_description> the rate of the segment.
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> the format of the segment.
</parameter_description>
</parameter>
<parameter name="flags">
<parameter_description> the seek flags for the segment
</parameter_description>
</parameter>
<parameter name="start_type">
<parameter_description> the seek method
</parameter_description>
</parameter>
<parameter name="start">
<parameter_description> the seek start value
</parameter_description>
</parameter>
<parameter name="stop_type">
<parameter_description> the seek method
</parameter_description>
</parameter>
<parameter name="stop">
<parameter_description> the seek stop value
</parameter_description>
</parameter>
<parameter name="update">
<parameter_description> boolean holding whether last_stop was updated.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtp_buffer_get_ssrc">
<description>
Get the SSRC of the RTP packet in @buffer.


</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer
</parameter_description>
</parameter>
</parameters>
<return> the SSRC of @buffer in host order.
</return>
</function>

<function name="gst_query_parse_convert">
<description>
Parse a convert query answer. Any of @src_format, @src_value, @dest_format,
and @dest_value may be NULL, in which case that value is omitted.

</description>
<parameters>
<parameter name="query">
<parameter_description> a #GstQuery
</parameter_description>
</parameter>
<parameter name="src_format">
<parameter_description> the storage for the #GstFormat of the source value, or NULL
</parameter_description>
</parameter>
<parameter name="src_value">
<parameter_description> the storage for the source value, or NULL
</parameter_description>
</parameter>
<parameter name="dest_format">
<parameter_description> the storage for the #GstFormat of the destination value, or NULL
</parameter_description>
</parameter>
<parameter name="dest_value">
<parameter_description> the storage for the destination value, or NULL
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_caps_save_thyself">
<description>
Serializes a #GstCaps to XML and adds it as a child node of @parent.


</description>
<parameters>
<parameter name="caps">
<parameter_description> a #GstCaps structure
</parameter_description>
</parameter>
<parameter name="parent">
<parameter_description> a XML parent node
</parameter_description>
</parameter>
</parameters>
<return> a XML node pointer
</return>
</function>

<function name="gst_tag_list_get_ulong">
<description>
Copies the contents for the given tag into the value, merging multiple values
into one if multiple values are associated with the tag.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList to get the tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> location for the result
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if a value was copied, FALSE if the tag didn&apos;t exist in the
given list.
</return>
</function>

<function name="gst_collect_pads_collect_range">
<description>
Collect data with @offset and @length on all pads. This function
is typically called in the getrange function of an element. 

This function is currently not implemented.


</description>
<parameters>
<parameter name="pads">
<parameter_description> the collectspads to use
</parameter_description>
</parameter>
<parameter name="offset">
<parameter_description> the offset to collect
</parameter_description>
</parameter>
<parameter name="length">
<parameter_description> the length to collect
</parameter_description>
</parameter>
</parameters>
<return> #GstFlowReturn of the operation.

MT safe.
</return>
</function>

<function name="gst_plugin_feature_get_name">
<description>
Gets the name of a plugin feature.


</description>
<parameters>
<parameter name="feature">
<parameter_description> a feature
</parameter_description>
</parameter>
</parameters>
<return> the name
</return>
</function>

<function name="GstPad">
<description>
Signals that new data is available on the pad. This signal is used
internally for implementing pad probes.
See gst_pad_add_*_probe functions.


</description>
<parameters>
<parameter name="pad">
<parameter_description> the pad that emitted the signal
</parameter_description>
</parameter>
<parameter name="mini_obj">
<parameter_description> new data
</parameter_description>
</parameter>
</parameters>
<return> %TRUE to keep the data, %FALSE to drop it
</return>
</function>

<function name="gst_event_parse_latency">
<description>
Get the latency in the latency event.

Since: 0.10.12

</description>
<parameters>
<parameter name="event">
<parameter_description> The event to query
</parameter_description>
</parameter>
<parameter name="latency">
<parameter_description> A pointer to store the latency in.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_xml_get_element">
<description>
This function is used to get a pointer to the GstElement corresponding
to name in the pipeline description. You would use this if you have
to do anything to the element after loading.


</description>
<parameters>
<parameter name="xml">
<parameter_description> The GstXML to get the element from
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> The name of element to retrieve
</parameter_description>
</parameter>
</parameters>
<return> a pointer to a new GstElement, caller owns returned reference.
</return>
</function>

<function name="gst_registry_xml_write_cache">
<description>
Write @registry in an XML format at the location given by
@location. Directories are automatically created.


</description>
<parameters>
<parameter name="registry">
<parameter_description> a #GstRegistry
</parameter_description>
</parameter>
<parameter name="location">
<parameter_description> a filename
</parameter_description>
</parameter>
</parameters>
<return> TRUE on success.
</return>
</function>

<function name="gst_type_find_peek">
<description>
returns and must not be freed.
Returns: the requested data, or NULL if that data is not available.

</description>
<parameters>
<parameter name="find">
<parameter_description> The #GstTypeFind object the function was called with
</parameter_description>
</parameter>
<parameter name="offset">
<parameter_description> The offset
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> The number of bytes to return
</parameter_description>
</parameter>
</parameters>
<return> the requested data, or NULL if that data is not available.
</return>
</function>

<function name="gst_query_set_convert">
<description>
Answer a convert query by setting the requested values.

</description>
<parameters>
<parameter name="query">
<parameter_description> a #GstQuery
</parameter_description>
</parameter>
<parameter name="src_format">
<parameter_description> the source #GstFormat
</parameter_description>
</parameter>
<parameter name="src_value">
<parameter_description> the source value
</parameter_description>
</parameter>
<parameter name="dest_format">
<parameter_description> the destination #GstFormat
</parameter_description>
</parameter>
<parameter name="dest_value">
<parameter_description> the destination value
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_implements_interface_check">
<description>
check a given object for an interface implementation, and check
whether this interface is supported for this specific instance.


</description>
<parameters>
<parameter name="from">
<parameter_description> the object (any sort) from which to check from for the interface
</parameter_description>
</parameter>
<parameter name="type">
<parameter_description> the interface type to check for
</parameter_description>
</parameter>
</parameters>
<return> whether or not the object implements the given interface
</return>
</function>

<function name="gst_index_add_id">
<description>
Add an id entry into the index.


</description>
<parameters>
<parameter name="index">
<parameter_description> the index to add the entry to
</parameter_description>
</parameter>
<parameter name="id">
<parameter_description> the id of the index writer
</parameter_description>
</parameter>
<parameter name="description">
<parameter_description> the description of the index writer
</parameter_description>
</parameter>
</parameters>
<return> a pointer to the newly added entry in the index.
</return>
</function>

<function name="gst_index_add_associationv">
<description>
Associate given format/value pairs with each other.


</description>
<parameters>
<parameter name="index">
<parameter_description> the index to add the entry to
</parameter_description>
</parameter>
<parameter name="id">
<parameter_description> the id of the index writer
</parameter_description>
</parameter>
<parameter name="flags">
<parameter_description> optinal flags for this entry
</parameter_description>
</parameter>
<parameter name="n">
<parameter_description> number of associations
</parameter_description>
</parameter>
<parameter name="list">
<parameter_description> list of associations
</parameter_description>
</parameter>
</parameters>
<return> a pointer to the newly added entry in the index.
</return>
</function>

<function name="_gst_element_error_printf">
<description>
This function is only used internally by the gst_element_error() macro.


</description>
<parameters>
<parameter name="format">
<parameter_description> the printf-like format to use, or %NULL
</parameter_description>
</parameter>
</parameters>
<return> a newly allocated string, or %NULL if the format was %NULL or &quot;&quot;

MT safe.
</return>
</function>

<function name="gst_video_calculate_display_ratio">
<description>
Given the Pixel Aspect Ratio and size of an input video frame, and the 
pixel aspect ratio of the intended display device, calculates the actual 
display ratio the video will be rendered with.


</description>
<parameters>
<parameter name="dar_n">
<parameter_description> Numerator of the calculated display_ratio
</parameter_description>
</parameter>
<parameter name="dar_d">
<parameter_description> Denominator of the calculated display_ratio
</parameter_description>
</parameter>
<parameter name="video_width">
<parameter_description> Width of the video frame in pixels
</parameter_description>
</parameter>
<parameter name="video_height">
<parameter_description> Height of the video frame in pixels
</parameter_description>
</parameter>
<parameter name="video_par_n">
<parameter_description> Numerator of the pixel aspect ratio of the input video.
</parameter_description>
</parameter>
<parameter name="video_par_d">
<parameter_description> Denominator of the pixel aspect ratio of the input video.
</parameter_description>
</parameter>
<parameter name="display_par_n">
<parameter_description> Numerator of the pixel aspect ratio of the display device
</parameter_description>
</parameter>
<parameter name="display_par_d">
<parameter_description> Denominator of the pixel aspect ratio of the display device
</parameter_description>
</parameter>
</parameters>
<return> A boolean indicating success and a calculated Display Ratio in the 
dar_n and dar_d parameters. 
The return value is FALSE in the case of integer overflow or other error. 

Since: 0.10.7
</return>
</function>

<function name="gst_structure_get_uint">
<description>
Sets the uint pointed to by @value corresponding to the value of the
given field.  Caller is responsible for making sure the field exists
and has the correct type.

returns %FALSE.

</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="fieldname">
<parameter_description> the name of a field
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> a pointer to a uint to set
</parameter_description>
</parameter>
</parameters>
<return>%FALSE.

Since: 0.10.15
</return>
</function>

<function name="gst_element_factory_get_author">
<description>
Gets the author for this factory.


</description>
<parameters>
<parameter name="factory">
<parameter_description> a #GstElementFactory
</parameter_description>
</parameter>
</parameters>
<return> the author
</return>
</function>

<function name="gst_rtp_buffer_get_payload_len">
<description>
Get the length of the payload of the RTP packet in @buffer.


</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer
</parameter_description>
</parameter>
</parameters>
<return> The length of the payload in @buffer.
</return>
</function>

<function name="gst_pad_template_pad_created">
<description>
Emit the pad-created signal for this template when created by this pad.

</description>
<parameters>
<parameter name="templ">
<parameter_description> a #GstPadTemplate that has been created
</parameter_description>
</parameter>
<parameter name="pad">
<parameter_description>   the #GstPad that created it
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="The">
<description>

</description>
<parameters>
</parameters>
<return></return>
</function>

<function name="gst_rtcp_packet_bye_get_ssrc_count">
<description>
Get the number of SSRC fields in @packet.


</description>
<parameters>
<parameter name="packet">
<parameter_description> a valid BYE #GstRTCPPacket
</parameter_description>
</parameter>
</parameters>
<return> The number of SSRC fields in @packet.
</return>
</function>

<function name="gst_index_set_filter">
<description>
Lets the app register a custom filter function so that
it can select what entries should be stored in the index.

</description>
<parameters>
<parameter name="index">
<parameter_description> the index to register the filter on
</parameter_description>
</parameter>
<parameter name="filter">
<parameter_description> the filter to register
</parameter_description>
</parameter>
<parameter name="user_data">
<parameter_description> data passed to the filter function
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_caps_load_thyself">
<description>
Creates a #GstCaps from its XML serialization.


</description>
<parameters>
<parameter name="parent">
<parameter_description> a XML node
</parameter_description>
</parameter>
</parameters>
<return> a new #GstCaps structure
</return>
</function>

<function name="gst_object_get_parent">
<description>
Returns: parent of @object, this can be NULL if @object has no

</description>
<parameters>
<parameter name="object">
<parameter_description> a #GstObject
</parameter_description>
</parameter>
</parameters>
<return> parent of @object, this can be NULL if @object has no
parent. unref after usage.

MT safe. Grabs and releases @object&apos;s LOCK.
</return>
</function>

<function name="gst_byte_reader_get_int24_be">
<description>
Read a signed 24 bit big endian integer into @val
and update the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #gint32 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_index_get_assoc_entry_full">
<description>
Finds the given format/value in the index with the given
compare function and user_data.


</description>
<parameters>
<parameter name="index">
<parameter_description> the index to search
</parameter_description>
</parameter>
<parameter name="id">
<parameter_description> the id of the index writer
</parameter_description>
</parameter>
<parameter name="method">
<parameter_description> The lookup method to use
</parameter_description>
</parameter>
<parameter name="flags">
<parameter_description> Flags for the entry
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> the format of the value
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> the value to find
</parameter_description>
</parameter>
<parameter name="func">
<parameter_description> the function used to compare entries
</parameter_description>
</parameter>
<parameter name="user_data">
<parameter_description> user data passed to the compare function
</parameter_description>
</parameter>
</parameters>
<return> the entry associated with the value or NULL if the
value was not found.
</return>
</function>

<function name="gst_base_audio_sink_get_provide_clock">
<description>
Queries whether @sink will provide a clock or not. See also
gst_base_audio_sink_set_provide_clock.


</description>
<parameters>
<parameter name="sink">
<parameter_description> a #GstBaseAudioSink
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if @sink will provide a clock.

Since: 0.10.16
</return>
</function>

<function name="gst_pad_set_blocked">
<description>
Blocks or unblocks the dataflow on a pad. This function is
a shortcut for gst_pad_set_blocked_async() with a NULL
callback.


</description>
<parameters>
<parameter name="pad">
<parameter_description> the #GstPad to block or unblock
</parameter_description>
</parameter>
<parameter name="blocked">
<parameter_description> boolean indicating we should block or unblock
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the pad could be blocked. This function can fail if the
wrong parameters were passed or the pad was already in the requested state.

MT safe.
</return>
</function>

<function name="gst_audio_fixate_channel_positions">
<description>
Custom fixate function. Elements that implement some sort of
channel conversion algorithm should use this function for
fixating on GstAudioChannelPosition properties. It will take
care of equal channel positioning (left/right). Caller g_free()s
the return value. The input properties may be (and are supposed
to be) unfixed.
Note that this function is mostly a hack because we currently
have no way to add default fixation functions for new GTypes.


</description>
<parameters>
<parameter name="str">
<parameter_description> a #GstStructure containing a (possibly unfixed)
&quot;channel-positions&quot; field.
</parameter_description>
</parameter>
</parameters>
<return> fixed values that the caller could use as a fixed
set of #GstAudioChannelPosition values.
</return>
</function>

<function name="gst_message_parse_segment_start">
<description>
Extracts the position and format from the segment start message.

MT safe.

</description>
<parameters>
<parameter name="message">
<parameter_description> A valid #GstMessage of type GST_MESSAGE_SEGMENT_START.
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> Result location for the format, or NULL
</parameter_description>
</parameter>
<parameter name="position">
<parameter_description> Result location for the position, or NULL
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_index_get_writer_id">
<description>
Before entries can be added to the index, a writer
should obtain a unique id. The methods to add new entries
to the index require this id as an argument.

The application can implement a custom function to map the writer object
to a string. That string will be used to register or look up an id
in the index.


</description>
<parameters>
<parameter name="index">
<parameter_description> the index to get a unique write id for
</parameter_description>
</parameter>
<parameter name="writer">
<parameter_description> the GstObject to allocate an id for
</parameter_description>
</parameter>
<parameter name="id">
<parameter_description> a pointer to a gint to hold the id
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the writer would be mapped to an id.
</return>
</function>

<function name="gst_pad_remove_event_probe">
<description>
Removes an event probe from @pad.

</description>
<parameters>
<parameter name="pad">
<parameter_description> pad to remove the event probe handler from
</parameter_description>
</parameter>
<parameter name="handler_id">
<parameter_description> handler id returned from gst_pad_add_event_probe
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtp_buffer_get_payload_subbuffer">
<description>
Create a subbuffer of the payload of the RTP packet in @buffer. @offset bytes
are skipped in the payload and the subbuffer will be of size @len.
If @len is -1 the total payload starting from @offset if subbuffered.


</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer
</parameter_description>
</parameter>
<parameter name="offset">
<parameter_description> the offset in the payload
</parameter_description>
</parameter>
<parameter name="len">
<parameter_description> the length in the payload
</parameter_description>
</parameter>
</parameters>
<return> A new buffer with the specified data of the payload.

Since: 0.10.10
</return>
</function>

<function name="gst_iterator_filter">
<description>
Create a new iterator from an existing iterator. The new iterator
will only return those elements that match the given compare function @func.
@func should return 0 for elements that should be included
in the iterator.

When this iterator is freed, @it will also be freed.


</description>
<parameters>
<parameter name="it">
<parameter_description> The #GstIterator to filter
</parameter_description>
</parameter>
<parameter name="func">
<parameter_description> the compare function to select elements
</parameter_description>
</parameter>
<parameter name="user_data">
<parameter_description> user data passed to the compare function
</parameter_description>
</parameter>
</parameters>
<return> a new #GstIterator.

MT safe.
</return>
</function>

<function name="gst_rtcp_buffer_get_packet_count">
<description>
Get the number of RTCP packets in @buffer.


</description>
<parameters>
<parameter name="buffer">
<parameter_description> a valid RTCP buffer
</parameter_description>
</parameter>
</parameters>
<return> the number of RTCP packets in @buffer.
</return>
</function>

<function name="gst_message_new_new_clock">
<description>
Create a new clock message. This message is posted whenever the
pipeline selectes a new clock for the pipeline.


</description>
<parameters>
<parameter name="src">
<parameter_description> The object originating the message.
</parameter_description>
</parameter>
<parameter name="clock">
<parameter_description> the new selected clock
</parameter_description>
</parameter>
</parameters>
<return> The new new clock message.

MT safe.
</return>
</function>

<function name="gst_byte_reader_get_float64_be">
<description>
Read a 64 bit big endian integer into @val
and update the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #gdouble to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_rtp_buffer_get_header_len">
<description>
Return the total length of the header in @buffer. This include the length of
the fixed header, the CSRC list and the extension header.


</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer
</parameter_description>
</parameter>
</parameters>
<return> The total length of the header in @buffer.
</return>
</function>

<function name="gst_rtp_buffer_set_timestamp">
<description>
Set the timestamp of the RTP packet in @buffer to @timestamp.

</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer
</parameter_description>
</parameter>
<parameter name="timestamp">
<parameter_description> the new timestamp
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_sdp_message_set_information">
<description>
Set the information in @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
<parameter name="information">
<parameter_description> the information
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPResult.
</return>
</function>

<function name="gst_ring_buffer_clear_all">
<description>
Fill the ringbuffer with silence.

MT safe.

</description>
<parameters>
<parameter name="buf">
<parameter_description> the #GstRingBuffer to clear
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_ring_buffer_set_callback">
<description>
Sets the given callback function on the buffer. This function
will be called every time a segment has been written to a device.

MT safe.

</description>
<parameters>
<parameter name="buf">
<parameter_description> the #GstRingBuffer to set the callback on
</parameter_description>
</parameter>
<parameter name="cb">
<parameter_description> the callback to set
</parameter_description>
</parameter>
<parameter name="user_data">
<parameter_description> user data passed to the callback
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_base_rtp_audio_payload_set_sample_based">
<description>
Tells #GstBaseRTPAudioPayload that the child element is for a sample based
audio codec


</description>
<parameters>
<parameter name="basertpaudiopayload">
<parameter_description> a pointer to the element.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_video_get_size">
<description>
Inspect the caps of the provided pad and retrieve the width and height of
the video frames it is configured for.

The pad needs to have negotiated caps containing width and height properties.


</description>
<parameters>
<parameter name="pad">
<parameter_description> pointer to a #GstPad
</parameter_description>
</parameter>
<parameter name="width">
<parameter_description> pointer to integer to hold pixel width of the video frames (output)
</parameter_description>
</parameter>
<parameter name="height">
<parameter_description> pointer to integer to hold pixel height of the video frames (output)
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the width and height could be retrieved.

</return>
</function>

<function name="gst_rtcp_packet_set_rb">
<description>
Set the @nth new report block in @packet with the given values.

Note: Not implemented.

</description>
<parameters>
<parameter name="packet">
<parameter_description> a valid SR or RR #GstRTCPPacket
</parameter_description>
</parameter>
<parameter name="nth">
<parameter_description> the nth report block to set
</parameter_description>
</parameter>
<parameter name="ssrc">
<parameter_description> data source being reported
</parameter_description>
</parameter>
<parameter name="fractionlost">
<parameter_description> fraction lost since last SR/RR
</parameter_description>
</parameter>
<parameter name="packetslost">
<parameter_description> the cumululative number of packets lost
</parameter_description>
</parameter>
<parameter name="exthighestseq">
<parameter_description> the extended last sequence number received
</parameter_description>
</parameter>
<parameter name="jitter">
<parameter_description> the interarrival jitter
</parameter_description>
</parameter>
<parameter name="lsr">
<parameter_description> the last SR packet from this source
</parameter_description>
</parameter>
<parameter name="dlsr">
<parameter_description> the delay since last SR packet
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_filter_run">
<description>
Iterates over the elements in @list, calling @func with the
list item data for each item.  If @func returns TRUE, @data is
prepended to the list of results returned.  If @first is true,
the search is halted after the first result is found.

Since gst_filter_run() knows nothing about the type of @data, no
reference will be taken (if @data refers to an object) and no copy of
@data wil be made in any other way when prepending @data to the list of
results.


</description>
<parameters>
<parameter name="list">
<parameter_description> a linked list
</parameter_description>
</parameter>
<parameter name="func">
<parameter_description> the function to execute for each item
</parameter_description>
</parameter>
<parameter name="first">
<parameter_description> flag to stop execution after a successful item
</parameter_description>
</parameter>
<parameter name="user_data">
<parameter_description> user data
</parameter_description>
</parameter>
</parameters>
<return> the list of results. Free with g_list_free() when no longer needed
(the data contained in the list is a flat copy and does need to be
unreferenced or freed).
</return>
</function>

<function name="gst_byte_reader_peek_float32_le">
<description>
Read a 32 bit little endian integer into @val
but keep the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #gfloat to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_query_new_latency">
<description>
Constructs a new latency query object. 
Use gst_query_unref() when done with it. A latency query is usually performed
by sinks to compensate for additional latency introduced by elements in the
pipeline.


</description>
<parameters>
</parameters>
<return> A #GstQuery

Since: 0.10.12
</return>
</function>

<function name="gst_base_transform_is_qos_enabled">
<description>
Queries if the transform will handle QoS.


</description>
<parameters>
<parameter name="trans">
<parameter_description> a #GstBaseTransform
</parameter_description>
</parameter>
</parameters>
<return> TRUE if QoS is enabled.

MT safe.

Since: 0.10.5
</return>
</function>

<function name="gst_caps_is_always_compatible">
<description>
A given #GstCaps structure is always compatible with another if
every media format that is in the first is also contained in the
second.  That is, @caps1 is a subset of @caps2.


</description>
<parameters>
<parameter name="caps1">
<parameter_description> the #GstCaps to test
</parameter_description>
</parameter>
<parameter name="caps2">
<parameter_description> the #GstCaps to test
</parameter_description>
</parameter>
</parameters>
<return> TRUE if @caps1 is a subset of @caps2.
</return>
</function>

<function name="gst_message_parse_error">
<description>
Extracts the GError and debug string from the GstMessage. The values returned
in the output arguments are copies; the caller must free them when done.

MT safe.

</description>
<parameters>
<parameter name="message">
<parameter_description> A valid #GstMessage of type GST_MESSAGE_ERROR.
</parameter_description>
</parameter>
<parameter name="gerror">
<parameter_description> Location for the GError
</parameter_description>
</parameter>
<parameter name="debug">
<parameter_description> Location for the debug message, or NULL
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_riff_parse_file_header">
<description>
Reads the first few bytes from the provided buffer, checks
if this stream is a RIFF stream, and determines document type.
This function takes ownership of @buf so it should not be used anymore
after calling this function.


</description>
<parameters>
<parameter name="element">
<parameter_description> caller element (used for debugging/error).
</parameter_description>
</parameter>
<parameter name="buf">
<parameter_description> input buffer from which the file header will be parsed,
should be at least 12 bytes long.
</parameter_description>
</parameter>
<parameter name="doctype">
<parameter_description> a fourcc (returned by this function) to indicate the
type of document (according to the header).
</parameter_description>
</parameter>
</parameters>
<return> FALSE if this is not a RIFF stream (in which case the
caller should error out; we already throw an error), or TRUE
if it is.
</return>
</function>

<function name="gst_byte_reader_set_pos">
<description>
Sets the new position of a #GstByteReader instance to @pos in bytes.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="pos">
<parameter_description> The new position in bytes
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the position could be set successfully, %FALSE
otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_value_list_append_value">
<description>
Appends @append_value to the GstValueList in @value.

</description>
<parameters>
<parameter name="value">
<parameter_description> a #GValue of type #GST_TYPE_LIST
</parameter_description>
</parameter>
<parameter name="append_value">
<parameter_description> the value to append
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtsp_message_parse_data">
<description>
Parse the data message @msg and store the channel in @channel.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstRTSPMessage
</parameter_description>
</parameter>
<parameter name="channel">
<parameter_description> location to hold the channel
</parameter_description>
</parameter>
</parameters>
<return> a #GstRTSPResult.
</return>
</function>

<function name="gst_rtsp_message_init_response">
<description>
Initialize @msg with @code and @reason.

When @reason is #NULL, the default reason for @code will be used.

When @request is not #NULL, the relevant headers will be copied to the new
response message.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstRTSPMessage
</parameter_description>
</parameter>
<parameter name="code">
<parameter_description> the status code
</parameter_description>
</parameter>
<parameter name="reason">
<parameter_description> the status reason or #NULL
</parameter_description>
</parameter>
<parameter name="request">
<parameter_description> the request that triggered the response or #NULL
</parameter_description>
</parameter>
</parameters>
<return> a #GstRTSPResult.
</return>
</function>

<function name="gst_ring_buffer_commit">
<description>
Same as gst_ring_buffer_commit_full() but with a in_samples and out_samples
equal to @len, ignoring accum.


</description>
<parameters>
<parameter name="buf">
<parameter_description> the #GstRingBuffer to commit
</parameter_description>
</parameter>
<parameter name="sample">
<parameter_description> the sample position of the data
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> the data to commit
</parameter_description>
</parameter>
<parameter name="len">
<parameter_description> the number of samples in the data to commit
</parameter_description>
</parameter>
</parameters>
<return> The number of samples written to the ringbuffer or -1 on
error.

MT safe.
</return>
</function>

<function name="gst_value_can_union">
<description>
Determines if @value1 and @value2 can be non-trivially unioned.
Any two values can be trivially unioned by adding both of them
to a GstValueList.  However, certain types have the possibility
to be unioned in a simpler way.  For example, an integer range
and an integer can be unioned if the integer is a subset of the
integer range.  If there is the possibility that two values can
be unioned, this function returns TRUE.


</description>
<parameters>
<parameter name="value1">
<parameter_description> a value to union
</parameter_description>
</parameter>
<parameter name="value2">
<parameter_description> another value to union
</parameter_description>
</parameter>
</parameters>
<return> TRUE if there is a function allowing the two values to
be unioned.
</return>
</function>

<function name="gst_dp_header_payload_length">
<description>
Get the length of the payload described by @header.


</description>
<parameters>
<parameter name="header">
<parameter_description> the byte header of the packet array
</parameter_description>
</parameter>
</parameters>
<return> the length of the payload this header describes.
</return>
</function>

<function name="gst_rtsp_url_set_port">
<description>
Set the port number in @url to @port.


</description>
<parameters>
<parameter name="url">
<parameter_description> a #GstRTSPUrl
</parameter_description>
</parameter>
<parameter name="port">
<parameter_description> the port
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK.
</return>
</function>

<function name="gst_controller_new_list">
<description>
Creates a new GstController for the given object&apos;s properties


</description>
<parameters>
<parameter name="object">
<parameter_description> the object of which some properties should be controlled
</parameter_description>
</parameter>
<parameter name="list">
<parameter_description> list of property names that should be controlled
</parameter_description>
</parameter>
</parameters>
<return> the new controller.
</return>
</function>

<function name="gst_debug_category_get_name">
<description>
Returns: the name of the category.

</description>
<parameters>
<parameter name="category">
<parameter_description> a #GstDebugCategory to get name of.
</parameter_description>
</parameter>
</parameters>
<return> the name of the category.
</return>
</function>

<function name="gst_sdp_media_bandwidths_len">
<description>
Get the number of bandwidth fields in @media.


</description>
<parameters>
<parameter name="media">
<parameter_description> a #GstSDPMedia
</parameter_description>
</parameter>
</parameters>
<return> the number of bandwidths in @media.
</return>
</function>

<function name="gst_alloc_trace_get">
<description>
Get the named alloc trace object.


</description>
<parameters>
<parameter name="name">
<parameter_description> the name of the alloc trace object
</parameter_description>
</parameter>
</parameters>
<return> a GstAllocTrace with the given name or NULL when
no alloc tracer was registered with that name.
</return>
</function>

<function name="gst_base_src_set_live">
<description>
If the element listens to a live source, @live should
be set to %TRUE. 

A live source will not produce data in the PAUSED state and
will therefore not be able to participate in the PREROLL phase
of a pipeline. To signal this fact to the application and the 
pipeline, the state change return value of the live source will
be GST_STATE_CHANGE_NO_PREROLL.

</description>
<parameters>
<parameter name="src">
<parameter_description> base source instance
</parameter_description>
</parameter>
<parameter name="live">
<parameter_description> new live-mode
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_byte_reader_get_uint64_be">
<description>
Read an unsigned 64 bit big endian integer into @val
and update the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #guint64 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_object_get_value_arrays">
<description>
Function to be able to get an array of values for one or more given element
properties.

If the GstValueArray-&amp;gt;values array in list nodes is NULL, it will be created
by the function.
The type of the values in the array are the same as the property&apos;s type.

The g_object_* functions are just convenience functions for GObject


</description>
<parameters>
<parameter name="object">
<parameter_description> the object that has controlled properties
</parameter_description>
</parameter>
<parameter name="timestamp">
<parameter_description> the time that should be processed
</parameter_description>
</parameter>
<parameter name="value_arrays">
<parameter_description> list to return the control-values in
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the given array(s) could be filled, %FALSE otherwise
Since: 0.9
</return>
</function>

<function name="gst_structure_n_fields">
<description>
Get the number of fields in the structure.


</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
</parameters>
<return> the number of fields in the structure
</return>
</function>

<function name="gst_base_audio_sink_create_ringbuffer">
<description>
Create and return the #GstRingBuffer for @sink. This function will call the
::create_ringbuffer vmethod and will set @sink as the parent of the returned
buffer (see gst_object_set_parent()).


</description>
<parameters>
<parameter name="sink">
<parameter_description> a #GstBaseAudioSink.
</parameter_description>
</parameter>
</parameters>
<return> The new ringbuffer of @sink.
</return>
</function>

<function name="gst_caps_is_equal">
<description>
Checks if the given caps represent the same set of caps.
&amp;lt;note&amp;gt;This function does not work reliably if optional properties for caps
are included on one caps and omitted on the other.&amp;lt;/note&amp;gt;

This function deals correctly with passing NULL for any of the caps.


</description>
<parameters>
<parameter name="caps1">
<parameter_description> a #GstCaps
</parameter_description>
</parameter>
<parameter name="caps2">
<parameter_description> another #GstCaps
</parameter_description>
</parameter>
</parameters>
<return> TRUE if both caps are equal.
</return>
</function>

<function name="gst_bus_enable_sync_message_emission">
<description>
Instructs GStreamer to emit the &quot;sync-message&quot; signal after running the bus&apos;s
sync handler. This function is here so that code can ensure that they can
synchronously receive messages without having to affect what the bin&apos;s sync
handler is. 

This function may be called multiple times. To clean up, the caller is
responsible for calling gst_bus_disable_sync_message_emission() as many times
as this function is called.

While this function looks similar to gst_bus_add_signal_watch(), it is not
exactly the same -- this function enables &amp;lt;emphasis&amp;gt;synchronous&amp;lt;/emphasis&amp;gt; emission of
signals when messages arrive; gst_bus_add_signal_watch() adds an idle callback
to pop messages off the bus &amp;lt;emphasis&amp;gt;asynchronously&amp;lt;/emphasis&amp;gt;. The sync-message signal
comes from the thread of whatever object posted the message; the &quot;message&quot;
signal is marshalled to the main thread via the main loop.

MT safe.

</description>
<parameters>
<parameter name="bus">
<parameter_description> a #GstBus on which you want to receive the &quot;sync-message&quot; signal
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_sdp_media_formats_len">
<description>
Get the number of formats in @media.


</description>
<parameters>
<parameter name="media">
<parameter_description> a #GstSDPMedia
</parameter_description>
</parameter>
</parameters>
<return> the number of formats in @media.
</return>
</function>

<function name="gst_structure_get_boolean">
<description>
Sets the boolean pointed to by @value corresponding to the value of the
given field.  Caller is responsible for making sure the field exists
and has the correct type.


</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="fieldname">
<parameter_description> the name of a field
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> a pointer to a #gboolean to set
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the value could be set correctly. If there was no field
with @fieldname or the existing field did not contain a boolean, this
function returns FALSE.
</return>
</function>

<function name="gst_value_get_int_range_min">
<description>
Gets the minimum of the range specified by @value.


</description>
<parameters>
<parameter name="value">
<parameter_description> a GValue initialized to GST_TYPE_INT_RANGE
</parameter_description>
</parameter>
</parameters>
<return> the minimum of the range
</return>
</function>

<function name="gst_byte_reader_get_int32_le">
<description>
Read a signed 32 bit little endian integer into @val
and update the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #gint32 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_audio_check_channel_positions">
<description>
This functions checks if the given channel positions are valid. Channel
positions are valid if:
&amp;lt;itemizedlist&amp;gt;
&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;No channel positions appears twice or all positions are %GST_AUDIO_CHANNEL_POSITION_NONE.
&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;Either all or none of the channel positions are %GST_AUDIO_CHANNEL_POSITION_NONE.
&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
&amp;lt;listitem&amp;gt;&amp;lt;para&amp;gt;%GST_AUDIO_CHANNEL_POSITION_FRONT_MONO and %GST_AUDIO_CHANNEL_POSITION_LEFT or %GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT don&apos;t appear together in the given positions.
&amp;lt;/para&amp;gt;&amp;lt;/listitem&amp;gt;
&amp;lt;/itemizedlist&amp;gt;

Since: 0.10.20


</description>
<parameters>
<parameter name="pos">
<parameter_description> An array of #GstAudioChannelPosition.
</parameter_description>
</parameter>
<parameter name="channels">
<parameter_description> The number of elements in @pos.
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the given channel positions are valid
and %FALSE otherwise.
</return>
</function>

<function name="gst_rtsp_range_parse">
<description>
Parse @rangestr to a #GstRTSPTimeRange.


</description>
<parameters>
<parameter name="rangestr">
<parameter_description> a range string to parse
</parameter_description>
</parameter>
<parameter name="range">
<parameter_description> location to hold the #GstRTSPTimeRange result
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK on success.
</return>
</function>

<function name="gst_bin_recalculate_latency">
<description>
Query @bin for the current latency using and reconfigures this latency to all the
elements with a LATENCY event.

This method is typically called on the pipeline when a #GST_MESSAGE_LATENCY
is posted on the bus.

This function simply emits the &apos;do-latency&apos; signal so any custom latency
calculations will be performed.


</description>
<parameters>
<parameter name="bin">
<parameter_description> a #GstBin
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the latency could be queried and reconfigured.

Since: 0.10.22.
</return>
</function>

<function name="gst_pipeline_set_auto_flush_bus">
<description>
Usually, when a pipeline goes from READY to NULL state, it automatically
flushes all pending messages on the bus, which is done for refcounting
purposes, to break circular references.

This means that applications that update state using (async) bus messages
(e.g. do certain things when a pipeline goes from PAUSED to READY) might
not get to see messages when the pipeline is shut down, because they might
be flushed before they can be dispatched in the main thread. This behaviour
can be disabled using this function.

It is important that all messages on the bus are handled when the
automatic flushing is disabled else memory leaks will be introduced.

MT safe.

Since: 0.10.4

</description>
<parameters>
<parameter name="pipeline">
<parameter_description> a #GstPipeline
</parameter_description>
</parameter>
<parameter name="auto_flush">
<parameter_description> whether or not to automatically flush the bus when
the pipeline goes from READY to NULL state
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtsp_connection_free">
<description>
Close and free @conn.


</description>
<parameters>
<parameter name="conn">
<parameter_description> a #GstRTSPConnection
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK on success.
</return>
</function>

<function name="gst_type_find_factory_get_list">
<description>
Gets the list of all registered typefind factories. You must free the
list using gst_plugin_feature_list_free.


</description>
<parameters>
</parameters>
<return> the list of all registered #GstTypeFindFactory.
</return>
</function>

<function name="gst_plugin_load">
<description>
Loads @plugin. Note that the *return value* is the loaded plugin; @plugin is
untouched. The normal use pattern of this function goes like this:

&amp;lt;programlisting&amp;gt;
GstPlugin *loaded_plugin;
loaded_plugin = gst_plugin_load (plugin);
// presumably, we&apos;re no longer interested in the potentially-unloaded plugin
gst_object_unref (plugin);
plugin = loaded_plugin;
&amp;lt;/programlisting&amp;gt;


</description>
<parameters>
<parameter name="plugin">
<parameter_description> plugin to load
</parameter_description>
</parameter>
</parameters>
<return> A reference to a loaded plugin, or NULL on error.
</return>
</function>

<function name="gst_rtsp_message_parse_request">
<description>
Parse the request message @msg and store the values @method, @uri and
@version. The result locations can be #NULL if one is not interested in its
value.

@uri remains valid for as long as @msg is valid and unchanged.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstRTSPMessage
</parameter_description>
</parameter>
<parameter name="method">
<parameter_description> location to hold the method
</parameter_description>
</parameter>
<parameter name="uri">
<parameter_description> location to hold the uri
</parameter_description>
</parameter>
<parameter name="version">
<parameter_description> location to hold the version
</parameter_description>
</parameter>
</parameters>
<return> a #GstRTSPResult.
</return>
</function>

<function name="gst_sdp_message_init">
<description>
Initialize @msg so that its contents are as if it was freshly allocated
with gst_sdp_message_new(). This function is mostly used to initialize a message
allocated on the stack. gst_sdp_message_uninit() undoes this operation.

When this function is invoked on newly allocated data (with malloc or on the
stack), its contents should be set to 0 before calling this function.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPResult.
</return>
</function>

<function name="gst_mini_object_unref">
<description>
Decreases the reference count of the mini-object, possibly freeing
the mini-object.

</description>
<parameters>
<parameter name="mini_object">
<parameter_description> the mini-object
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_bin_add_many">
<description>
Adds a NULL-terminated list of elements to a bin.  This function is
equivalent to calling gst_bin_add() for each member of the list. The return
value of each gst_bin_add() is ignored.

</description>
<parameters>
<parameter name="bin">
<parameter_description> a #GstBin
</parameter_description>
</parameter>
<parameter name="element_1">
<parameter_description> the #GstElement element to add to the bin
</parameter_description>
</parameter>
<parameter name="Varargs">
<parameter_description> additional elements to add to the bin
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_sdp_message_get_phone">
<description>
Get the phone with number @idx from @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
<parameter name="idx">
<parameter_description> a phone index
</parameter_description>
</parameter>
</parameters>
<return> the phone at position @idx.
</return>
</function>

<function name="gst_index_new">
<description>
Create a new tileindex object


</description>
<parameters>
</parameters>
<return> a new index object
</return>
</function>

<function name="gst_message_new_error">
<description>
Create a new error message. The message will copy @error and
@debug. This message is posted by element when a fatal event
occured. The pipeline will probably (partially) stop. The application
receiving this message should stop the pipeline.


</description>
<parameters>
<parameter name="src">
<parameter_description> The object originating the message.
</parameter_description>
</parameter>
<parameter name="error">
<parameter_description> The GError for this message.
</parameter_description>
</parameter>
<parameter name="debug">
<parameter_description> A debugging string.
</parameter_description>
</parameter>
</parameters>
<return> The new error message.

MT safe.
</return>
</function>

<function name="gst_base_sink_get_render_delay">
<description>
Get the render delay of @sink. see gst_base_sink_set_render_delay() for more
information about the render delay.


</description>
<parameters>
<parameter name="sink">
<parameter_description> a #GstBaseSink
</parameter_description>
</parameter>
</parameters>
<return> the render delay of @sink.

Since: 0.10.21
</return>
</function>

<function name="gst_fft_s16_new">
<description>
This returns a new #GstFFTS16 instance with the given parameters. It makes
sense to keep one instance for several calls for speed reasons.

@len must be even and to get the best performance a product of
2, 3 and 5. To get the next number with this characteristics use
gst_fft_next_fast_length().


</description>
<parameters>
<parameter name="len">
<parameter_description> Length of the FFT in the time domain
</parameter_description>
</parameter>
<parameter name="inverse">
<parameter_description> %TRUE if the #GstFFTS16 instance should be used for the inverse FFT
</parameter_description>
</parameter>
</parameters>
<return> a new #GstFFTS16 instance.
</return>
</function>

<function name="gst_tag_list_is_empty">
<description>
Checks if the given taglist is empty.


</description>
<parameters>
<parameter name="list">
<parameter_description> A #GstTagList.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the taglist is empty, otherwise FALSE.

Since: 0.10.11
</return>
</function>

<function name="gst_rtcp_packet_sdes_first_entry">
<description>
Move to the first SDES entry in the current item.


</description>
<parameters>
<parameter name="packet">
<parameter_description> a valid SDES #GstRTCPPacket
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if there was a first entry.
</return>
</function>

<function name="gst_sdp_media_set_key">
<description>
Adds the encryption information to @media.


</description>
<parameters>
<parameter name="media">
<parameter_description> a #GstSDPMedia
</parameter_description>
</parameter>
<parameter name="type">
<parameter_description> the encryption type
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> the encryption data
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPResult.
</return>
</function>

<function name="gst_task_cleanup_all">
<description>
Wait for all tasks to be stopped. This is mainly used internally
to ensure proper cleanup of internal data structures in test suites.

MT safe.

</description>
<parameters>
</parameters>
<return></return>
</function>

<function name="gst_bus_add_watch">
<description>
Adds a bus watch to the default main context with the default priority.
This function is used to receive asynchronous messages in the main loop.
There can only be a single bus watch per bus, you must remove it before you
can set a new one.

The watch can be removed using g_source_remove() or by returning FALSE
from @func.


</description>
<parameters>
<parameter name="bus">
<parameter_description> a #GstBus to create the watch for
</parameter_description>
</parameter>
<parameter name="func">
<parameter_description> A function to call when a message is received.
</parameter_description>
</parameter>
<parameter name="user_data">
<parameter_description> user data passed to @func.
</parameter_description>
</parameter>
</parameters>
<return> The event source id.

MT safe.
</return>
</function>

<function name="gst_preset_rename_preset">
<description>
Renames a preset. If there is already a preset by the @new_name it will be
overwritten.


</description>
<parameters>
<parameter name="preset">
<parameter_description> a #GObject that implements #GstPreset
</parameter_description>
</parameter>
<parameter name="old_name">
<parameter_description> current preset name
</parameter_description>
</parameter>
<parameter name="new_name">
<parameter_description> new preset name
</parameter_description>
</parameter>
</parameters>
<return> %TRUE for success, %FALSE if e.g. there is no preset with @old_name

Since: 0.10.20
</return>
</function>

<function name="gst_dp_packetizer_new">
<description>
Creates a new packetizer.


</description>
<parameters>
<parameter name="version">
<parameter_description> the #GstDPVersion of the protocol to packetize for.
</parameter_description>
</parameter>
</parameters>
<return> a newly allocated #GstDPPacketizer
</return>
</function>

<function name="gst_index_add_association">
<description>
Associate given format/value pairs with each other.
Be sure to pass gint64 values to this functions varargs,
you might want to use a gint64 cast to be sure.


</description>
<parameters>
<parameter name="index">
<parameter_description> the index to add the entry to
</parameter_description>
</parameter>
<parameter name="id">
<parameter_description> the id of the index writer
</parameter_description>
</parameter>
<parameter name="flags">
<parameter_description> optinal flags for this entry
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> the format of the value
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> the value
</parameter_description>
</parameter>
<parameter name="Varargs">
<parameter_description> other format/value pairs or 0 to end the list
</parameter_description>
</parameter>
</parameters>
<return> a pointer to the newly added entry in the index.
</return>
</function>

<function name="gst_message_parse_warning">
<description>
Extracts the GError and debug string from the GstMessage. The values returned
in the output arguments are copies; the caller must free them when done.

MT safe.

</description>
<parameters>
<parameter name="message">
<parameter_description> A valid #GstMessage of type GST_MESSAGE_WARNING.
</parameter_description>
</parameter>
<parameter name="gerror">
<parameter_description> Location for the GError
</parameter_description>
</parameter>
<parameter name="debug">
<parameter_description> Location for the debug message, or NULL
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_segment_new">
<description>
Allocate a new #GstSegment structure and initialize it using 
gst_segment_init().


</description>
<parameters>
</parameters>
<return> a new #GstSegment, free with gst_segment_free().
</return>
</function>

<function name="gst_version">
<description>
Gets the version number of the GStreamer library.

</description>
<parameters>
<parameter name="major">
<parameter_description> pointer to a guint to store the major version number
</parameter_description>
</parameter>
<parameter name="minor">
<parameter_description> pointer to a guint to store the minor version number
</parameter_description>
</parameter>
<parameter name="micro">
<parameter_description> pointer to a guint to store the micro version number
</parameter_description>
</parameter>
<parameter name="nano">
<parameter_description>  pointer to a guint to store the nano version number
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_set_activate_function">
<description>
Sets the given activate function for @pad. The activate function will
dispatch to gst_pad_activate_push() or gst_pad_activate_pull() to perform
the actual activation. Only makes sense to set on sink pads.

Call this function if your sink pad can start a pull-based task.

</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad.
</parameter_description>
</parameter>
<parameter name="activate">
<parameter_description> the #GstPadActivateFunction to set.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_ring_buffer_clear">
<description>
Clear the given segment of the buffer with silence samples.
This function is used by subclasses.

MT safe.

</description>
<parameters>
<parameter name="buf">
<parameter_description> the #GstRingBuffer to clear
</parameter_description>
</parameter>
<parameter name="segment">
<parameter_description> the segment to clear
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_sdp_message_set_uri">
<description>
Set the URI in @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
<parameter name="uri">
<parameter_description> the URI
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPResult.
</return>
</function>

<function name="gst_pad_event_default">
<description>
Invokes the default event handler for the given pad. End-of-stream and
discontinuity events are handled specially, and then the event is sent to all
pads internally linked to @pad. Note that if there are many possible sink
pads that are internally linked to @pad, only one will be sent an event.
Multi-sinkpad elements should implement custom event handlers.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad to call the default event handler on.
</parameter_description>
</parameter>
<parameter name="event">
<parameter_description> the #GstEvent to handle.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the event was sent succesfully.
</return>
</function>

<function name="gst_pad_set_link_function">
<description>
Sets the given link function for the pad. It will be called when
the pad is linked with another pad.

The return value #GST_PAD_LINK_OK should be used when the connection can be
made.

The return value #GST_PAD_LINK_REFUSED should be used when the connection
cannot be made for some reason.

If @link is installed on a source pad, it should call the #GstPadLinkFunction
of the peer sink pad, if present.

</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad.
</parameter_description>
</parameter>
<parameter name="link">
<parameter_description> the #GstPadLinkFunction to set.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_add_event_probe_full">
<description>
Adds a probe that will be called for all events passing through a pad. See
gst_pad_add_data_probe() for more information.

The @notify function is called when the probe is disconnected and usually
used to free @data.


</description>
<parameters>
<parameter name="pad">
<parameter_description> pad to add the event probe handler to
</parameter_description>
</parameter>
<parameter name="handler">
<parameter_description> function to call when events are passed over pad
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> data to pass along with the handler, or NULL
</parameter_description>
</parameter>
<parameter name="notify">
<parameter_description> function to call when probe is disconnected, or NULL
</parameter_description>
</parameter>
</parameters>
<return> The handler id

Since: 0.10.20
</return>
</function>

<function name="gst_poll_fd_has_error">
<description>
Check if @fd in @set has an error.


</description>
<parameters>
<parameter name="set">
<parameter_description> a file descriptor set.
</parameter_description>
</parameter>
<parameter name="fd">
<parameter_description> a file descriptor.
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the descriptor has an error.

Since: 0.10.18
</return>
</function>

<function name="gst_value_deserialize">
<description>
Tries to deserialize a string into the type specified by the given GValue.
If the operation succeeds, TRUE is returned, FALSE otherwise.


</description>
<parameters>
<parameter name="dest">
<parameter_description> #GValue to fill with contents of deserialization
</parameter_description>
</parameter>
<parameter name="src">
<parameter_description> string to deserialize
</parameter_description>
</parameter>
</parameters>
<return> TRUE on success
</return>
</function>

<function name="gst_tag_list_get_double">
<description>
Copies the contents for the given tag into the value, merging multiple values
into one if multiple values are associated with the tag.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList to get the tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> location for the result
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if a value was copied, FALSE if the tag didn&apos;t exist in the
given list.
</return>
</function>

<function name="gst_data_queue_set_flushing">
<description>
Sets the queue to flushing state if @flushing is #TRUE. If set to flushing
state, any incoming data on the @queue will be discarded. Any call currently
blocking on #gst_data_queue_push or #gst_data_queue_pop will return straight
away with a return value of #FALSE. While the @queue is in flushing state, 
all calls to those two functions will return #FALSE.

MT Safe.

</description>
<parameters>
<parameter name="queue">
<parameter_description> a #GstDataQueue.
</parameter_description>
</parameter>
<parameter name="flushing">
<parameter_description> a #gboolean stating if the queue will be flushing or not.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_ghost_pad_get_target">
<description>
Get the target pad of #gpad. Unref target pad after usage.


</description>
<parameters>
<parameter name="gpad">
<parameter_description> the #GstGhostpad
</parameter_description>
</parameter>
</parameters>
<return> the target #GstPad, can be NULL if the ghostpad
has no target set. Unref target pad after usage.
</return>
</function>

<function name="gst_rtsp_message_new_data">
<description>
Create a new data #GstRTSPMessage with @channel and store the
result message in @msg. 


</description>
<parameters>
<parameter name="msg">
<parameter_description> a location for the new #GstRTSPMessage
</parameter_description>
</parameter>
<parameter name="channel">
<parameter_description> the channel
</parameter_description>
</parameter>
</parameters>
<return> a #GstRTSPResult. Free with gst_rtsp_message_free().
</return>
</function>

<function name="gst_value_can_compare">
<description>
Determines if @value1 and @value2 can be compared.


</description>
<parameters>
<parameter name="value1">
<parameter_description> a value to compare
</parameter_description>
</parameter>
<parameter name="value2">
<parameter_description> another value to compare
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the values can be compared
</return>
</function>

<function name="gst_type_find_factory_call_function">
<description>
Calls the #GstTypeFindFunction associated with this factory.

</description>
<parameters>
<parameter name="factory">
<parameter_description> A #GstTypeFindFactory
</parameter_description>
</parameter>
<parameter name="find">
<parameter_description> A properly setup #GstTypeFind entry. The get_data and suggest_type
members must be set.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="GstLFOControlSource">
<description>
Specifies the offset for the waveform of this #GstLFOControlSource.

It should be given as a #GValue with a type that can be transformed
to the type of the bound property.

</description>
<parameters>
</parameters>
<return></return>
</function>

<function name="gst_sdp_message_get_version">
<description>
Get the version in @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPResult.
</return>
</function>

<function name="gst_audio_clock_reset">
<description>
Inform @clock that future calls to #GstAudioClockGetTimeFunc will return values
starting from @time. The clock will update an internal offset to make sure that
future calls to internal_time will return an increasing result as required by
the #GstClock object.

</description>
<parameters>
<parameter name="clock">
<parameter_description> a #GstAudioClock
</parameter_description>
</parameter>
<parameter name="time">
<parameter_description> a #GstClockTime
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtp_buffer_get_extension_data">
<description>
Get the extension data. @bits will contain the extension 16 bits of custom
data. @data will point to the data in the extension and @wordlen will contain
the length of @data in 32 bits words.

If @buffer did not contain an extension, this function will return %FALSE
with @bits, @data and @wordlen unchanged.


</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer
</parameter_description>
</parameter>
<parameter name="bits">
<parameter_description> location for result bits
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> location for data
</parameter_description>
</parameter>
<parameter name="wordlen">
<parameter_description> location for length of @data in 32 bits words
</parameter_description>
</parameter>
</parameters>
<return> TRUE if @buffer had the extension bit set.

Since: 0.10.15
</return>
</function>

<function name="gst_base_sink_is_async_enabled">
<description>
Checks if @sink is currently configured to perform asynchronous state
changes to PAUSED.


</description>
<parameters>
<parameter name="sink">
<parameter_description> the sink
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the sink is configured to perform asynchronous state
changes.

Since: 0.10.15
</return>
</function>

<function name="gst_rtcp_packet_get_rb">
<description>
Parse the values of the @nth report block in @packet and store the result in
the values.

</description>
<parameters>
<parameter name="packet">
<parameter_description> a valid SR or RR #GstRTCPPacket
</parameter_description>
</parameter>
<parameter name="nth">
<parameter_description> the nth report block in @packet
</parameter_description>
</parameter>
<parameter name="ssrc">
<parameter_description> result for data source being reported
</parameter_description>
</parameter>
<parameter name="fractionlost">
<parameter_description> result for fraction lost since last SR/RR
</parameter_description>
</parameter>
<parameter name="packetslost">
<parameter_description> result for the cumululative number of packets lost
</parameter_description>
</parameter>
<parameter name="exthighestseq">
<parameter_description> result for the extended last sequence number received
</parameter_description>
</parameter>
<parameter name="jitter">
<parameter_description> result for the interarrival jitter
</parameter_description>
</parameter>
<parameter name="lsr">
<parameter_description> result for the last SR packet from this source
</parameter_description>
</parameter>
<parameter name="dlsr">
<parameter_description> result for the delay since last SR packet
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_sdp_media_uninit">
<description>
Free all resources allocated in @media. @media should not be used anymore after
this function. This function should be used when @media was allocated on the
stack and initialized with gst_sdp_media_init().


</description>
<parameters>
<parameter name="media">
<parameter_description> a #GstSDPMedia
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPResult.
</return>
</function>

<function name="gst_caps_is_equal_fixed">
<description>
Tests if two #GstCaps are equal.  This function only works on fixed
#GstCaps.


</description>
<parameters>
<parameter name="caps1">
<parameter_description> the #GstCaps to test
</parameter_description>
</parameter>
<parameter name="caps2">
<parameter_description> the #GstCaps to test
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the arguments represent the same format
</return>
</function>

<function name="gst_index_set_certainty">
<description>
Set the certainty of the given index.

</description>
<parameters>
<parameter name="index">
<parameter_description> the index to set the certainty on
</parameter_description>
</parameter>
<parameter name="certainty">
<parameter_description> the certainty to set
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="unescape_string">
<description>
Decodes escaped characters (i.e. PERCENTxx sequences) in @escaped_string.
Characters are encoded in PERCENTxy form, where xy is the ASCII hex code
for character 16x+y.


</description>
<parameters>
<parameter name="escaped_string">
<parameter_description> an escaped URI, path, or other string
</parameter_description>
</parameter>
<parameter name="illegal_characters">
<parameter_description> a string containing a sequence of characters
considered &quot;illegal&quot;, &apos;\0&apos; is automatically in this list.
</parameter_description>
</parameter>
</parameters>
<return> a newly allocated string with the unescaped equivalents,
or %NULL if @escaped_string contained one of the characters
in @illegal_characters.
</return>
</function>

<function name="gst_rtsp_transport_free">
<description>
Free the memory used by @transport.


</description>
<parameters>
<parameter name="transport">
<parameter_description> a #GstRTSPTransport
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK.
</return>
</function>

<function name="input">
<description>

</description>
<parameters>
</parameters>
<return></return>
</function>

<function name="gst_rtp_buffer_set_ssrc">
<description>
Set the SSRC on the RTP packet in @buffer to @ssrc.

</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer
</parameter_description>
</parameter>
<parameter name="ssrc">
<parameter_description> the new SSRC
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtp_buffer_get_version">
<description>
Get the version number of the RTP packet in @buffer.


</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer
</parameter_description>
</parameter>
</parameters>
<return> The version of @buffer.
</return>
</function>

<function name="gst_video_orientation_set_vcenter">
<description>
Set the vertical centering offset for the given object.

Since: 0.10.11

</description>
<parameters>
<parameter name="video_orientation">
<parameter_description> #GstVideoOrientation interface of a #GstElement
</parameter_description>
</parameter>
<parameter name="center">
<parameter_description> centering offset
</parameter_description>
</parameter>
</parameters>
<return> %TRUE in case the element supports centering
</return>
</function>

<function name="gst_element_abort_state">
<description>
Abort the state change of the element. This function is used
by elements that do asynchronous state changes and find out
something is wrong.

This function should be called with the STATE_LOCK held.

MT safe.

</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement to abort the state of.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_caps_from_string">
<description>
Converts @caps from a string representation.


</description>
<parameters>
<parameter name="string">
<parameter_description> a string to convert to #GstCaps
</parameter_description>
</parameter>
</parameters>
<return> a newly allocated #GstCaps
</return>
</function>

<function name="gst_poll_fd_ctl_read">
<description>
Control whether the descriptor @fd in @set will be monitored for
readability.


</description>
<parameters>
<parameter name="set">
<parameter_description> a file descriptor set.
</parameter_description>
</parameter>
<parameter name="fd">
<parameter_description> a file descriptor.
</parameter_description>
</parameter>
<parameter name="active">
<parameter_description> a new status.
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the descriptor was successfully updated.

Since: 0.10.18
</return>
</function>

<function name="gst_rtsp_connection_receive">
<description>
Attempt to read into @message from the connected @conn, blocking up to
the specified @timeout. @timeout can be #NULL, in which case this function
might block forever.

This function can be cancelled with gst_rtsp_connection_flush().


</description>
<parameters>
<parameter name="conn">
<parameter_description> a #GstRTSPConnection
</parameter_description>
</parameter>
<parameter name="message">
<parameter_description> the message to read
</parameter_description>
</parameter>
<parameter name="timeout">
<parameter_description> a timeout value or #NULL
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK on success.
</return>
</function>

<function name="gst_buffer_is_metadata_writable">
<description>
Similar to gst_buffer_is_writable, but this only ensures that the
refcount of the buffer is 1, indicating that the caller is the sole
owner and can change the buffer metadata, such as caps and timestamps.


</description>
<parameters>
<parameter name="buf">
<parameter_description> a #GstBuffer
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the metadata is writable.
</return>
</function>

<function name="gst_sdp_media_attributes_len">
<description>
Get the number of attribute fields in @media.


</description>
<parameters>
<parameter name="media">
<parameter_description> a #GstSDPMedia
</parameter_description>
</parameter>
</parameters>
<return> the number of attributes in @media.
</return>
</function>

<function name="gst_mixer_record_toggled">
<description>
This function is called by the mixer implementation to produce
a notification message on the bus indicating that the given track
has changed recording state.

This function only works for GstElements that are implementing the
GstMixer interface, and the element needs to have been provided a bus.

</description>
<parameters>
<parameter name="mixer">
<parameter_description> the #GstMixer (a #GstElement) that owns the track
</parameter_description>
</parameter>
<parameter name="track">
<parameter_description> the GstMixerTrack that has changed recording state.
</parameter_description>
</parameter>
<parameter name="record">
<parameter_description> the new state of the record flag on the track
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_element_seek">
<description>
Sends a seek event to an element. See gst_event_new_seek() for the details of
the parameters. The seek event is sent to the element using
gst_element_send_event().


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement to send the event to.
</parameter_description>
</parameter>
<parameter name="rate">
<parameter_description> The new playback rate
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> The format of the seek values
</parameter_description>
</parameter>
<parameter name="flags">
<parameter_description> The optional seek flags.
</parameter_description>
</parameter>
<parameter name="cur_type">
<parameter_description> The type and flags for the new current position
</parameter_description>
</parameter>
<parameter name="cur">
<parameter_description> The value of the new current position
</parameter_description>
</parameter>
<parameter name="stop_type">
<parameter_description> The type and flags for the new stop position
</parameter_description>
</parameter>
<parameter name="stop">
<parameter_description> The value of the new stop position
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the event was handled.

MT safe.
</return>
</function>

<function name="gst_fft_f32_new">
<description>
This returns a new #GstFFTF32 instance with the given parameters. It makes
sense to keep one instance for several calls for speed reasons.

@len must be even and to get the best performance a product of
2, 3 and 5. To get the next number with this characteristics use
gst_fft_next_fast_length().


</description>
<parameters>
<parameter name="len">
<parameter_description> Length of the FFT in the time domain
</parameter_description>
</parameter>
<parameter name="inverse">
<parameter_description> %TRUE if the #GstFFTF32 instance should be used for the inverse FFT
</parameter_description>
</parameter>
</parameters>
<return> a new #GstFFTF32 instance.
</return>
</function>

<function name="gst_alloc_trace_live_all">
<description>
Get the total number of live registered alloc trace objects.


</description>
<parameters>
</parameters>
<return> the total number of live registered alloc trace objects.
</return>
</function>

<function name="gst_pad_chain">
<description>
Chain a buffer to @pad.

The function returns #GST_FLOW_WRONG_STATE if the pad was flushing.

If the caps on @buffer are different from the current caps on @pad, this
function will call any setcaps function (see gst_pad_set_setcaps_function())
installed on @pad. If the new caps are not acceptable for @pad, this
function returns #GST_FLOW_NOT_NEGOTIATED.

The function proceeds calling the chain function installed on @pad (see
gst_pad_set_chain_function()) and the return value of that function is
returned to the caller. #GST_FLOW_NOT_SUPPORTED is returned if @pad has no
chain function.

In all cases, success or failure, the caller loses its reference to @buffer
after calling this function.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a sink #GstPad, returns GST_FLOW_ERROR if not.
</parameter_description>
</parameter>
<parameter name="buffer">
<parameter_description> the #GstBuffer to send, return GST_FLOW_ERROR if not.
</parameter_description>
</parameter>
</parameters>
<return> a #GstFlowReturn from the pad.

MT safe.
</return>
</function>

<function name="gst_byte_reader_peek_int32_be">
<description>
Read a signed 32 bit big endian integer into @val
but keep the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #gint32 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_element_get_pad_from_template">
<description>
Gets a pad from @element described by @templ. If the presence of @templ is
#GST_PAD_REQUEST, requests a new pad. Can return %NULL for #GST_PAD_SOMETIMES
templates.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement.
</parameter_description>
</parameter>
<parameter name="templ">
<parameter_description> a #GstPadTemplate belonging to @element.
</parameter_description>
</parameter>
</parameters>
<return> the #GstPad, or NULL if one could not be found or created.
</return>
</function>

<function name="gst_rtp_buffer_validate">
<description>
Check if the data pointed to by @buffer is a valid RTP packet using
gst_rtp_buffer_validate_data().
Use this function to validate a packet before using the other functions in
this module.


</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer to validate
</parameter_description>
</parameter>
</parameters>
<return> TRUE if @buffer is a valid RTP packet.
</return>
</function>

<function name="gst_registry_lookup_feature">
<description>
Find a #GstPluginFeature with @name in @registry.


</description>
<parameters>
<parameter name="registry">
<parameter_description> a #GstRegistry
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> a #GstPluginFeature name
</parameter_description>
</parameter>
</parameters>
<return> a #GstPluginFeature with its refcount incremented, use
gst_object_unref() after usage.

MT safe.
</return>
</function>

<function name="gst_rtsp_message_get_body">
<description>
Get the body of @msg. @data remains valid for as long as @msg is valid and
unchanged.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstRTSPMessage
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> location for the data
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> location for the size of @data
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK.
</return>
</function>

<function name="gst_element_factory_get_klass">
<description>
Gets the class for this factory.


</description>
<parameters>
<parameter name="factory">
<parameter_description> a #GstElementFactory
</parameter_description>
</parameter>
</parameters>
<return> the class
</return>
</function>

<function name="gst_rtsp_message_free">
<description>
Free the memory used by @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstRTSPMessage
</parameter_description>
</parameter>
</parameters>
<return> a #GstRTSPResult.
</return>
</function>

<function name="gst_base_sink_set_max_lateness">
<description>
Sets the new max lateness value to @max_lateness. This value is
used to decide if a buffer should be dropped or not based on the
buffer timestamp and the current clock time. A value of -1 means
an unlimited time.

Since: 0.10.4

</description>
<parameters>
<parameter name="sink">
<parameter_description> the sink
</parameter_description>
</parameter>
<parameter name="max_lateness">
<parameter_description> the new max lateness value.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_dp_init">
<description>
Initialize GStreamer Data Protocol library.

Should be called before using these functions from source linking
to this source file.

</description>
<parameters>
</parameters>
<return></return>
</function>

<function name="gst_value_set_fourcc">
<description>
Sets @value to @fourcc.

</description>
<parameters>
<parameter name="value">
<parameter_description> a GValue initialized to #GST_TYPE_FOURCC
</parameter_description>
</parameter>
<parameter name="fourcc">
<parameter_description> the #guint32 fourcc to set
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_print_pad_caps">
<description>
Write the pad capabilities in a human readable format into
the given GString.

</description>
<parameters>
<parameter name="buf">
<parameter_description> the buffer to print the caps in
</parameter_description>
</parameter>
<parameter name="indent">
<parameter_description> initial indentation
</parameter_description>
</parameter>
<parameter name="pad">
<parameter_description> the pad to print the caps from
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_sdp_message_get_media">
<description>
Get the media description at index @idx in @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
<parameter name="idx">
<parameter_description> the index
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPMedia.
</return>
</function>

<function name="gst_rtcp_packet_sdes_get_ssrc">
<description>
Get the SSRC of the current SDES item.


</description>
<parameters>
<parameter name="packet">
<parameter_description> a valid SDES #GstRTCPPacket
</parameter_description>
</parameter>
</parameters>
<return> the SSRC of the current item.
</return>
</function>

<function name="gst_uri_handler_set_uri">
<description>
Tries to set the URI of the given handler.


</description>
<parameters>
<parameter name="handler">
<parameter_description> A #GstURIHandler
</parameter_description>
</parameter>
<parameter name="uri">
<parameter_description> URI to set
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the URI was set successfully, else FALSE.
</return>
</function>

<function name="gst_registry_plugin_filter">
<description>
Runs a filter against all plugins in the registry and returns a #GList with
the results. If the first flag is set, only the first match is
returned (as a list with a single object).
Every plugin is reffed; use gst_plugin_list_free() after use, which
will unref again.


</description>
<parameters>
<parameter name="registry">
<parameter_description> registry to query
</parameter_description>
</parameter>
<parameter name="filter">
<parameter_description> the filter to use
</parameter_description>
</parameter>
<parameter name="first">
<parameter_description> only return first match
</parameter_description>
</parameter>
<parameter name="user_data">
<parameter_description> user data passed to the filter function
</parameter_description>
</parameter>
</parameters>
<return> a #GList of #GstPlugin. Use gst_plugin_list_free() after usage.

MT safe.
</return>
</function>

<function name="gst_interpolation_control_source_set_interpolation_mode">
<description>
Sets the given interpolation mode.

&amp;lt;note&amp;gt;&amp;lt;para&amp;gt;User interpolation is not yet available and quadratic interpolation
is deprecated and maps to cubic interpolation.&amp;lt;/para&amp;gt;&amp;lt;/note&amp;gt;


</description>
<parameters>
<parameter name="self">
<parameter_description> the #GstInterpolationControlSource object
</parameter_description>
</parameter>
<parameter name="mode">
<parameter_description> interpolation mode
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the interpolation mode could be set, %FALSE otherwise
</return>
</function>

<function name="gst_structure_set_valist">
<description>
va_list form of gst_structure_set().

</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="fieldname">
<parameter_description> the name of the field to set
</parameter_description>
</parameter>
<parameter name="varargs">
<parameter_description> variable arguments
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_query_set_latency">
<description>
Answer a latency query by setting the requested values in the given format.

Since: 0.10.12

</description>
<parameters>
<parameter name="query">
<parameter_description> a #GstQuery
</parameter_description>
</parameter>
<parameter name="live">
<parameter_description> if there is a live element upstream
</parameter_description>
</parameter>
<parameter name="min_latency">
<parameter_description> the minimal latency of the live element
</parameter_description>
</parameter>
<parameter name="max_latency">
<parameter_description> the maximal latency of the live element
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_index_set_resolver_full">
<description>
Lets the app register a custom function to map index
ids to writer descriptions.

Since: 0.10.18

</description>
<parameters>
<parameter name="index">
<parameter_description> the index to register the resolver on
</parameter_description>
</parameter>
<parameter name="resolver">
<parameter_description> the resolver to register
</parameter_description>
</parameter>
<parameter name="user_data">
<parameter_description> data passed to the resolver function
</parameter_description>
</parameter>
<parameter name="user_data_destroy">
<parameter_description> destroy function for @user_data
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_caps_is_fixed">
<description>
Fixed #GstCaps describe exactly one format, that is, they have exactly
one structure, and each field in the structure describes a fixed type.
Examples of non-fixed types are GST_TYPE_INT_RANGE and GST_TYPE_LIST.


</description>
<parameters>
<parameter name="caps">
<parameter_description> the #GstCaps to test
</parameter_description>
</parameter>
</parameters>
<return> TRUE if @caps is fixed
</return>
</function>

<function name="gst_x_overlay_expose">
<description>
Tell an overlay that it has been exposed. This will redraw the current frame
in the drawable even if the pipeline is PAUSED.

</description>
<parameters>
<parameter name="overlay">
<parameter_description> a #GstXOverlay to expose.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_value_list_concat">
<description>
Concatenates copies of @value1 and @value2 into a list.  Values that are not
of type #GST_TYPE_LIST are treated as if they were lists of length 1.
@dest will be initialized to the type #GST_TYPE_LIST.

</description>
<parameters>
<parameter name="dest">
<parameter_description> an uninitialized #GValue to take the result
</parameter_description>
</parameter>
<parameter name="value1">
<parameter_description> a #GValue
</parameter_description>
</parameter>
<parameter name="value2">
<parameter_description> a #GValue
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_system_clock_obtain">
<description>
Get a handle to the default system clock. The refcount of the
clock will be increased so you need to unref the clock after
usage.


</description>
<parameters>
</parameters>
<return> the default clock.

MT safe.
</return>
</function>

<function name="gst_controller_remove_properties_valist">
<description>
Removes the given object properties from the controller


</description>
<parameters>
<parameter name="self">
<parameter_description> the controller object from which some properties should be removed
</parameter_description>
</parameter>
<parameter name="var_args">
<parameter_description> %NULL terminated list of property names that should be removed
</parameter_description>
</parameter>
</parameters>
<return> %FALSE if one of the given property isn&apos;t handled by the controller, %TRUE otherwise
</return>
</function>

<function name="gst_byte_reader_get_float32_be">
<description>
Read a 32 bit big endian integer into @val
and update the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #gfloat to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_mixer_get_option">
<description>
Get the current value of a name/value option in the mixer.


</description>
<parameters>
<parameter name="mixer">
<parameter_description> The #GstMixer (a #GstElement) that owns the optionlist.
</parameter_description>
</parameter>
<parameter name="opts">
<parameter_description> The #GstMixerOptions that we operate on.
</parameter_description>
</parameter>
</parameters>
<return> current value of the name/value option.
</return>
</function>

<function name="gst_dp_caps_from_packet">
<description>
Creates a newly allocated #GstCaps from the given packet.

This function does not check the arguments passed to it, use
gst_dp_validate_packet() first if the header and payload data are
unchecked.


</description>
<parameters>
<parameter name="header_length">
<parameter_description> the length of the packet header
</parameter_description>
</parameter>
<parameter name="header">
<parameter_description> the byte array of the packet header
</parameter_description>
</parameter>
<parameter name="payload">
<parameter_description> the byte array of the packet payload
</parameter_description>
</parameter>
</parameters>
<return> A #GstCaps containing the caps represented in the packet,
or NULL if the packet could not be converted.
</return>
</function>

<function name="gst_base_src_get_blocksize">
<description>
Get the number of bytes that @src will push out with each buffer.


</description>
<parameters>
<parameter name="src">
<parameter_description> the source
</parameter_description>
</parameter>
</parameters>
<return> the number of bytes pushed with each buffer.

Since: 0.10.22
</return>
</function>

<function name="gst_type_find_helper_for_buffer">
<description>
Tries to find what type of data is contained in the given #GstBuffer, the
assumption being that the buffer represents the beginning of the stream or
file.

All available typefinders will be called on the data in order of rank. If
a typefinding function returns a probability of #GST_TYPE_FIND_MAXIMUM,
typefinding is stopped immediately and the found caps will be returned
right away. Otherwise, all available typefind functions will the tried,
and the caps with the highest probability will be returned, or #NULL if
the content of the buffer could not be identified.


</description>
<parameters>
<parameter name="obj">
<parameter_description> object doing the typefinding, or NULL (used for logging)
</parameter_description>
</parameter>
<parameter name="buf">
<parameter_description> a #GstBuffer with data to typefind
</parameter_description>
</parameter>
<parameter name="prob">
<parameter_description> location to store the probability of the found caps, or #NULL
</parameter_description>
</parameter>
</parameters>
<return> The #GstCaps corresponding to the data, or #NULL if no type could
be found. The caller should free the caps returned with gst_caps_unref().
</return>
</function>

<function name="gst_element_remove_pad">
<description>
Removes @pad from @element. @pad will be destroyed if it has not been
referenced elsewhere using gst_object_unparent().

This function is used by plugin developers and should not be used
by applications. Pads that were dynamically requested from elements
with gst_element_get_request_pad() should be released with the
gst_element_release_request_pad() function instead.

Pads are not automatically deactivated so elements should perform the needed
steps to deactivate the pad in case this pad is removed in the PAUSED or
PLAYING state. See gst_pad_set_active() for more information about
deactivating pads.

The pad and the element should be unlocked when calling this function.

This function will emit the #GstElement::pad-removed signal on the element.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement to remove pad from.
</parameter_description>
</parameter>
<parameter name="pad">
<parameter_description> the #GstPad to remove from the element.
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the pad could be removed. Can return %FALSE if the
pad does not belong to the provided element.

MT safe.
</return>
</function>

<function name="gst_byte_reader_get_uint64_le">
<description>
Read an unsigned 64 bit little endian integer into @val
and update the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #guint64 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_element_class_get_pad_template_list">
<description>
Retrieves a list of the pad templates associated with @element_class. The
list must not be modified by the calling code.
&amp;lt;note&amp;gt;If you use this function in the #GInstanceInitFunc of an object class
that has subclasses, make sure to pass the g_class parameter of the
#GInstanceInitFunc here.&amp;lt;/note&amp;gt;


</description>
<parameters>
<parameter name="element_class">
<parameter_description> a #GstElementClass to get pad templates of.
</parameter_description>
</parameter>
</parameters>
<return> the #GList of padtemplates.
</return>
</function>

<function name="gst_message_parse_duration">
<description>
Extracts the duration and format from the duration message. The duration
might be GST_CLOCK_TIME_NONE, which indicates that the duration has
changed. Applications should always use a query to retrieve the duration
of a pipeline.

MT safe.

</description>
<parameters>
<parameter name="message">
<parameter_description> A valid #GstMessage of type GST_MESSAGE_DURATION.
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> Result location for the format, or NULL
</parameter_description>
</parameter>
<parameter name="duration">
<parameter_description> Result location for the duration, or NULL
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_template_new">
<description>
Creates a new pad template with a name according to the given template
and with the given arguments. This functions takes ownership of the provided
caps, so be sure to not use them afterwards.


</description>
<parameters>
<parameter name="name_template">
<parameter_description> the name template.
</parameter_description>
</parameter>
<parameter name="direction">
<parameter_description> the #GstPadDirection of the template.
</parameter_description>
</parameter>
<parameter name="presence">
<parameter_description> the #GstPadPresence of the pad.
</parameter_description>
</parameter>
<parameter name="caps">
<parameter_description> a #GstCaps set for the template. The caps are taken ownership of.
</parameter_description>
</parameter>
</parameters>
<return> a new #GstPadTemplate.
</return>
</function>

<function name="gst_data_queue_push">
<description>
Pushes a #GstDataQueueItem (or a structure that begins with the same fields)
on the @queue. If the @queue is full, the call will block until space is
available, OR the @queue is set to flushing state.
MT safe.

Note that this function has slightly different semantics than gst_pad_push()
and gst_pad_push_event(): this function only takes ownership of @item and
the #GstMiniObject contained in @item if the push was successful. If FALSE
is returned, the caller is responsible for freeing @item and its contents.


</description>
<parameters>
<parameter name="queue">
<parameter_description> a #GstDataQueue.
</parameter_description>
</parameter>
<parameter name="item">
<parameter_description> a #GstDataQueueItem.
</parameter_description>
</parameter>
</parameters>
<return> #TRUE if the @item was successfully pushed on the @queue.
</return>
</function>

<function name="gst_pad_query_peer_convert">
<description>
Queries the peer pad of a given sink pad to convert @src_val in @src_format
to @dest_format.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad, on whose peer pad to invoke the convert query on.
Must be a sink pad.
</parameter_description>
</parameter>
<parameter name="src_format">
<parameter_description> a #GstFormat to convert from.
</parameter_description>
</parameter>
<parameter name="src_val">
<parameter_description> a value to convert.
</parameter_description>
</parameter>
<parameter name="dest_format">
<parameter_description> a pointer to the #GstFormat to convert to.
</parameter_description>
</parameter>
<parameter name="dest_val">
<parameter_description> a pointer to the result.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the query could be performed.
</return>
</function>

<function name="gst_clock_id_wait_async">
<description>
Register a callback on the given #GstClockID @id with the given
function and user_data. When passing a #GstClockID with an invalid
time to this function, the callback will be called immediately
with  a time set to GST_CLOCK_TIME_NONE. The callback will
be called when the time of @id has been reached.


</description>
<parameters>
<parameter name="id">
<parameter_description> a #GstClockID to wait on
</parameter_description>
</parameter>
<parameter name="func">
<parameter_description> The callback function
</parameter_description>
</parameter>
<parameter name="user_data">
<parameter_description> User data passed in the callback
</parameter_description>
</parameter>
</parameters>
<return> the result of the non blocking wait.

MT safe.
</return>
</function>

<function name="gst_param_spec_mini_object">
<description>
Creates a new #GParamSpec instance that hold #GstMiniObject references.


</description>
<parameters>
<parameter name="name">
<parameter_description> the canonical name of the property
</parameter_description>
</parameter>
<parameter name="nick">
<parameter_description> the nickname of the property
</parameter_description>
</parameter>
<parameter name="blurb">
<parameter_description> a short description of the property
</parameter_description>
</parameter>
<parameter name="object_type">
<parameter_description> the #GstMiniObjectType for the property
</parameter_description>
</parameter>
<parameter name="flags">
<parameter_description> a combination of #GParamFlags
</parameter_description>
</parameter>
</parameters>
<return> a newly allocated #GParamSpec instance
</return>
</function>

<function name="gst_tag_list_get_uchar_index">
<description>
Gets the value that is at the given index for the given tag in the given
list.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList to get the tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
<parameter name="index">
<parameter_description> number of entry to read out
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> location for the result
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if a value was copied, FALSE if the tag didn&apos;t exist in the
given list.
</return>
</function>

<function name="gst_element_default_error">
<description>
A default error signal callback to attach to an element.
The user data passed to the g_signal_connect is ignored.

The default handler will simply print the error string using g_print.

MT safe.

</description>
<parameters>
<parameter name="object">
<parameter_description> a #GObject that signalled the error.
</parameter_description>
</parameter>
<parameter name="orig">
<parameter_description> the #GstObject that initiated the error.
</parameter_description>
</parameter>
<parameter name="error">
<parameter_description> the GError.
</parameter_description>
</parameter>
<parameter name="debug">
<parameter_description> an additional debug information string, or %NULL.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_tuner_frequency_changed">
<description>
Called by elements implementing the #GstTuner interface when the
configured frequency changes. Fires the #GstTuner::frequency-changed
signal on the tuner, and the #GstTunerChannel::frequency-changed signal
on the channel.

</description>
<parameters>
<parameter name="tuner">
<parameter_description> A #GstTuner instance
</parameter_description>
</parameter>
<parameter name="channel">
<parameter_description> The current #GstTunerChannel
</parameter_description>
</parameter>
<parameter name="frequency">
<parameter_description> The new frequency setting
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_new_from_template">
<description>
Creates a new pad with the given name from the given template.
If name is NULL, a guaranteed unique name (across all pads)
will be assigned.
This function makes a copy of the name so you can safely free the name.


</description>
<parameters>
<parameter name="templ">
<parameter_description> the pad template to use
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> the name of the element
</parameter_description>
</parameter>
</parameters>
<return> a new #GstPad, or NULL in case of an error.
</return>
</function>

<function name="gst_rtcp_packet_bye_add_ssrc">
<description>
Add @ssrc to the BYE @packet.


</description>
<parameters>
<parameter name="packet">
<parameter_description> a valid BYE #GstRTCPPacket
</parameter_description>
</parameter>
<parameter name="ssrc">
<parameter_description> an SSRC to add
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the ssrc was added. This function can return %FALSE if
the max MTU is exceeded or the number of sources blocks is greater than
#GST_RTCP_MAX_BYE_SSRC_COUNT.
</return>
</function>

<function name="gst_tuner_set_channel">
<description>
Tunes the object to the given channel.

</description>
<parameters>
<parameter name="tuner">
<parameter_description> the #GstTuner (a #GstElement) that owns the channel.
</parameter_description>
</parameter>
<parameter name="channel">
<parameter_description> the channel to tune to.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_caps_ref">
<description>
Add a reference to a #GstCaps object.

From this point on, until the caller calls gst_caps_unref() or
gst_caps_make_writable(), it is guaranteed that the caps object will not
change. This means its structures won&apos;t change, etc. To use a #GstCaps
object, you must always have a refcount on it -- either the one made
implicitly by gst_caps_new(), or via taking one explicitly with this
function.


</description>
<parameters>
<parameter name="caps">
<parameter_description> the #GstCaps to reference
</parameter_description>
</parameter>
</parameters>
<return> the same #GstCaps object.
</return>
</function>

<function name="gst_buffer_is_span_fast">
<description>
Determines whether a gst_buffer_span() can be done without copying
the contents, that is, whether the data areas are contiguous sub-buffers of 
the same buffer.

MT safe.

</description>
<parameters>
<parameter name="buf1">
<parameter_description> the first #GstBuffer.
</parameter_description>
</parameter>
<parameter name="buf2">
<parameter_description> the second #GstBuffer.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the buffers are contiguous,
FALSE if a copy would be required.
</return>
</function>

<function name="gst_tuner_get_norm">
<description>
Get the current video norm from the given tuner object for the
currently selected channel.


</description>
<parameters>
<parameter name="tuner">
<parameter_description> the #GstTuner (a #GstElement) to get the current norm from.
</parameter_description>
</parameter>
</parameters>
<return> the current norm.
</return>
</function>

<function name="gst_bus_remove_signal_watch">
<description>
Removes a signal watch previously added with gst_bus_add_signal_watch().

MT safe.

</description>
<parameters>
<parameter name="bus">
<parameter_description> a #GstBus you previously added a signal watch to
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_install_plugins_context_free">
<description>
Frees a #GstInstallPluginsContext.

Since: 0.10.12

</description>
<parameters>
<parameter name="ctx">
<parameter_description> a #GstInstallPluginsContext
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtsp_message_init_request">
<description>
Initialize @msg as a request message with @method and @uri. To clear @msg
again, use gst_rtsp_message_unset().


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstRTSPMessage
</parameter_description>
</parameter>
<parameter name="method">
<parameter_description> the request method to use
</parameter_description>
</parameter>
<parameter name="uri">
<parameter_description> the uri of the request
</parameter_description>
</parameter>
</parameters>
<return> a #GstRTSPResult.
</return>
</function>

<function name="gst_element_class_set_details_simple">
<description>
Sets the detailed information for a #GstElementClass. Simpler version of 
gst_element_class_set_details() that generates less linker overhead.
&amp;lt;note&amp;gt;This function is for use in _base_init functions only.&amp;lt;/note&amp;gt;

The detail parameter strings are copied into the #GstElementDetails for
the element class.

Since: 0.10.14

</description>
<parameters>
<parameter name="klass">
<parameter_description> class to set details for
</parameter_description>
</parameter>
<parameter name="longname">
<parameter_description> The long English name of the element. E.g. &quot;File Sink&quot;
</parameter_description>
</parameter>
<parameter name="classification">
<parameter_description> String describing the type of element, as an unordered list
separated with slashes (&apos;/&apos;). See draft-klass.txt of the design docs
for more details and common types. E.g: &quot;Sink/File&quot;
</parameter_description>
</parameter>
<parameter name="description">
<parameter_description> Sentence describing the purpose of the element. 
E.g: &quot;Write stream to a file&quot;
</parameter_description>
</parameter>
<parameter name="author">
<parameter_description> Name and contact details of the author(s). Use \n to separate 
multiple author details. E.g: &quot;Joe Bloggs &amp;lt;joe.blogs at foo.com&amp;gt;&quot;
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_sdp_message_free">
<description>
Free all resources allocated by @msg. @msg should not be used anymore after
this function. This function should be used when @msg was dynamically
allocated with gst_sdp_message_new().


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPResult.
</return>
</function>

<function name="gst_flow_get_name">
<description>
Gets a string representing the given flow return.


</description>
<parameters>
<parameter name="ret">
<parameter_description> a #GstFlowReturn to get the name of.
</parameter_description>
</parameter>
</parameters>
<return> a static string with the name of the flow return.
</return>
</function>

<function name="gst_segtrap_is_enabled">
<description>
Some functions in the GStreamer core might install a custom SIGSEGV handler
to better catch and report errors to the application. Currently this feature
is enabled by default when loading plugins.

Applications might want to disable this behaviour with the
gst_segtrap_set_enabled() function. This is typically done if the application
wants to install its own handler without GStreamer interfering.


</description>
<parameters>
</parameters>
<return> %TRUE if GStreamer is allowed to install a custom SIGSEGV handler.

Since: 0.10.10
</return>
</function>

<function name="gst_pad_peer_accept_caps">
<description>
Check if the peer of @pad accepts @caps. If @pad has no peer, this function
Returns: TRUE if the peer of @pad can accept the caps or @pad has no peer.

</description>
<parameters>
<parameter name="pad">
<parameter_description> a  #GstPad to check the peer of
</parameter_description>
</parameter>
<parameter name="caps">
<parameter_description> a #GstCaps to check on the pad
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the peer of @pad can accept the caps or @pad has no peer.
</return>
</function>

<function name="gst_missing_decoder_installer_detail_new">
<description>
Returns: a newly-allocated detail string, or NULL on error. Free string

</description>
<parameters>
<parameter name="decode_caps">
<parameter_description> the (fixed) caps for which a decoder element is needed
</parameter_description>
</parameter>
</parameters>
<return> a newly-allocated detail string, or NULL on error. Free string
with g_free() when not needed any longer.

Since: 0.10.15
</return>
</function>

<function name="gst_tag_list_get_int64_index">
<description>
Gets the value that is at the given index for the given tag in the given
list.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList to get the tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
<parameter name="index">
<parameter_description> number of entry to read out
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> location for the result
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if a value was copied, FALSE if the tag didn&apos;t exist in the
given list.
</return>
</function>

<function name="gst_caps_set_simple">
<description>
Sets fields in a simple #GstCaps.  A simple #GstCaps is one that
only has one structure.  The arguments must be passed in the same
manner as gst_structure_set(), and be NULL-terminated.

</description>
<parameters>
<parameter name="caps">
<parameter_description> the #GstCaps to set
</parameter_description>
</parameter>
<parameter name="field">
<parameter_description> first field to set
</parameter_description>
</parameter>
<parameter name="Varargs">
<parameter_description> additional parameters
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_sdp_message_add_media">
<description>
Adds @media to the array of medias in @msg. This function takes ownership of
the contents of @media so that @media will have to be reinitialized with
gst_media_init() before it can be used again.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
<parameter name="media">
<parameter_description> a #GstSDPMedia to add
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPResult.
</return>
</function>

<function name="gst_child_proxy_get">
<description>
Gets properties of the parent object and its children.

</description>
<parameters>
<parameter name="object">
<parameter_description> the parent object
</parameter_description>
</parameter>
<parameter name="first_property_name">
<parameter_description> name of the first property to get
</parameter_description>
</parameter>
<parameter name="Varargs">
<parameter_description> return location for the first property, followed optionally by more name/return location pairs, followed by NULL
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_query_duration">
<description>
Queries a pad for the total stream duration.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad to invoke the duration query on.
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> a pointer to the #GstFormat asked for.
On return contains the #GstFormat used.
</parameter_description>
</parameter>
<parameter name="duration">
<parameter_description> A location in which to store the total duration, or NULL.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the query could be performed.
</return>
</function>

<function name="gst_sdp_media_add_format">
<description>
Add the format information to @media.


</description>
<parameters>
<parameter name="media">
<parameter_description> a #GstSDPMedia
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> the format
</parameter_description>
</parameter>
</parameters>
<return> #GST_SDP_OK.
</return>
</function>

<function name="gst_caps_copy">
<description>
Creates a new #GstCaps as a copy of the old @caps. The new caps will have a
refcount of 1, owned by the caller. The structures are copied as well.

Note that this function is the semantic equivalent of a gst_caps_ref()
followed by a gst_caps_make_writable(). If you only want to hold on to a
reference to the data, you should use gst_caps_ref().

When you are finished with the caps, call gst_caps_unref() on it.


</description>
<parameters>
<parameter name="caps">
<parameter_description> the #GstCaps to copy
</parameter_description>
</parameter>
</parameters>
<return> the new #GstCaps
</return>
</function>

<function name="gst_byte_reader_peek_uint64_le">
<description>
Read a signed 64 bit little endian integer into @val
but keep the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #guint64 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_data_queue_drop_head">
<description>
Pop and unref the head-most #GstMiniObject with the given #GType.


</description>
<parameters>
<parameter name="queue">
<parameter_description> The #GstDataQueue to drop an item from.
</parameter_description>
</parameter>
<parameter name="type">
<parameter_description> The #GType of the item to drop.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if an element was removed.
</return>
</function>

<function name="gst_plugin_feature_type_name_filter">
<description>
Compares type and name of plugin feature. Can be used with gst_filter_run().


</description>
<parameters>
<parameter name="feature">
<parameter_description> the #GstPluginFeature
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> the type and name to check against
</parameter_description>
</parameter>
</parameters>
<return> TRUE if equal.
</return>
</function>

<function name="gst_tag_list_get_uint64">
<description>
Copies the contents for the given tag into the value, merging multiple values
into one if multiple values are associated with the tag.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList to get the tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> location for the result
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if a value was copied, FALSE if the tag didn&apos;t exist in the
given list.
</return>
</function>

<function name="gst_query_set_buffering_percent">
<description>
Set the percentage of buffered data. This is a value between 0 and 100.
The @busy indicator is %TRUE when the buffering is in progress.

Since: 0.10.20

</description>
<parameters>
<parameter name="query">
<parameter_description> A valid #GstQuery of type GST_QUERY_BUFFERING.
</parameter_description>
</parameter>
<parameter name="busy">
<parameter_description> if buffering is busy
</parameter_description>
</parameter>
<parameter name="percent">
<parameter_description> a buffering percent
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtsp_connection_read_internal">
<description>
Attempt to read @size bytes into @data from the connected @conn, blocking up to
the specified @timeout. @timeout can be #NULL, in which case this function
might block forever.

This function can be cancelled with gst_rtsp_connection_flush() only if
@allow_interrupt is set.


</description>
<parameters>
<parameter name="conn">
<parameter_description> a #GstRTSPConnection
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> the data to read
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> the size of @data
</parameter_description>
</parameter>
<parameter name="timeout">
<parameter_description> a timeout value or #NULL
</parameter_description>
</parameter>
<parameter name="allow_interrupt">
<parameter_description> can the pending read be interrupted
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK on success.
</return>
</function>

<function name="gst_value_list_get_value">
<description>
Gets the value that is a member of the list contained in @value and
has the index @index.


</description>
<parameters>
<parameter name="value">
<parameter_description> a #GValue of type #GST_TYPE_LIST
</parameter_description>
</parameter>
<parameter name="index">
<parameter_description> index of value to get from the list
</parameter_description>
</parameter>
</parameters>
<return> the value at the given index
</return>
</function>

<function name="gst_debug_category_get_color">
<description>
Returns: the color of the category.

</description>
<parameters>
<parameter name="category">
<parameter_description> a #GstDebugCategory to get the color of.
</parameter_description>
</parameter>
</parameters>
<return> the color of the category.
</return>
</function>

<function name="gst_child_proxy_get_child_by_name">
<description>
Looks up a child element by the given name.

Implementors can use #GstObject together with gst_object_get_name()


</description>
<parameters>
<parameter name="parent">
<parameter_description> the parent object to get the child from
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> the childs name
</parameter_description>
</parameter>
</parameters>
<return> the child object or %NULL if not found. Unref after usage.

MT safe.
</return>
</function>

<function name="gst_bin_iterate_sinks">
<description>
Gets an iterator for all elements in the bin that have the
#GST_ELEMENT_IS_SINK flag set.

Each element yielded by the iterator will have its refcount increased, so
unref after use.

MT safe.  Caller owns returned value.


</description>
<parameters>
<parameter name="bin">
<parameter_description> a #GstBin
</parameter_description>
</parameter>
</parameters>
<return> a #GstIterator of #GstElement, or NULL
</return>
</function>

<function name="gst_bus_poll">
<description>
Poll the bus for messages. Will block while waiting for messages to come.
You can specify a maximum time to poll with the @timeout parameter. If
@timeout is negative, this function will block indefinitely.

All messages not in @events will be popped off the bus and will be ignored.

Because poll is implemented using the &quot;message&quot; signal enabled by
gst_bus_add_signal_watch(), calling gst_bus_poll() will cause the &quot;message&quot;
signal to be emitted for every message that poll sees. Thus a &quot;message&quot;
signal handler will see the same messages that this function sees -- neither
will steal messages from the other.

This function will run a main loop from the default main context when
polling.

You should never use this function, since it is pure evil. This is
especially true for GUI applications based on Gtk+ or Qt, but also for any
other non-trivial application that uses the GLib main loop. As this function
runs a GLib main loop, any callback attached to the default GLib main
context may be invoked. This could be timeouts, GUI events, I/O events etc.;
even if gst_bus_poll() is called with a 0 timeout. Any of these callbacks
may do things you do not expect, e.g. destroy the main application window or
some other resource; change other application state; display a dialog and
run another main loop until the user clicks it away. In short, using this
function may add a lot of complexity to your code through unexpected
re-entrancy and unexpected changes to your application&apos;s state.

For 0 timeouts use gst_bus_pop_filtered() instead of this function; for
other short timeouts use gst_bus_timed_pop_filtered(); everything else is
better handled by setting up an asynchronous bus watch and doing things
from there.


</description>
<parameters>
<parameter name="bus">
<parameter_description> a #GstBus
</parameter_description>
</parameter>
<parameter name="events">
<parameter_description> a mask of #GstMessageType, representing the set of message types to
poll for.
</parameter_description>
</parameter>
<parameter name="timeout">
<parameter_description> the poll timeout, as a #GstClockTimeDiff, or -1 to poll
indefinitely.
</parameter_description>
</parameter>
</parameters>
<return> The message that was received, or NULL if the poll timed out.
The message is taken from the bus and needs to be unreffed with
gst_message_unref() after usage.
</return>
</function>

<function name="gst_clock_set_resolution">
<description>
Set the accuracy of the clock. Some clocks have the possibility to operate
with different accuracy at the expense of more resource usage. There is
normally no need to change the default resolution of a clock. The resolution
of a clock can only be changed if the clock has the
#GST_CLOCK_FLAG_CAN_SET_RESOLUTION flag set.


</description>
<parameters>
<parameter name="clock">
<parameter_description> a #GstClock
</parameter_description>
</parameter>
<parameter name="resolution">
<parameter_description> The resolution to set
</parameter_description>
</parameter>
</parameters>
<return> the new resolution of the clock.
</return>
</function>

<function name="gst_child_proxy_set">
<description>
Sets properties of the parent object and its children.

</description>
<parameters>
<parameter name="object">
<parameter_description> the parent object
</parameter_description>
</parameter>
<parameter name="first_property_name">
<parameter_description> name of the first property to set
</parameter_description>
</parameter>
<parameter name="Varargs">
<parameter_description> value for the first property, followed optionally by more name/value pairs, followed by NULL
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_element_factory_get_description">
<description>
Gets the description for this factory.


</description>
<parameters>
<parameter name="factory">
<parameter_description> a #GstElementFactory
</parameter_description>
</parameter>
</parameters>
<return> the description
</return>
</function>

<function name="gst_object_get_name_prefix">
<description>
Returns: the name prefix of @object. g_free() after usage.

</description>
<parameters>
<parameter name="object">
<parameter_description> a #GstObject
</parameter_description>
</parameter>
</parameters>
<return> the name prefix of @object. g_free() after usage.

MT safe. This function grabs and releases @object&apos;s LOCK.
</return>
</function>

<function name="gst_debug_set_colored">
<description>
Sets or unsets the use of coloured debugging output.

</description>
<parameters>
<parameter name="colored">
<parameter_description> Whether to use colored output or not
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_object_set_controller">
<description>
Sets the controller on the given GObject


</description>
<parameters>
<parameter name="object">
<parameter_description> the object that should get the controller
</parameter_description>
</parameter>
<parameter name="controller">
<parameter_description> the controller object to plug in
</parameter_description>
</parameter>
</parameters>
<return> %FALSE if the GObject already has an controller, %TRUE otherwise
Since: 0.9
</return>
</function>

<function name="gst_element_query_position">
<description>
Queries an element for the stream position.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement to invoke the position query on.
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> a pointer to the #GstFormat asked for.
On return contains the #GstFormat used.
</parameter_description>
</parameter>
<parameter name="cur">
<parameter_description> A location in which to store the current position, or NULL.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the query could be performed.
</return>
</function>

<function name="gst_event_new_new_segment">
<description>
Allocate a new newsegment event with the given format/values tripplets

This method calls gst_event_new_new_segment_full() passing a default
value of 1.0 for applied_rate


</description>
<parameters>
<parameter name="update">
<parameter_description> is this segment an update to a previous one
</parameter_description>
</parameter>
<parameter name="rate">
<parameter_description> a new rate for playback
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> The format of the segment values
</parameter_description>
</parameter>
<parameter name="start">
<parameter_description> the start value of the segment
</parameter_description>
</parameter>
<parameter name="stop">
<parameter_description> the stop value of the segment
</parameter_description>
</parameter>
<parameter name="position">
<parameter_description> stream position
</parameter_description>
</parameter>
</parameters>
<return> A new newsegment event.
</return>
</function>

<function name="gst_mixer_option_changed">
<description>
This function is called by the mixer implementation to produce
a notification message on the bus indicating that the given options
object has changed state. 

This function only works for GstElements that are implementing the
GstMixer interface, and the element needs to have been provided a bus.

</description>
<parameters>
<parameter name="mixer">
<parameter_description> the #GstMixer (a #GstElement) that owns the options 
</parameter_description>
</parameter>
<parameter name="opts">
<parameter_description> the GstMixerOptions that has changed value.
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> the new value of the GstMixerOptions.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_format_iterate_definitions">
<description>
Iterate all the registered formats. The format definition is read
only.


</description>
<parameters>
</parameters>
<return> A GstIterator of #GstFormatDefinition.
</return>
</function>

<function name="gst_rtp_buffer_new_allocate_len">
<description>
Create a new #GstBuffer that can hold an RTP packet that is exactly
@packet_len long. The length of the payload depends on @pad_len and
@csrc_count and can be calculated with gst_rtp_buffer_calc_payload_len().
All RTP header fields will be set to 0/FALSE.


</description>
<parameters>
<parameter name="packet_len">
<parameter_description> the total length of the packet
</parameter_description>
</parameter>
<parameter name="pad_len">
<parameter_description> the amount of padding
</parameter_description>
</parameter>
<parameter name="csrc_count">
<parameter_description> the number of CSRC entries
</parameter_description>
</parameter>
</parameters>
<return> A newly allocated buffer that can hold an RTP packet of @packet_len.
</return>
</function>

<function name="gst_structure_id_empty_new">
<description>
Creates a new, empty #GstStructure with the given name as a GQuark.


</description>
<parameters>
<parameter name="quark">
<parameter_description> name of new structure
</parameter_description>
</parameter>
</parameters>
<return> a new, empty #GstStructure
</return>
</function>

<function name="gst_segment_set_duration">
<description>
Set the duration of the segment to @duration. This function is mainly
used by elements that perform seeking and know the total duration of the
segment. 

This field should be set to allow seeking requests relative to the
duration.

</description>
<parameters>
<parameter name="segment">
<parameter_description> a #GstSegment structure.
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> the format of the segment.
</parameter_description>
</parameter>
<parameter name="duration">
<parameter_description> the duration of the segment info or -1 if unknown.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_sdp_media_init">
<description>
Initialize @media so that its contents are as if it was freshly allocated
with gst_sdp_media_new(). This function is mostly used to initialize a media
allocated on the stack. gst_sdp_media_uninit() undoes this operation.

When this function is invoked on newly allocated data (with malloc or on the
stack), its contents should be set to 0 before calling this function.


</description>
<parameters>
<parameter name="media">
<parameter_description> a #GstSDPMedia
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPResult.
</return>
</function>

<function name="gst_ring_buffer_debug_spec_buff">
<description>
Print debug info about the buffer sized in @spec to the debug log.

</description>
<parameters>
<parameter name="spec">
<parameter_description> the spec to debug
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_registry_add_feature">
<description>
Add the feature to the registry. The feature-added signal will be emitted.
This function sinks @feature.


</description>
<parameters>
<parameter name="registry">
<parameter_description> the registry to add the plugin to
</parameter_description>
</parameter>
<parameter name="feature">
<parameter_description> the feature to add
</parameter_description>
</parameter>
</parameters>
<return> TRUE on success.

MT safe.
</return>
</function>

<function name="gst_netaddress_get_net_type">
<description>
Get the type of address stored in @naddr.


</description>
<parameters>
<parameter name="naddr">
<parameter_description> a network address
</parameter_description>
</parameter>
</parameters>
<return> the network type stored in @naddr.
</return>
</function>

<function name="gst_element_iterate_src_pads">
<description>
Retrieves an iterator of @element&apos;s source pads.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement.
</parameter_description>
</parameter>
</parameters>
<return> the #GstIterator of #GstPad. Unref each pad after use.

MT safe.
</return>
</function>

<function name="gst_query_set_formats">
<description>
Set the formats query result fields in @query. The number of formats passed
must be equal to @n_formats.

</description>
<parameters>
<parameter name="query">
<parameter_description> a #GstQuery
</parameter_description>
</parameter>
<parameter name="n_formats">
<parameter_description> the number of formats to set.
</parameter_description>
</parameter>
<parameter name="Varargs">
<parameter_description> A number of @GstFormats equal to @n_formats.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_ghost_pad_new_no_target_from_template">
<description>
Create a new ghostpad based on @templ, without setting a target. The
direction will be taken from the @templ.


</description>
<parameters>
<parameter name="name">
<parameter_description> the name of the new pad, or NULL to assign a default name.
</parameter_description>
</parameter>
<parameter name="templ">
<parameter_description> the #GstPadTemplate to create the ghostpad from.
</parameter_description>
</parameter>
</parameters>
<return> a new #GstPad, or NULL in case of an error.

Since: 0.10.10
</return>
</function>

<function name="gst_debug_log_valist">
<description>
Logs the given message using the currently registered debugging handlers.

</description>
<parameters>
<parameter name="category">
<parameter_description> category to log
</parameter_description>
</parameter>
<parameter name="level">
<parameter_description> level of the message is in
</parameter_description>
</parameter>
<parameter name="file">
<parameter_description> the file that emitted the message, usually the __FILE__ identifier
</parameter_description>
</parameter>
<parameter name="function">
<parameter_description> the function that emitted the message
</parameter_description>
</parameter>
<parameter name="line">
<parameter_description> the line from that the message was emitted, usually __LINE__
</parameter_description>
</parameter>
<parameter name="object">
<parameter_description> the object this message relates to or NULL if none
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> a printf style format string
</parameter_description>
</parameter>
<parameter name="args">
<parameter_description> optional arguments for the format
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_message_parse_new_clock">
<description>
Extracts the new clock from the GstMessage.
The clock object returned remains valid until the message is freed.

MT safe.

</description>
<parameters>
<parameter name="message">
<parameter_description> A valid #GstMessage of type GST_MESSAGE_NEW_CLOCK.
</parameter_description>
</parameter>
<parameter name="clock">
<parameter_description> A pointer to hold the selected new clock
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_bus_peek">
<description>
Peek the message on the top of the bus&apos; queue. The message will remain
on the bus&apos; message queue. A reference is returned, and needs to be unreffed
by the caller.


</description>
<parameters>
<parameter name="bus">
<parameter_description> a #GstBus
</parameter_description>
</parameter>
</parameters>
<return> The #GstMessage that is on the bus, or NULL if the bus is empty.

MT safe.
</return>
</function>

<function name="gst_collect_pads_read">
<description>
Get a pointer in @bytes where @size bytes can be read from the
given pad @data.

This function should be called with @pads LOCK held, such as
in the callback.


</description>
<parameters>
<parameter name="pads">
<parameter_description> the collectspads to query
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> the data to use
</parameter_description>
</parameter>
<parameter name="bytes">
<parameter_description> a pointer to a byte array
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> the number of bytes to read
</parameter_description>
</parameter>
</parameters>
<return> The number of bytes available for consumption in the
memory pointed to by @bytes. This can be less than @size and
is 0 if the pad is end-of-stream.

MT safe.
</return>
</function>

<function name="gst_tuner_get_channel">
<description>
Retrieve the current channel from the tuner.


</description>
<parameters>
<parameter name="tuner">
<parameter_description> the #GstTuner (a #GstElement) to get the current channel from.
</parameter_description>
</parameter>
</parameters>
<return> the current channel of the tuner object.
</return>
</function>

<function name="gst_clock_id_wait">
<description>
Perform a blocking wait on @id. 
@id should have been created with gst_clock_new_single_shot_id()
or gst_clock_new_periodic_id() and should not have been unscheduled
with a call to gst_clock_id_unschedule(). 

If the @jitter argument is not %NULL and this function returns #GST_CLOCK_OK
or #GST_CLOCK_EARLY, it will contain the difference
against the clock and the time of @id when this method was
called. 
Positive values indicate how late @id was relative to the clock
(in which case this function will return #GST_CLOCK_EARLY). 
Negative values indicate how much time was spent waiting on the clock 
before this function returned.


</description>
<parameters>
<parameter name="id">
<parameter_description> The #GstClockID to wait on
</parameter_description>
</parameter>
<parameter name="jitter">
<parameter_description> A pointer that will contain the jitter, can be %NULL.
</parameter_description>
</parameter>
</parameters>
<return> the result of the blocking wait. #GST_CLOCK_EARLY will be returned
if the current clock time is past the time of @id, #GST_CLOCK_OK if 
@id was scheduled in time. #GST_CLOCK_UNSCHEDULED if @id was 
unscheduled with gst_clock_id_unschedule().

MT safe.
</return>
</function>

<function name="gst_element_link_many">
<description>
Chain together a series of elements. Uses gst_element_link().
Make sure you have added your elements to a bin or pipeline with
gst_bin_add() before trying to link them.


</description>
<parameters>
<parameter name="element_1">
<parameter_description> the first #GstElement in the link chain.
</parameter_description>
</parameter>
<parameter name="element_2">
<parameter_description> the second #GstElement in the link chain.
</parameter_description>
</parameter>
<parameter name="Varargs">
<parameter_description> the NULL-terminated list of elements to link in order.
</parameter_description>
</parameter>
</parameters>
<return> TRUE on success, FALSE otherwise.
</return>
</function>

<function name="gst_tag_list_copy_value">
<description>
Copies the contents for the given tag into the value,
merging multiple values into one if multiple values are associated
with the tag.
You must g_value_unset() the value after use.


</description>
<parameters>
<parameter name="dest">
<parameter_description> uninitialized #GValue to copy into
</parameter_description>
</parameter>
<parameter name="list">
<parameter_description> list to get the tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if a value was copied, FALSE if the tag didn&apos;t exist in the
given list.
</return>
</function>

<function name="gst_ring_buffer_acquire">
<description>
Allocate the resources for the ringbuffer. This function fills
in the data pointer of the ring buffer with a valid #GstBuffer
to which samples can be written.


</description>
<parameters>
<parameter name="buf">
<parameter_description> the #GstRingBuffer to acquire
</parameter_description>
</parameter>
<parameter name="spec">
<parameter_description> the specs of the buffer
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the device could be acquired, FALSE on error.

MT safe.
</return>
</function>

<function name="gst_element_query_convert">
<description>
Queries an element to convert @src_val in @src_format to @dest_format.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement to invoke the convert query on.
</parameter_description>
</parameter>
<parameter name="src_format">
<parameter_description> a #GstFormat to convert from.
</parameter_description>
</parameter>
<parameter name="src_val">
<parameter_description> a value to convert.
</parameter_description>
</parameter>
<parameter name="dest_format">
<parameter_description> a pointer to the #GstFormat to convert to.
</parameter_description>
</parameter>
<parameter name="dest_val">
<parameter_description> a pointer to the result.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the query could be performed.
</return>
</function>

<function name="gst_check_drop_buffers">
<description>
Unref and remove all buffers that are in the global @buffers GList,
emptying the list.

Since: 0.10.18

</description>
<parameters>
</parameters>
<return></return>
</function>

<function name="gst_pad_iterate_internal_links">
<description>
Gets an iterator for the pads to which the given pad is linked to inside
of the parent element.

Each #GstPad element yielded by the iterator will have its refcount increased,
so unref after use.


</description>
<parameters>
<parameter name="pad">
<parameter_description> the GstPad to get the internal links of.
</parameter_description>
</parameter>
</parameters>
<return> a new #GstIterator of #GstPad or %NULL when the pad does not have an
iterator function configured. Use gst_iterator_free() after usage.

Since: 0.10.21
</return>
</function>

<function name="gst_byte_reader_peek_float64_le">
<description>
Read a 64 bit little endian integer into @val
but keep the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #gdouble to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_element_factory_create">
<description>
Create a new element of the type defined by the given elementfactory.
It will be given the name supplied, since all elements require a name as
their first argument.


</description>
<parameters>
<parameter name="factory">
<parameter_description> factory to instantiate
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> name of new element
</parameter_description>
</parameter>
</parameters>
<return> new #GstElement or NULL if the element couldn&apos;t be created
</return>
</function>

<function name="gst_pipeline_get_clock">
<description>
Gets the current clock used by @pipeline.


</description>
<parameters>
<parameter name="pipeline">
<parameter_description> a #GstPipeline
</parameter_description>
</parameter>
</parameters>
<return> a #GstClock, unref after usage.
</return>
</function>

<function name="gst_byte_reader_init">
<description>
Initializes a #GstByteReader instance to read from @data. This function
can be called on already initialized instances.

Since: 0.10.22

</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> Data from which the #GstByteReader should read
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> Size of @data in bytes
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_property_probe_needs_probe">
<description>
Checks whether a property needs a probe. This might be because
the property wasn&apos;t initialized before, or because host setup
changed. This might be, for example, because a new device was
added, and thus device probing needs to be refreshed to display
the new device.


</description>
<parameters>
<parameter name="probe">
<parameter_description> the #GstPropertyProbe object to which the given property belongs.
</parameter_description>
</parameter>
<parameter name="pspec">
<parameter_description> a #GParamSpec that identifies the property to check.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the property needs a new probe, FALSE if not.
</return>
</function>

<function name="gst_rtcp_buffer_new_take_data">
<description>
Create a new buffer and set the data and size of the buffer to @data and @len
respectively. @data will be freed when the buffer is unreffed, so this
function transfers ownership of @data to the new buffer.


</description>
<parameters>
<parameter name="data">
<parameter_description> data for the new buffer
</parameter_description>
</parameter>
<parameter name="len">
<parameter_description> the length of data
</parameter_description>
</parameter>
</parameters>
<return> A newly allocated buffer with @data and of size @len.
</return>
</function>

<function name="gst_buffer_copy_metadata">
<description>
Copies the metadata from @src into @dest. The data, size and mallocdata
fields are not copied.

@flags indicate which fields will be copied. Use #GST_BUFFER_COPY_ALL to copy
all the metadata fields.

This function is typically called from a custom buffer copy function after
creating @dest and setting the data, size, mallocdata.

Since: 0.10.13

</description>
<parameters>
<parameter name="dest">
<parameter_description> a destination #GstBuffer
</parameter_description>
</parameter>
<parameter name="src">
<parameter_description> a source #GstBuffer
</parameter_description>
</parameter>
<parameter name="flags">
<parameter_description> flags indicating what metadata fields should be copied.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_trace_new">
<description>
Create a ringbuffer of @size in the file with @filename to 
store trace results in.


</description>
<parameters>
<parameter name="filename">
<parameter_description> a filename
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> the max size of the file
</parameter_description>
</parameter>
</parameters>
<return> a new #GstTrace.
</return>
</function>

<function name="gst_rtcp_buffer_validate_data">
<description>
Check if the @data and @size point to the data of a valid RTCP (compound)
packet. 
Use this function to validate a packet before using the other functions in
this module.


</description>
<parameters>
<parameter name="data">
<parameter_description> the data to validate
</parameter_description>
</parameter>
<parameter name="len">
<parameter_description> the length of @data to validate
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the data points to a valid RTCP packet.
</return>
</function>

<function name="gst_object_check_uniqueness">
<description>
Checks to see if there is any object named @name in @list. This function
does not do any locking of any kind. You might want to protect the
provided list with the lock of the owner of the list. This function
will lock each #GstObject in the list to compare the name, so be
carefull when passing a list with a locked object.


</description>
<parameters>
<parameter name="list">
<parameter_description> a list of #GstObject to check through
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> the name to search for
</parameter_description>
</parameter>
</parameters>
<return> TRUE if a #GstObject named @name does not appear in @list,
FALSE if it does.

MT safe. Grabs and releases the LOCK of each object in the list.
</return>
</function>

<function name="gst_mixer_options_list_changed">
<description>
This function is called by the mixer implementation to produce
a notification message on the bus indicating that the list of possible
options of a given options object has changed.

The new options are not contained in the message on purpose. Applications
should call gst_mixer_option_get_values() on @opts to make @opts update
its internal state and obtain the new list of values.

This function only works for GstElements that are implementing the
GstMixer interface, and the element needs to have been provided a bus
for this to work.

Since: 0.10.18

</description>
<parameters>
<parameter name="mixer">
<parameter_description> the #GstMixer (a #GstElement) that owns the options 
</parameter_description>
</parameter>
<parameter name="opts">
<parameter_description> the GstMixerOptions whose list of values has changed
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_set_getrange_function">
<description>
Sets the given getrange function for the pad. The getrange function is
called to produce a new #GstBuffer to start the processing pipeline. see
#GstPadGetRangeFunction for a description of the getrange function.

</description>
<parameters>
<parameter name="pad">
<parameter_description> a source #GstPad.
</parameter_description>
</parameter>
<parameter name="get">
<parameter_description> the #GstPadGetRangeFunction to set.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_byte_reader_get_pos">
<description>
Returns: The current position of @reader in bytes.

</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
</parameters>
<return> The current position of @reader in bytes.

Since: 0.10.22
</return>
</function>

<function name="gst_rtcp_buffer_get_first_packet">
<description>
Initialize a new #GstRTCPPacket pointer that points to the first packet in
@buffer.


</description>
<parameters>
<parameter name="buffer">
<parameter_description> a valid RTCP buffer
</parameter_description>
</parameter>
<parameter name="packet">
<parameter_description> a #GstRTCPPacket
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the packet existed in @buffer.
</return>
</function>

<function name="gst_buffer_make_metadata_writable">
<description>
Similar to gst_buffer_make_writable, but does not ensure that the buffer
data array is writable. Instead, this just ensures that the returned buffer
is solely owned by the caller, by creating a subbuffer of the original
buffer if necessary.

After calling this function, @buf should not be referenced anymore. The
result of this function has guaranteed writable metadata.


</description>
<parameters>
<parameter name="buf">
<parameter_description> a #GstBuffer
</parameter_description>
</parameter>
</parameters>
<return> A new #GstBuffer with writable metadata.
</return>
</function>

<function name="gst_sdp_media_free">
<description>
Free all resources allocated by @media. @media should not be used anymore after
this function. This function should be used when @media was dynamically
allocated with gst_sdp_media_new().


</description>
<parameters>
<parameter name="media">
<parameter_description> a #GstSDPMedia
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPResult.
</return>
</function>

<function name="gst_base_sink_set_ts_offset">
<description>
Adjust the synchronisation of @sink with @offset. A negative value will
render buffers earlier than their timestamp. A positive value will delay
rendering. This function can be used to fix playback of badly timestamped
buffers.

Since: 0.10.15

</description>
<parameters>
<parameter name="sink">
<parameter_description> the sink
</parameter_description>
</parameter>
<parameter name="offset">
<parameter_description> the new offset
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_peer_query">
<description>
Performs gst_pad_query() on the peer of @pad.

The caller is responsible for both the allocation and deallocation of
the query structure.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad to invoke the peer query on.
</parameter_description>
</parameter>
<parameter name="query">
<parameter_description> the #GstQuery to perform.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the query could be performed. This function returns %FALSE
if @pad has no peer.

Since: 0.10.15
</return>
</function>

<function name="gst_ring_buffer_samples_done">
<description>
Get the number of samples that were processed by the ringbuffer
since it was last started. This does not include the number of samples not
yet processed (see gst_ring_buffer_delay()).


</description>
<parameters>
<parameter name="buf">
<parameter_description> the #GstRingBuffer to query
</parameter_description>
</parameter>
</parameters>
<return> The number of samples processed by the ringbuffer.

MT safe.
</return>
</function>

<function name="gst_tag_setter_add_tag_valist_values">
<description>
Adds the given tag / GValue pairs on the setter using the given merge mode.
The list must be terminated with NULL.

</description>
<parameters>
<parameter name="setter">
<parameter_description> a #GstTagSetter
</parameter_description>
</parameter>
<parameter name="mode">
<parameter_description> the mode to use
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to set
</parameter_description>
</parameter>
<parameter name="var_args">
<parameter_description> tag / GValue pairs to set
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_ring_buffer_is_acquired">
<description>
Check if the ringbuffer is acquired and ready to use.


</description>
<parameters>
<parameter name="buf">
<parameter_description> the #GstRingBuffer to check
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the ringbuffer is acquired, FALSE on error.

MT safe.
</return>
</function>

<function name="gst_sdp_message_dump">
<description>
Dump the parsed contents of @msg to stdout.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPResult.
</return>
</function>

<function name="gst_clock_id_unschedule">
<description>
Cancel an outstanding request with @id. This can either
be an outstanding async notification or a pending sync notification.
After this call, @id cannot be used anymore to receive sync or
async notifications, you need to create a new #GstClockID.

MT safe.

</description>
<parameters>
<parameter name="id">
<parameter_description> The id to unschedule
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_set_event_function">
<description>
Sets the given event handler for the pad.

</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad of either direction.
</parameter_description>
</parameter>
<parameter name="event">
<parameter_description> the #GstPadEventFunction to set.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_sdp_message_set_session_name">
<description>
Set the session name in @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
<parameter name="session_name">
<parameter_description> the session name
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPResult.
</return>
</function>

<function name="gst_rtp_buffer_calc_header_len">
<description>
Calculate the header length of an RTP packet with @csrc_count CSRC entries.
An RTP packet can have at most 15 CSRC entries.


</description>
<parameters>
<parameter name="csrc_count">
<parameter_description> the number of CSRC entries
</parameter_description>
</parameter>
</parameters>
<return> The length of an RTP header with @csrc_count CSRC entries.
</return>
</function>

<function name="gst_rtcp_packet_sdes_copy_entry">
<description>
This function is like gst_rtcp_packet_sdes_get_entry() but it returns a
null-terminated copy of the data instead. use g_free() after usage.


</description>
<parameters>
<parameter name="packet">
<parameter_description> a valid SDES #GstRTCPPacket
</parameter_description>
</parameter>
<parameter name="type">
<parameter_description> result of the entry type
</parameter_description>
</parameter>
<parameter name="len">
<parameter_description> result length of the entry data
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> result entry data
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if there was valid data.
</return>
</function>

<function name="gst_tag_list_get_ulong_index">
<description>
Gets the value that is at the given index for the given tag in the given
list.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList to get the tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
<parameter name="index">
<parameter_description> number of entry to read out
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> location for the result
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if a value was copied, FALSE if the tag didn&apos;t exist in the
given list.
</return>
</function>

<function name="gst_tag_get_type">
<description>
Gets the #GType used for this tag.


</description>
<parameters>
<parameter name="tag">
<parameter_description> the tag
</parameter_description>
</parameter>
</parameters>
<return> the #GType of this tag
</return>
</function>

<function name="gst_tuner_channel_changed">
<description>
Called by elements implementing the #GstTuner interface when the
current channel changes. Fires the #GstTuner::channel-changed signal.

</description>
<parameters>
<parameter name="tuner">
<parameter_description> A #GstTuner instance
</parameter_description>
</parameter>
<parameter name="channel">
<parameter_description> A #GstTunerChannel instance
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_bus_create_watch">
<description>
Create watch for this bus. The GSource will be dispatched whenever
a message is on the bus. After the GSource is dispatched, the
message is popped off the bus and unreffed.


</description>
<parameters>
<parameter name="bus">
<parameter_description> a #GstBus to create the watch for
</parameter_description>
</parameter>
</parameters>
<return> A #GSource that can be added to a mainloop.
</return>
</function>

<function name="gst_value_array_get_value">
<description>
Gets the value that is a member of the array contained in @value and
has the index @index.


</description>
<parameters>
<parameter name="value">
<parameter_description> a #GValue of type #GST_TYPE_ARRAY
</parameter_description>
</parameter>
<parameter name="index">
<parameter_description> index of value to get from the array
</parameter_description>
</parameter>
</parameters>
<return> the value at the given index
</return>
</function>

<function name="gst_interpolation_control_source_set_from_list">
<description>
Sets multiple timed values at once.


</description>
<parameters>
<parameter name="self">
<parameter_description> the #GstInterpolationControlSource object
</parameter_description>
</parameter>
<parameter name="timedvalues">
<parameter_description> a list with #GstTimedValue items
</parameter_description>
</parameter>
</parameters>
<return> FALSE if the values couldn&apos;t be set, TRUE otherwise.
</return>
</function>

<function name="gst_pad_proxy_setcaps">
<description>
Calls gst_pad_set_caps() for every other pad belonging to the
same element as @pad.  If gst_pad_set_caps() fails on any pad,
the proxy setcaps fails. May be used only during negotiation.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad to proxy from
</parameter_description>
</parameter>
<parameter name="caps">
<parameter_description> the #GstCaps to link with
</parameter_description>
</parameter>
</parameters>
<return> TRUE if sucessful
</return>
</function>

<function name="gst_segment_to_running_time">
<description>
Translate @position to the total running time using the currently configured 
and previously accumulated segments. Position is a value between @segment
start and stop time.

This function is typically used by elements that need to synchronize to the
global clock in a pipeline. The runnning time is a constantly increasing value
starting from 0. When gst_segment_init() is called, this value will reset to
0.

This function returns -1 if the position is outside of @segment start and stop.


</description>
<parameters>
<parameter name="segment">
<parameter_description> a #GstSegment structure.
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> the format of the segment.
</parameter_description>
</parameter>
<parameter name="position">
<parameter_description> the position in the segment
</parameter_description>
</parameter>
</parameters>
<return> the position as the total running time or -1 when an invalid position
was given.
</return>
</function>

<function name="gst_pipeline_get_delay">
<description>
Get the configured delay (see gst_pipeline_set_delay()).


</description>
<parameters>
<parameter name="pipeline">
<parameter_description> a #GstPipeline
</parameter_description>
</parameter>
</parameters>
<return> The configured delay.

MT safe.

Since: 0.10.5
</return>
</function>

<function name="gst_element_class_set_details">
<description>
Sets the detailed information for a #GstElementClass.
&amp;lt;note&amp;gt;This function is for use in _base_init functions only.&amp;lt;/note&amp;gt;

The @details are copied.

</description>
<parameters>
<parameter name="klass">
<parameter_description> class to set details for
</parameter_description>
</parameter>
<parameter name="details">
<parameter_description> details to set
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_tuner_set_frequency">
<description>
Sets a tuning frequency on the given tuner/channel. Note that this
requires the given channel to be a &quot;tuning&quot; channel, which can be
checked using GST_TUNER_CHANNEL_HAS_FLAG (), with the proper flag
being GST_TUNER_CHANNEL_FREQUENCY.

The frequency is in Hz, with minimum steps indicated by the 
frequency_multiplicator provided in the #GstTunerChannel. The
valid range is provided in the min_frequency and max_frequency properties
of the #GstTunerChannel.

</description>
<parameters>
<parameter name="tuner">
<parameter_description> The #Gsttuner (a #GstElement) that owns the given channel.
</parameter_description>
</parameter>
<parameter name="channel">
<parameter_description> The #GstTunerChannel to set the frequency on.
</parameter_description>
</parameter>
<parameter name="frequency">
<parameter_description> The frequency to tune in to.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_ring_buffer_may_start">
<description>
Tell the ringbuffer that it is allowed to start playback when
the ringbuffer is filled with samples. 

Since: 0.10.6

MT safe.

</description>
<parameters>
<parameter name="buf">
<parameter_description> the #GstRingBuffer
</parameter_description>
</parameter>
<parameter name="allowed">
<parameter_description> the new value
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_tag_list_foreach">
<description>
Calls the given function for each tag inside the tag list. Note that if there
is no tag, the function won&apos;t be called at all.

</description>
<parameters>
<parameter name="list">
<parameter_description> list to iterate over
</parameter_description>
</parameter>
<parameter name="func">
<parameter_description> function to be called for each tag
</parameter_description>
</parameter>
<parameter name="user_data">
<parameter_description> user specified data
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_tuner_find_channel_by_name">
<description>
Look up a #GstTunerChannel by name.


</description>
<parameters>
<parameter name="tuner">
<parameter_description> A #GstTuner instance
</parameter_description>
</parameter>
<parameter name="channel">
<parameter_description> A string containing the name of a #GstTunerChannel
</parameter_description>
</parameter>
</parameters>
<return> A #GstTunerChannel, or NULL if no channel with the provided name
is available.
</return>
</function>

<function name="gst_debug_level_get_name">
<description>
Get the string representation of a debugging level


</description>
<parameters>
<parameter name="level">
<parameter_description> the level to get the name for
</parameter_description>
</parameter>
</parameters>
<return> the name
</return>
</function>

<function name="gst_object_has_ancestor">
<description>
Check if @object has an ancestor @ancestor somewhere up in
the hierarchy.


</description>
<parameters>
<parameter name="object">
<parameter_description> a #GstObject to check
</parameter_description>
</parameter>
<parameter name="ancestor">
<parameter_description> a #GstObject to check as ancestor
</parameter_description>
</parameter>
</parameters>
<return> TRUE if @ancestor is an ancestor of @object.

MT safe. Grabs and releases @object&apos;s locks.
</return>
</function>

<function name="gst_rtcp_packet_bye_get_reason">
<description>
Get the reason in @packet.


</description>
<parameters>
<parameter name="packet">
<parameter_description> a valid BYE #GstRTCPPacket
</parameter_description>
</parameter>
</parameters>
<return> The reason for the BYE @packet or NULL if the packet did not contain
a reason string. The string must be freed with g_free() after usage.
</return>
</function>

<function name="gst_trace_destroy">
<description>
Flush an close the previously allocated @trace.

</description>
<parameters>
<parameter name="trace">
<parameter_description> the #GstTrace to destroy
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_event_new_buffer_size">
<description>
Create a new buffersize event. The event is sent downstream and notifies
elements that they should provide a buffer of the specified dimensions.

When the @async flag is set, a thread boundary is prefered.


</description>
<parameters>
<parameter name="format">
<parameter_description> buffer format
</parameter_description>
</parameter>
<parameter name="minsize">
<parameter_description> minimum buffer size
</parameter_description>
</parameter>
<parameter name="maxsize">
<parameter_description> maximum buffer size
</parameter_description>
</parameter>
<parameter name="async">
<parameter_description> thread behavior
</parameter_description>
</parameter>
</parameters>
<return> a new #GstEvent
</return>
</function>

<function name="gst_rtp_buffer_get_padding">
<description>
Check if the padding bit is set on the RTP packet in @buffer.


</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer
</parameter_description>
</parameter>
</parameters>
<return> TRUE if @buffer has the padding bit set.
</return>
</function>

<function name="gst_plugin_get_description">
<description>
Get the long descriptive name of the plugin


</description>
<parameters>
<parameter name="plugin">
<parameter_description> plugin to get long name of
</parameter_description>
</parameter>
</parameters>
<return> the long name of the plugin
</return>
</function>

<function name="gst_registry_lookup">
<description>
Look up a plugin in the given registry with the given filename.
If found, plugin is reffed.


</description>
<parameters>
<parameter name="registry">
<parameter_description> the registry to look up in
</parameter_description>
</parameter>
<parameter name="filename">
<parameter_description> the name of the file to look up
</parameter_description>
</parameter>
</parameters>
<return> the #GstPlugin if found, or NULL if not. gst_object_unref()
after usage.
</return>
</function>

<function name="gst_tag_list_get_tag_size">
<description>
Checks how many value are stored in this tag list for the given tag.


</description>
<parameters>
<parameter name="list">
<parameter_description> a taglist
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> the tag to query
</parameter_description>
</parameter>
</parameters>
<return> The number of tags stored
</return>
</function>

<function name="gst_element_unlink_pads">
<description>
Unlinks the two named pads of the source and destination elements.

</description>
<parameters>
<parameter name="src">
<parameter_description> a #GstElement containing the source pad.
</parameter_description>
</parameter>
<parameter name="srcpadname">
<parameter_description> the name of the #GstPad in source element.
</parameter_description>
</parameter>
<parameter name="dest">
<parameter_description> a #GstElement containing the destination pad.
</parameter_description>
</parameter>
<parameter name="destpadname">
<parameter_description> the name of the #GstPad in destination element.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_query_new_buffering">
<description>
Constructs a new query object for querying the buffering status of
a stream.


</description>
<parameters>
<parameter name="format">
<parameter_description> the default #GstFormat for the new query
</parameter_description>
</parameter>
</parameters>
<return> A #GstQuery

Since: 0.10.20
</return>
</function>

<function name="gst_clock_id_compare_func">
<description>
Compares the two #GstClockID instances. This function can be used
as a GCompareFunc when sorting ids.


</description>
<parameters>
<parameter name="id1">
<parameter_description> A #GstClockID
</parameter_description>
</parameter>
<parameter name="id2">
<parameter_description> A #GstClockID to compare with
</parameter_description>
</parameter>
</parameters>
<return> negative value if a &amp;lt; b; zero if a = b; positive value if a &amp;gt; b

MT safe.
</return>
</function>

<function name="gst_sdp_media_get_attribute_val_n">
<description>
Get the @nth attribute value for @key in @media.


</description>
<parameters>
<parameter name="media">
<parameter_description> a #GstSDPMedia
</parameter_description>
</parameter>
<parameter name="key">
<parameter_description> a key
</parameter_description>
</parameter>
<parameter name="nth">
<parameter_description> an index
</parameter_description>
</parameter>
</parameters>
<return> the @nth attribute value.
</return>
</function>

<function name="gst_bin_get_by_name">
<description>
Gets the element with the given name from a bin. This
function recurses into child bins.

Returns: the #GstElement with the given name, or NULL

</description>
<parameters>
<parameter name="bin">
<parameter_description> a #GstBin
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> the element name to search for
</parameter_description>
</parameter>
</parameters>
<return> the #GstElement with the given name, or NULL
</return>
</function>

<function name="gst_parse_context_get_missing_elements">
<description>
Retrieve missing elements from a previous run of gst_parse_launch_full()
or gst_parse_launchv_full(). Will only return results if an error code
of %GST_PARSE_ERROR_NO_SUCH_ELEMENT was returned.


</description>
<parameters>
<parameter name="context">
<parameter_description> a #GstParseContext
</parameter_description>
</parameter>
</parameters>
<return> a NULL-terminated array of element factory name strings of
missing elements. Free with g_strfreev() when no longer needed.

Since: 0.10.20
</return>
</function>

<function name="gst_pad_is_blocked">
<description>
Checks if the pad is blocked or not. This function returns the
last requested state of the pad. It is not certain that the pad
is actually blocking at this point (see gst_pad_is_blocking()).


</description>
<parameters>
<parameter name="pad">
<parameter_description> the #GstPad to query
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the pad is blocked.

MT safe.
</return>
</function>

<function name="gst_bit_reader_peek_bits_uint64">
<description>
Read @nbits bits into @val but keep the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstBitReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #guint64 to store the result
</parameter_description>
</parameter>
<parameter name="nbits">
<parameter_description> number of bits to read
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_atomic_int_set">
<description>
Unconditionally sets the atomic integer to @value.

Deprecated: Use g_atomic_int_set().


</description>
<parameters>
<parameter name="atomic_int">
<parameter_description> pointer to an atomic integer
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> value to set
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_video_parse_caps_framerate">
<description>
Extracts the frame rate from @caps and places the values in the locations
pointed to by @fps_n and @fps_d.  Returns TRUE if the values could be
parsed correctly, FALSE if not.

This function can be used with #GstCaps that have any media type; it
is not limited to formats handled by #GstVideoFormat.

Since: 0.10.16


</description>
<parameters>
<parameter name="caps">
<parameter_description> pointer to a #GstCaps instance
</parameter_description>
</parameter>
<parameter name="fps_n">
<parameter_description> pointer to integer to hold numerator of frame rate (output)
</parameter_description>
</parameter>
<parameter name="fps_d">
<parameter_description> pointer to integer to hold denominator of frame rate (output)
</parameter_description>
</parameter>
</parameters>
<return> TRUE if @caps was parsed correctly.
</return>
</function>

<function name="gst_rtp_buffer_new_take_data">
<description>
Create a new buffer and set the data and size of the buffer to @data and @len
respectively. @data will be freed when the buffer is unreffed, so this
function transfers ownership of @data to the new buffer.


</description>
<parameters>
<parameter name="data">
<parameter_description> data for the new buffer
</parameter_description>
</parameter>
<parameter name="len">
<parameter_description> the length of data
</parameter_description>
</parameter>
</parameters>
<return> A newly allocated buffer with @data and of size @len.
</return>
</function>

<function name="gst_rtsp_connection_flush">
<description>
Start or stop the flushing action on @conn. When flushing, all current
and future actions on @conn will return #GST_RTSP_EINTR until the connection
is set to non-flushing mode again.


</description>
<parameters>
<parameter name="conn">
<parameter_description> a #GstRTSPConnection
</parameter_description>
</parameter>
<parameter name="flush">
<parameter_description> start or stop the flush
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK.
</return>
</function>

<function name="gst_tag_list_get_uchar">
<description>
Copies the contents for the given tag into the value, merging multiple values
into one if multiple values are associated with the tag.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList to get the tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> location for the result
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if a value was copied, FALSE if the tag didn&apos;t exist in the
given list.
</return>
</function>

<function name="gst_element_get_compatible_pad">
<description>
Looks for an unlinked pad to which the given pad can link. It is not
guaranteed that linking the pads will work, though it should work in most
cases.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement in which the pad should be found.
</parameter_description>
</parameter>
<parameter name="pad">
<parameter_description> the #GstPad to find a compatible one for.
</parameter_description>
</parameter>
<parameter name="caps">
<parameter_description> the #GstCaps to use as a filter.
</parameter_description>
</parameter>
</parameters>
<return> the #GstPad to which a link can be made, or %NULL if one cannot be
found. gst_object_unref() after usage.
</return>
</function>

<function name="gst_registry_binary_read_cache">
<description>
Read the contents of the binary cache file at @location into @registry.


</description>
<parameters>
<parameter name="registry">
<parameter_description> a #GstRegistry
</parameter_description>
</parameter>
<parameter name="location">
<parameter_description> a filename
</parameter_description>
</parameter>
</parameters>
<return> %TRUE on success.
</return>
</function>

<function name="gst_caps_get_size">
<description>
Gets the number of structures contained in @caps.


</description>
<parameters>
<parameter name="caps">
<parameter_description> a #GstCaps
</parameter_description>
</parameter>
</parameters>
<return> the number of structures that @caps contains
</return>
</function>

<function name="gst_element_factory_get_uri_protocols">
<description>
Gets a NULL-terminated array of protocols this element supports or NULL if
no protocols are supported. You may not change the contents of the returned
array, as it is still owned by the element factory. Use g_strdupv() to
make a copy of the protocol string array if you need to.


</description>
<parameters>
<parameter name="factory">
<parameter_description> a #GstElementFactory
</parameter_description>
</parameter>
</parameters>
<return> the supported protocols or NULL
</return>
</function>

<function name="gst_tag_list_get_pointer_index">
<description>
Gets the value that is at the given index for the given tag in the given
list.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList to get the tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
<parameter name="index">
<parameter_description> number of entry to read out
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> location for the result
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if a value was copied, FALSE if the tag didn&apos;t exist in the
given list.
</return>
</function>

<function name="gst_video_format_from_fourcc">
<description>
Converts a FOURCC value into the corresponding #GstVideoFormat.
If the FOURCC cannot be represented by #GstVideoFormat,
#GST_VIDEO_FORMAT_UNKNOWN is returned.

Since: 0.10.16


</description>
<parameters>
<parameter name="fourcc">
<parameter_description> a FOURCC value representing raw YUV video
</parameter_description>
</parameter>
</parameters>
<return> the #GstVideoFormat describing the FOURCC value
</return>
</function>

<function name="gst_element_get_bus">
<description>
Returns: the element&apos;s #GstBus. unref after usage.

</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement to get the bus of.
</parameter_description>
</parameter>
</parameters>
<return> the element&apos;s #GstBus. unref after usage.

MT safe.
</return>
</function>

<function name="gst_bin_new">
<description>
Creates a new bin with the given name.


</description>
<parameters>
<parameter name="name">
<parameter_description> the name of the new bin
</parameter_description>
</parameter>
</parameters>
<return> a new #GstBin
</return>
</function>

<function name="gst_rtsp_transport_parse">
<description>
Parse the RTSP transport string @str into @transport.


</description>
<parameters>
<parameter name="str">
<parameter_description> a transport string
</parameter_description>
</parameter>
<parameter name="transport">
<parameter_description> a #GstRTSPTransport
</parameter_description>
</parameter>
</parameters>
<return> a #GstRTSPResult.
</return>
</function>

<function name="gst_tag_list_get_int_index">
<description>
Gets the value that is at the given index for the given tag in the given
list.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList to get the tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
<parameter name="index">
<parameter_description> number of entry to read out
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> location for the result
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if a value was copied, FALSE if the tag didn&apos;t exist in the
given list.
</return>
</function>

<function name="gst_byte_reader_get_uint16_be">
<description>
Read an unsigned 16 bit big endian integer into @val
and update the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #guint16 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_registry_fork_set_enabled">
<description>
Applications might want to disable/enable the usage of fork() when rebuilding
the registry. See gst_registry_fork_is_enabled() for more information.

On platforms without fork(), this function will have no effect on the return
value of gst_registry_fork_is_enabled().

Since: 0.10.10

</description>
<parameters>
<parameter name="enabled">
<parameter_description> whether rebuilding the registry may fork
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_tuner_signal_strength">
<description>
Get the strength of the signal on this channel. Note that this
requires the current channel to be a &quot;tuning&quot; channel, i.e. a
channel on which frequency can be set. This can be checked using
GST_TUNER_CHANNEL_HAS_FLAG (), and the appropriate flag to check
for is GST_TUNER_CHANNEL_FREQUENCY.

The valid range of the signal strength is indicated in the 
min_signal and max_signal properties of the #GstTunerChannel.


</description>
<parameters>
<parameter name="tuner">
<parameter_description> the #GstTuner (a #GstElement) that owns the given channel.
</parameter_description>
</parameter>
<parameter name="channel">
<parameter_description> the #GstTunerChannel to get the signal strength from.
</parameter_description>
</parameter>
</parameters>
<return> Signal strength, or 0 on error.
</return>
</function>

<function name="gst_pad_set_bufferalloc_function">
<description>
Sets the given bufferalloc function for the pad. Note that the
bufferalloc function can only be set on sinkpads.

</description>
<parameters>
<parameter name="pad">
<parameter_description> a sink #GstPad.
</parameter_description>
</parameter>
<parameter name="bufalloc">
<parameter_description> the #GstPadBufferAllocFunction to set.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_video_format_is_yuv">
<description>
Determine whether the video format is a YUV format.

Since: 0.10.16


</description>
<parameters>
<parameter name="format">
<parameter_description> a #GstVideoFormat
</parameter_description>
</parameter>
</parameters>
<return> TRUE if @format represents YUV video
</return>
</function>

<function name="gst_element_no_more_pads">
<description>
Use this function to signal that the element does not expect any more pads
to show up in the current pipeline. This function should be called whenever
pads have been added by the element itself. Elements with #GST_PAD_SOMETIMES
pad templates use this in combination with autopluggers to figure out that
the element is done initializing its pads.

This function emits the #GstElement::no-more-pads signal.

MT safe.

</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_set_chain_function">
<description>
Sets the given chain function for the pad. The chain function is called to
process a #GstBuffer input buffer. see #GstPadChainFunction for more details.

</description>
<parameters>
<parameter name="pad">
<parameter_description> a sink #GstPad.
</parameter_description>
</parameter>
<parameter name="chain">
<parameter_description> the #GstPadChainFunction to set.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_iterate_internal_links_default">
<description>
Iterate the list of pads to which the given pad is linked to inside of
the parent element.
This is the default handler, and thus returns an iterator of all of the
pads inside the parent element with opposite direction.

The caller must free this iterator after use with gst_iterator_free().


</description>
<parameters>
<parameter name="pad">
<parameter_description> the #GstPad to get the internal links of.
</parameter_description>
</parameter>
</parameters>
<return> a #GstIterator of #GstPad, or NULL if @pad has no parent. Unref each
returned pad with gst_object_unref().

Since: 0.10.21
</return>
</function>

<function name="gst_message_parse_buffering_stats">
<description>
Extracts the buffering stats values from @message.

Since: 0.10.20

</description>
<parameters>
<parameter name="message">
<parameter_description> A valid #GstMessage of type GST_MESSAGE_BUFFERING.
</parameter_description>
</parameter>
<parameter name="mode">
<parameter_description> a buffering mode 
</parameter_description>
</parameter>
<parameter name="avg_in">
<parameter_description> the average input rate
</parameter_description>
</parameter>
<parameter name="avg_out">
<parameter_description> the average output rate
</parameter_description>
</parameter>
<parameter name="buffering_left">
<parameter_description> amount of buffering time left in milliseconds.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_util_uint64_scale_int">
<description>
Scale a guint64 by a factor expressed as a fraction (num/denom), avoiding
overflows and loss of precision.

@num and @denom must be positive integers. @denom cannot be 0.


</description>
<parameters>
<parameter name="val">
<parameter_description> guint64 (such as a #GstClockTime) to scale.
</parameter_description>
</parameter>
<parameter name="num">
<parameter_description> numerator of the scale factor.
</parameter_description>
</parameter>
<parameter name="denom">
<parameter_description> denominator of the scale factor.
</parameter_description>
</parameter>
</parameters>
<return> @val * @num / @denom, avoiding overflow and loss of precision.
In the case of an overflow, this function returns G_MAXUINT64.
</return>
</function>

<function name="gst_caps_get_structure">
<description>
Finds the structure in @caps that has the index @index, and
Returns: a pointer to the #GstStructure corresponding to @index

</description>
<parameters>
<parameter name="caps">
<parameter_description> a #GstCaps
</parameter_description>
</parameter>
<parameter name="index">
<parameter_description> the index of the structure
</parameter_description>
</parameter>
</parameters>
<return> a pointer to the #GstStructure corresponding to @index
</return>
</function>

<function name="gst_event_new_navigation">
<description>
Create a new navigation event from the given description.


</description>
<parameters>
<parameter name="structure">
<parameter_description> description of the event. The event will take ownership of the
structure.
</parameter_description>
</parameter>
</parameters>
<return> a new #GstEvent
</return>
</function>

<function name="gst_sdp_media_get_port">
<description>
Get the port number for @media.


</description>
<parameters>
<parameter name="media">
<parameter_description> a #GstSDPMedia
</parameter_description>
</parameter>
</parameters>
<return> the port number of @media.
</return>
</function>

<function name="gst_tag_list_add_valist_values">
<description>
Sets the GValues for the given tags using the specified mode.

</description>
<parameters>
<parameter name="list">
<parameter_description> list to set tags in
</parameter_description>
</parameter>
<parameter name="mode">
<parameter_description> the mode to use
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag
</parameter_description>
</parameter>
<parameter name="var_args">
<parameter_description> tag / GValue pairs to set
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_ring_buffer_device_is_open">
<description>
Checks the status of the device associated with the ring buffer.


</description>
<parameters>
<parameter name="buf">
<parameter_description> the #GstRingBuffer
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the device was open, FALSE if it was closed.

MT safe.
</return>
</function>

<function name="gst_message_parse_info">
<description>
Extracts the GError and debug string from the GstMessage. The values returned
in the output arguments are copies; the caller must free them when done.

MT safe.

Since: 0.10.12

</description>
<parameters>
<parameter name="message">
<parameter_description> A valid #GstMessage of type GST_MESSAGE_INFO.
</parameter_description>
</parameter>
<parameter name="gerror">
<parameter_description> Location for the GError
</parameter_description>
</parameter>
<parameter name="debug">
<parameter_description> Location for the debug message, or NULL
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_tag_freeform_string_to_utf8">
<description>
Convenience function to read a string with unknown character encoding. If
the string is already in UTF-8 encoding, it will be returned right away.
Otherwise, the environment will be searched for a number of environment
variables (whose names are specified in the NULL-terminated string array
@env_vars) containing a list of character encodings to try/use. If none
are specified, the current locale will be tried. If that also doesn&apos;t work,
ISO-8859-1 is assumed (which will almost always succeed).


</description>
<parameters>
<parameter name="data">
<parameter_description> string data
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> length of string data, or -1 if the string is NUL-terminated
</parameter_description>
</parameter>
<parameter name="env_vars">
<parameter_description> a NULL-terminated string array of environment variable names,
or NULL
</parameter_description>
</parameter>
</parameters>
<return> a newly-allocated string in UTF-8 encoding, or NULL

Since: 0.10.13
</return>
</function>

<function name="gst_parse_launch">
<description>
Create a new pipeline based on command line syntax.
Please note that you might get a return value that is not %NULL even though
the @error is set. In this case there was a recoverable parsing error and you
can try to play the pipeline.


</description>
<parameters>
<parameter name="pipeline_description">
<parameter_description> the command line describing the pipeline
</parameter_description>
</parameter>
<parameter name="error">
<parameter_description> the error message in case of an erroneous pipeline.
</parameter_description>
</parameter>
</parameters>
<return> a new element on success, %NULL on failure. If more than one toplevel
element is specified by the @pipeline_description, all elements are put into
a #GstPipeline, which than is returned.
</return>
</function>

<function name="gst_debug_log">
<description>
Logs the given message using the currently registered debugging handlers.

</description>
<parameters>
<parameter name="category">
<parameter_description> category to log
</parameter_description>
</parameter>
<parameter name="level">
<parameter_description> level of the message is in
</parameter_description>
</parameter>
<parameter name="file">
<parameter_description> the file that emitted the message, usually the __FILE__ identifier
</parameter_description>
</parameter>
<parameter name="function">
<parameter_description> the function that emitted the message
</parameter_description>
</parameter>
<parameter name="line">
<parameter_description> the line from that the message was emitted, usually __LINE__
</parameter_description>
</parameter>
<parameter name="object">
<parameter_description> the object this message relates to or NULL if none
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> a printf style format string
</parameter_description>
</parameter>
<parameter name="Varargs">
<parameter_description> optional arguments for the format
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_tag_list_get_date_index">
<description>
Gets the value that is at the given index for the given tag in the given
list.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList to get the tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
<parameter name="index">
<parameter_description> number of entry to read out
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> location for the result
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if a value was copied, FALSE if the tag didn&apos;t exist in the
given list or if it was #NULL.
</return>
</function>

<function name="gst_value_get_fraction_denominator">
<description>
Gets the denominator of the fraction specified by @value.


</description>
<parameters>
<parameter name="value">
<parameter_description> a GValue initialized to #GST_TYPE_FRACTION
</parameter_description>
</parameter>
</parameters>
<return> the denominator of the fraction.
</return>
</function>

<function name="gst_rtsp_message_dump">
<description>
Dump the contents of @msg to stdout.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstRTSPMessage
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK.
</return>
</function>

<function name="gst_pad_query_peer_position">
<description>
Queries the peer of a given sink pad for the stream position.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad on whose peer to invoke the position query on.
Must be a sink pad.
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> a pointer to the #GstFormat asked for.
On return contains the #GstFormat used.
</parameter_description>
</parameter>
<parameter name="cur">
<parameter_description> A location in which to store the current position, or NULL.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the query could be performed.
</return>
</function>

<function name="gst_pad_template_get_caps">
<description>
Gets the capabilities of the pad template.


</description>
<parameters>
<parameter name="templ">
<parameter_description> a #GstPadTemplate to get capabilities of.
</parameter_description>
</parameter>
</parameters>
<return> the #GstCaps of the pad template. If you need to keep a reference to
the caps, take a ref (see gst_caps_ref ()).
</return>
</function>

<function name="gst_sdp_message_parse_buffer">
<description>
Parse the contents of @size bytes pointed to by @data and store the result in
@msg.


</description>
<parameters>
<parameter name="data">
<parameter_description> the start of the buffer
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> the size of the buffer
</parameter_description>
</parameter>
<parameter name="msg">
<parameter_description> the result #GstSDPMessage
</parameter_description>
</parameter>
</parameters>
<return> #GST_SDP_OK on success.
</return>
</function>

<function name="gst_rtcp_packet_bye_get_nth_ssrc">
<description>
Get the @nth SSRC of the BYE @packet.


</description>
<parameters>
<parameter name="packet">
<parameter_description> a valid BYE #GstRTCPPacket
</parameter_description>
</parameter>
<parameter name="nth">
<parameter_description> the nth SSRC to get
</parameter_description>
</parameter>
</parameters>
<return> The @nth SSRC of @packet.
</return>
</function>

<function name="GstPropertyProbe">
<description>

</description>
<parameters>
<parameter name="pspec">
<parameter_description> #GParamSpec that needs a probe
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_structure_id_set">
<description>
Identical to gst_structure_set, except that field names are
passed using the GQuark for the field name. This allows more efficient
setting of the structure if the caller already knows the associated
quark values.
The last variable argument must be NULL.

Since: 0.10.10

</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="fieldname">
<parameter_description> the GQuark for the name of the field to set
</parameter_description>
</parameter>
<parameter name="Varargs">
<parameter_description> variable arguments
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtsp_message_new_response">
<description>
Create a new response #GstRTSPMessage with @code and @reason and store the
result message in @msg. 

When @reason is #NULL, the default reason for @code will be used.

When @request is not #NULL, the relevant headers will be copied to the new
response message.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a location for the new #GstRTSPMessage
</parameter_description>
</parameter>
<parameter name="code">
<parameter_description> the status code
</parameter_description>
</parameter>
<parameter name="reason">
<parameter_description> the status reason or #NULL
</parameter_description>
</parameter>
<parameter name="request">
<parameter_description> the request that triggered the response or #NULL
</parameter_description>
</parameter>
</parameters>
<return> a #GstRTSPResult. Free with gst_rtsp_message_free().
</return>
</function>

<function name="gst_ring_buffer_is_active">
<description>
Check if @buf is activated.


</description>
<parameters>
<parameter name="buf">
<parameter_description> the #GstRingBuffer
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the device is active.

Since: 0.10.22.

MT safe.
</return>
</function>

<function name="gst_element_release_request_pad">
<description>
Makes the element free the previously requested pad as obtained
with gst_element_get_request_pad().

MT safe.

</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement to release the request pad of.
</parameter_description>
</parameter>
<parameter name="pad">
<parameter_description> the #GstPad to release.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_tag_setter_get_tag_list">
<description>
Returns: a current snapshot of the taglist used in the setter

</description>
<parameters>
<parameter name="setter">
<parameter_description> a #GstTagSetter
</parameter_description>
</parameter>
</parameters>
<return> a current snapshot of the taglist used in the setter
or NULL if none is used.
</return>
</function>

<function name="gst_structure_free">
<description>
Frees a #GstStructure and all its fields and values. The structure must not
have a parent when this function is called.

</description>
<parameters>
<parameter name="structure">
<parameter_description> the #GstStructure to free
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_remove_data_probe">
<description>
Removes a data probe from @pad.

</description>
<parameters>
<parameter name="pad">
<parameter_description> pad to remove the data probe handler from
</parameter_description>
</parameter>
<parameter name="handler_id">
<parameter_description> handler id returned from gst_pad_add_data_probe
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_x_overlay_set_xwindow_id">
<description>
This will call the video overlay&apos;s set_xwindow_id method. You should
use this method to tell to a XOverlay to display video output to a
specific XWindow. Passing 0 as the xwindow_id will tell the overlay to
stop using that window and create an internal one.

</description>
<parameters>
<parameter name="overlay">
<parameter_description> a #GstXOverlay to set the XWindow on.
</parameter_description>
</parameter>
<parameter name="xwindow_id">
<parameter_description> a #XID referencing the XWindow.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_byte_reader_get_uint16_le">
<description>
Read an unsigned 16 bit little endian integer into @val
and update the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #guint16 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_base_audio_sink_set_provide_clock">
<description>
Controls whether @sink will provide a clock or not. If @provide is %TRUE, 
gst_element_provide_clock() will return a clock that reflects the datarate
of @sink. If @provide is %FALSE, gst_element_provide_clock() will return NULL.

Since: 0.10.16

</description>
<parameters>
<parameter name="sink">
<parameter_description> a #GstBaseAudioSink
</parameter_description>
</parameter>
<parameter name="provide">
<parameter_description> new state
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_element_is_locked_state">
<description>
Checks if the state of an element is locked.
If the state of an element is locked, state changes of the parent don&apos;t
affect the element.
This way you can leave currently unused elements inside bins. Just lock their
state before changing the state from #GST_STATE_NULL.

MT safe.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement.
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if the element&apos;s state is locked.
</return>
</function>

<function name="gst_value_set_structure">
<description>
Sets the contents of @value to @structure.  The actual

Since: 0.10.15

</description>
<parameters>
<parameter name="value">
<parameter_description> a GValue initialized to GST_TYPE_STRUCTURE
</parameter_description>
</parameter>
<parameter name="structure">
<parameter_description> the structure to set the value to
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_value_list_get_size">
<description>
Gets the number of values contained in @value.


</description>
<parameters>
<parameter name="value">
<parameter_description> a #GValue of type #GST_TYPE_LIST
</parameter_description>
</parameter>
</parameters>
<return> the number of values
</return>
</function>

<function name="gst_pad_new_from_static_template">
<description>
Creates a new pad with the given name from the given static template.
If name is NULL, a guaranteed unique name (across all pads)
will be assigned.
This function makes a copy of the name so you can safely free the name.


</description>
<parameters>
<parameter name="templ">
<parameter_description> the #GstStaticPadTemplate to use
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> the name of the element
</parameter_description>
</parameter>
</parameters>
<return> a new #GstPad, or NULL in case of an error.
</return>
</function>

<function name="gst_tag_id3_genre_get">
<description>
Gets the ID3v1 genre name for a given ID.


</description>
<parameters>
<parameter name="id">
<parameter_description> ID of genre to query
</parameter_description>
</parameter>
</parameters>
<return> the genre or NULL if no genre is associated with that ID.
</return>
</function>

<function name="gst_pad_get_caps">
<description>
Gets the capabilities this pad can produce or consume.
Note that this method doesn&apos;t necessarily return the caps set by
gst_pad_set_caps() - use GST_PAD_CAPS() for that instead.
gst_pad_get_caps returns all possible caps a pad can operate with, using
the pad&apos;s get_caps function;
this returns the pad template caps if not explicitly set.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a  #GstPad to get the capabilities of.
</parameter_description>
</parameter>
</parameters>
<return> a newly allocated copy of the #GstCaps of this pad.

MT safe.
</return>
</function>

<function name="gst_structure_get_enum">
<description>
Sets the int pointed to by @value corresponding to the value of the
given field.  Caller is responsible for making sure the field exists,
has the correct type and that the enumtype is correct.


</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="fieldname">
<parameter_description> the name of a field
</parameter_description>
</parameter>
<parameter name="enumtype">
<parameter_description> the enum type of a field
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> a pointer to an int to set
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the value could be set correctly. If there was no field
with @fieldname or the existing field did not contain an enum of the given
type, this function returns FALSE.
</return>
</function>

<function name="gst_element_get_base_time">
<description>
Returns: the base time of the element.

</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement.
</parameter_description>
</parameter>
</parameters>
<return> the base time of the element.

MT safe.
</return>
</function>

<function name="gst_rtp_buffer_get_extension">
<description>
Check if the extension bit is set on the RTP packet in @buffer.


</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer
</parameter_description>
</parameter>
</parameters>
<return> TRUE if @buffer has the extension bit set.
</return>
</function>

<function name="gst_object_default_deep_notify">
<description>
A default deep_notify signal callback for an object. The user data
should contain a pointer to an array of strings that should be excluded
from the notify. The default handler will print the new value of the property
using g_print.

MT safe. This function grabs and releases @object&apos;s LOCK for getting its
path string.

</description>
<parameters>
<parameter name="object">
<parameter_description> the #GObject that signalled the notify.
</parameter_description>
</parameter>
<parameter name="orig">
<parameter_description> a #GstObject that initiated the notify.
</parameter_description>
</parameter>
<parameter name="pspec">
<parameter_description> a #GParamSpec of the property.
</parameter_description>
</parameter>
<parameter name="excluded_props">
<parameter_description> a set of user-specified properties to exclude or
NULL to show all changes.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_sdp_media_get_format">
<description>
Get the format information at position @idx in @media.


</description>
<parameters>
<parameter name="media">
<parameter_description> a #GstSDPMedia
</parameter_description>
</parameter>
<parameter name="idx">
<parameter_description> an index
</parameter_description>
</parameter>
</parameters>
<return> the format at position @idx.
</return>
</function>

<function name="gst_base_sink_wait_eos">
<description>
This function will block until @time is reached. It is usually called by
subclasses that use their own internal synchronisation but want to let the
EOS be handled by the base class.

This function should only be called with the PREROLL_LOCK held, like when
receiving an EOS event in the ::event vmethod.

The @time argument should be the running_time of when the EOS should happen
and will be adjusted with any latency and offset configured in the sink.

Since 0.10.15


</description>
<parameters>
<parameter name="sink">
<parameter_description> the sink
</parameter_description>
</parameter>
<parameter name="time">
<parameter_description> the running_time to be reached
</parameter_description>
</parameter>
<parameter name="jitter">
<parameter_description> the jitter to be filled with time diff (can be NULL)
</parameter_description>
</parameter>
</parameters>
<return> #GstFlowReturn
</return>
</function>

<function name="gst_segment_init">
<description>
The start/last_stop positions are set to 0 and the stop/duration
fields are set to -1 (unknown). The default rate of 1.0 and no
flags are set.

Initialize @segment to its default values.

</description>
<parameters>
<parameter name="segment">
<parameter_description> a #GstSegment structure.
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> the format of the segment.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_controller_get_value_arrays">
<description>
Function to be able to get an array of values for one or more given element
properties.

All fields of the %GstValueArray in the list must be filled correctly.
Especially the GstValueArray-&amp;gt;values arrays must be big enough to keep
the requested amount of values.

The types of the values in the array are the same as the property&apos;s type.

&amp;lt;note&amp;gt;&amp;lt;para&amp;gt;This doesn&apos;t modify the controlled GObject properties!&amp;lt;/para&amp;gt;&amp;lt;/note&amp;gt;


</description>
<parameters>
<parameter name="self">
<parameter_description> the controller that handles the values
</parameter_description>
</parameter>
<parameter name="timestamp">
<parameter_description> the time that should be processed
</parameter_description>
</parameter>
<parameter name="value_arrays">
<parameter_description> list to return the control-values in
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the given array(s) could be filled, %FALSE otherwise
</return>
</function>

<function name="gst_structure_get_clock_time">
<description>
Sets the clock time pointed to by @value corresponding to the clock time
of the given field.  Caller is responsible for making sure the field exists
and has the correct type.


</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="fieldname">
<parameter_description> the name of a field
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> a pointer to a #GstClockTime to set
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the value could be set correctly. If there was no field
with @fieldname or the existing field did not contain a #GstClockTime, this 
function returns FALSE.
</return>
</function>

<function name="gst_object_get_control_rate">
<description>
Obtain the control-rate for this @object. Audio processing #GstElement
objects will use this rate to sub-divide their processing loop and call
gst_object_sync_values() inbetween. The length of the processing segment
should be up to @control-rate nanoseconds.

If the @object is not under property control, this will return
%GST_CLOCK_TIME_NONE. This allows the element to avoid the sub-dividing.

The control-rate is not expected to change if the element is in
%GST_STATE_PAUSED or %GST_STATE_PLAYING.


</description>
<parameters>
<parameter name="object">
<parameter_description> the object that has controlled properties
</parameter_description>
</parameter>
</parameters>
<return> the control rate in nanoseconds
Since: 0.10.10
</return>
</function>

<function name="gst_element_link">
<description>
Links @src to @dest. The link must be from source to
destination; the other direction will not be tried. The function looks for
existing pads that aren&apos;t linked yet. It will request new pads if necessary.
Such pads need to be released manualy when unlinking.
If multiple links are possible, only one is established.

Make sure you have added your elements to a bin or pipeline with
gst_bin_add() before trying to link them.


</description>
<parameters>
<parameter name="src">
<parameter_description> a #GstElement containing the source pad.
</parameter_description>
</parameter>
<parameter name="dest">
<parameter_description> the #GstElement containing the destination pad.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the elements could be linked, FALSE otherwise.
</return>
</function>

<function name="gst_netaddress_set_address_bytes">
<description>
Set just the address bytes stored in @naddr into @address.


</description>
<parameters>
<parameter name="naddr">
<parameter_description> a network address
</parameter_description>
</parameter>
<parameter name="address">
<parameter_description> a location to store the result.
</parameter_description>
</parameter>
<parameter name="port">
<parameter_description> a location to store the port.
</parameter_description>
</parameter>
</parameters>
<return> number of bytes actually copied

Since: 0.10.22
</return>
</function>

<function name="GstChildProxy">
<description>
Will be emitted after the @object was removed from the @child_proxy.

</description>
<parameters>
<parameter name="child_proxy">
<parameter_description> the #GstChildProxy
</parameter_description>
</parameter>
<parameter name="object">
<parameter_description> the #GObject that was removed
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_value_intersect">
<description>
Calculates the intersection of two values.  If the values have
a non-empty intersection, the value representing the intersection
is placed in @dest.  If the intersection is non-empty, @dest is
not modified.


</description>
<parameters>
<parameter name="dest">
<parameter_description> a uninitialized #GValue that will hold the calculated
intersection value
</parameter_description>
</parameter>
<parameter name="value1">
<parameter_description> a value to intersect
</parameter_description>
</parameter>
<parameter name="value2">
<parameter_description> another value to intersect
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the intersection is non-empty
</return>
</function>

<function name="gst_fft_s32_new">
<description>
This returns a new #GstFFTS32 instance with the given parameters. It makes
sense to keep one instance for several calls for speed reasons.

@len must be even and to get the best performance a product of
2, 3 and 5. To get the next number with this characteristics use
gst_fft_next_fast_length().


</description>
<parameters>
<parameter name="len">
<parameter_description> Length of the FFT in the time domain
</parameter_description>
</parameter>
<parameter name="inverse">
<parameter_description> %TRUE if the #GstFFTS32 instance should be used for the inverse FFT
</parameter_description>
</parameter>
</parameters>
<return> a new #GstFFTS32 instance.
</return>
</function>

<function name="gst_buffer_straw_stop_pipeline">
<description>
Set @bin to #GST_STATE_NULL and release resource allocated in
gst_buffer_straw_start_pipeline().

You must have previously called gst_buffer_straw_start_pipeline() on
@pipeline and @pad.

</description>
<parameters>
<parameter name="bin">
<parameter_description> the pipeline previously started via gst_buffer_straw_start_pipeline()
</parameter_description>
</parameter>
<parameter name="pad">
<parameter_description> the pad previously passed to gst_buffer_straw_start_pipeline()
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_element_link_pads">
<description>
Links the two named pads of the source and destination elements.
Side effect is that if one of the pads has no parent, it becomes a
child of the parent of the other element.  If they have different
parents, the link fails.


</description>
<parameters>
<parameter name="src">
<parameter_description> a #GstElement containing the source pad.
</parameter_description>
</parameter>
<parameter name="srcpadname">
<parameter_description> the name of the #GstPad in source element or NULL for any pad.
</parameter_description>
</parameter>
<parameter name="dest">
<parameter_description> the #GstElement containing the destination pad.
</parameter_description>
</parameter>
<parameter name="destpadname">
<parameter_description> the name of the #GstPad in destination element,
or NULL for any pad.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the pads could be linked, FALSE otherwise.
</return>
</function>

<function name="gst_element_get_clock">
<description>
Gets the currently configured clock of the element. This is the clock as was
last set with gst_element_set_clock().


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement to get the clock of.
</parameter_description>
</parameter>
</parameters>
<return> the #GstClock of the element. unref after usage.

MT safe.
</return>
</function>

<function name="gst_rtcp_packet_get_count">
<description>
Get the count field in @packet.


</description>
<parameters>
<parameter name="packet">
<parameter_description> a valid #GstRTCPPacket
</parameter_description>
</parameter>
</parameters>
<return> The count field in @packet or -1 if @packet does not point to a
valid packet.
</return>
</function>

<function name="gst_rtp_buffer_set_packet_len">
<description>
Set the total @buffer size to @len. The data in the buffer will be made
larger if needed. Any padding will be removed from the packet. 

</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer
</parameter_description>
</parameter>
<parameter name="len">
<parameter_description> the new packet length
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_property_probe_get_values">
<description>
Gets the possible (probed) values for the given property,
requires the property to have been probed before.


</description>
<parameters>
<parameter name="probe">
<parameter_description> the #GstPropertyProbe object.
</parameter_description>
</parameter>
<parameter name="pspec">
<parameter_description> the #GParamSpec property identifier.
</parameter_description>
</parameter>
</parameters>
<return> A list of valid values for the given property.
</return>
</function>

<function name="gst_byte_reader_get_remaining">
<description>
Returns: The remaining number of bytes of @reader instance.

</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
</parameters>
<return> The remaining number of bytes of @reader instance.

Since: 0.10.22
</return>
</function>

<function name="gst_rtsp_message_remove_header">
<description>
Remove the @indx header with key @field from @msg. If @indx equals -1, all
headers will be removed.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstRTSPMessage
</parameter_description>
</parameter>
<parameter name="field">
<parameter_description> a #GstRTSPHeaderField
</parameter_description>
</parameter>
<parameter name="indx">
<parameter_description> the index of the header
</parameter_description>
</parameter>
</parameters>
<return> a #GstRTSPResult.
</return>
</function>

<function name="gst_task_pause">
<description>
Pauses @task. This method can also be called on a task in the
stopped state, in which case a thread will be started and will remain
in the paused state. This function does not wait for the task to complete
the paused state.


</description>
<parameters>
<parameter name="task">
<parameter_description> The #GstTask to pause
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the task could be paused.

MT safe.
</return>
</function>

<function name="gst_base_audio_src_set_provide_clock">
<description>
Controls whether @src will provide a clock or not. If @provide is %TRUE, 
gst_element_provide_clock() will return a clock that reflects the datarate
of @src. If @provide is %FALSE, gst_element_provide_clock() will return NULL.

Since: 0.10.16

</description>
<parameters>
<parameter name="src">
<parameter_description> a #GstBaseAudioSrc
</parameter_description>
</parameter>
<parameter name="provide">
<parameter_description> new state
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_riff_parse_strf_iavs">
<description>
Parses a interleaved (also known as &quot;complex&quot;)  stream´s strf
structure plus optionally some extradata from input data. This 
function takes ownership of @buf.


</description>
<parameters>
<parameter name="element">
<parameter_description> caller element (used for debugging/error).
</parameter_description>
</parameter>
<parameter name="buf">
<parameter_description> input data to be used for parsing, stripped from header.
</parameter_description>
</parameter>
<parameter name="strf">
<parameter_description> a pointer (returned by this function) to a filled-in
strf/iavs structure. Caller should free it.
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> a pointer (returned by this function) to a buffer
containing extradata for this particular stream (e.g.
codec initialization data).
</parameter_description>
</parameter>
</parameters>
<return> TRUE if parsing succeeded, otherwise FALSE.
</return>
</function>

<function name="gst_ring_buffer_read">
<description>
Read @len samples from the ringbuffer into the memory pointed 
to by @data.
The first sample should be read from position @sample in
the ringbuffer.

@len should not be a multiple of the segment size of the ringbuffer
although it is recommended.


</description>
<parameters>
<parameter name="buf">
<parameter_description> the #GstRingBuffer to read from
</parameter_description>
</parameter>
<parameter name="sample">
<parameter_description> the sample position of the data
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> where the data should be read
</parameter_description>
</parameter>
<parameter name="len">
<parameter_description> the number of samples in data to read
</parameter_description>
</parameter>
</parameters>
<return> The number of samples read from the ringbuffer or -1 on
error.

MT safe.
</return>
</function>

<function name="gst_task_get_state">
<description>
Get the current state of the task.


</description>
<parameters>
<parameter name="task">
<parameter_description> The #GstTask to query
</parameter_description>
</parameter>
</parameters>
<return> The #GstTaskState of the task

MT safe.
</return>
</function>

<function name="gst_segment_set_newsegment_full">
<description>
Update the segment structure with the field values of a new segment event.

</description>
<parameters>
<parameter name="segment">
<parameter_description> a #GstSegment structure.
</parameter_description>
</parameter>
<parameter name="update">
<parameter_description> flag indicating a new segment is started or updated
</parameter_description>
</parameter>
<parameter name="rate">
<parameter_description> the rate of the segment.
</parameter_description>
</parameter>
<parameter name="applied_rate">
<parameter_description> the applied rate of the segment.
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> the format of the segment.
</parameter_description>
</parameter>
<parameter name="start">
<parameter_description> the new start value
</parameter_description>
</parameter>
<parameter name="stop">
<parameter_description> the new stop value
</parameter_description>
</parameter>
<parameter name="time">
<parameter_description> the new stream time
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtp_buffer_get_csrc_count">
<description>
Get the CSRC count of the RTP packet in @buffer.


</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer
</parameter_description>
</parameter>
</parameters>
<return> the CSRC count of @buffer.
</return>
</function>

<function name="gst_sdp_media_connections_len">
<description>
Get the number of connection fields in @media.


</description>
<parameters>
<parameter name="media">
<parameter_description> a #GstSDPMedia
</parameter_description>
</parameter>
</parameters>
<return> the number of connections in @media.
</return>
</function>

<function name="gst_structure_get_double">
<description>
Sets the double pointed to by @value corresponding to the value of the
given field.  Caller is responsible for making sure the field exists
and has the correct type.


</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="fieldname">
<parameter_description> the name of a field
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> a pointer to a #GstFourcc to set
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the value could be set correctly. If there was no field
with @fieldname or the existing field did not contain a double, this 
function returns FALSE.
</return>
</function>

<function name="gst_message_new_application">
<description>
Create a new application-typed message. GStreamer will never create these
messages; they are a gift from us to you. Enjoy.


</description>
<parameters>
<parameter name="src">
<parameter_description> The object originating the message.
</parameter_description>
</parameter>
<parameter name="structure">
<parameter_description> The structure for the message. The message will take ownership of
the structure.
</parameter_description>
</parameter>
</parameters>
<return> The new application message.

MT safe.
</return>
</function>

<function name="gst_tag_setter_get_tag_merge_mode">
<description>
Queries the mode by which tags inside the setter are overwritten by tags
from events


</description>
<parameters>
<parameter name="setter">
<parameter_description> a #GstTagSetter
</parameter_description>
</parameter>
</parameters>
<return> the merge mode used inside the element.
</return>
</function>

<function name="gst_query_set_buffering_range">
<description>
Set the available query result fields in @query. 

Since: 0.10.20

</description>
<parameters>
<parameter name="query">
<parameter_description> a #GstQuery
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> the format to set for the @start and @stop values
</parameter_description>
</parameter>
<parameter name="start">
<parameter_description> the start to set
</parameter_description>
</parameter>
<parameter name="stop">
<parameter_description> the stop to set
</parameter_description>
</parameter>
<parameter name="estimated_total">
<parameter_description> estimated total amount of download time
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_basertppayload_set_options">
<description>
Set the rtp options of the payloader. These options will be set in the caps
of the payloader. Subclasses must call this method before calling
gst_basertppayload_push() or gst_basertppayload_set_outcaps().

</description>
<parameters>
<parameter name="payload">
<parameter_description> a #GstBaseRTPPayload
</parameter_description>
</parameter>
<parameter name="media">
<parameter_description> the media type (typically &quot;audio&quot; or &quot;video&quot;)
</parameter_description>
</parameter>
<parameter name="dynamic">
<parameter_description> if the payload type is dynamic
</parameter_description>
</parameter>
<parameter name="encoding_name">
<parameter_description> the encoding name 
</parameter_description>
</parameter>
<parameter name="clock_rate">
<parameter_description> the clock rate of the media
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_child_proxy_lookup">
<description>
Looks up which object and #GParamSpec would be effected by the given @name.


</description>
<parameters>
<parameter name="object">
<parameter_description> object to lookup the property in
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> name of the property to look up
</parameter_description>
</parameter>
<parameter name="target">
<parameter_description> pointer to a #GstObject that takes the real object to set property on
</parameter_description>
</parameter>
<parameter name="pspec">
<parameter_description> pointer to take the #GParamSpec describing the property
</parameter_description>
</parameter>
</parameters>
<return> TRUE if @target and @pspec could be found. FALSE otherwise. In that
case the values for @pspec and @target are not modified. Unref @target after
usage.

MT safe.
</return>
</function>

<function name="gst_debug_set_threshold_for_name">
<description>
Sets all categories which match the given glob style pattern to the given
level.

</description>
<parameters>
<parameter name="name">
<parameter_description> name of the categories to set
</parameter_description>
</parameter>
<parameter name="level">
<parameter_description> level to set them to
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="GstPipeline">
<description>
Whether or not to automatically flush all messages on the
pipeline&apos;s bus when going from READY to NULL state. Please see
gst_pipeline_set_auto_flush_bus() for more information on this option.

Since: 0.10.4

</description>
<parameters>
</parameters>
<return></return>
</function>

<function name="gst_riff_create_video_caps">
<description>

</description>
<parameters>
<parameter name="codec_fcc">
<parameter_description> fourCC codec for this codec.
</parameter_description>
</parameter>
<parameter name="strh">
<parameter_description> pointer to the strh stream header structure.
</parameter_description>
</parameter>
<parameter name="strf">
<parameter_description> pointer to the strf stream header structure, including any
data that is within the range of strf.size, but excluding any
additional data withint this chunk but outside strf.size.
</parameter_description>
</parameter>
<parameter name="strf_data">
<parameter_description> a #GstBuffer containing the additional data in the strf
chunk outside reach of strf.size. Ususally a palette.
</parameter_description>
</parameter>
<parameter name="strd_data">
<parameter_description> a #GstBuffer containing the data in the strd stream header
chunk. Usually codec initialization data.
</parameter_description>
</parameter>
<parameter name="codec_name">
<parameter_description> if given, will be filled with a human-readable codec name.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_iterator_push">
<description>
Pushes @other iterator onto @it. All calls performed on @it are
forwarded to @other. If @other returns #GST_ITERATOR_DONE, it is
popped again and calls are handled by @it again.

This function is mainly used by objects implementing the iterator
next function to recurse into substructures.

When gst_iterator_resync() is called on @it, @other will automatically be
popped.

MT safe.

</description>
<parameters>
<parameter name="it">
<parameter_description> The #GstIterator to use
</parameter_description>
</parameter>
<parameter name="other">
<parameter_description> The #GstIterator to push
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_caps_new_any">
<description>
Creates a new #GstCaps that indicates that it is compatible with
any media format.


</description>
<parameters>
</parameters>
<return> the new #GstCaps
</return>
</function>

<function name="gst_debug_set_default_threshold">
<description>
Sets the default threshold to the given level and updates all categories to
use this threshold.

</description>
<parameters>
<parameter name="level">
<parameter_description> level to set
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_event_new_tag">
<description>
Generates a metadata tag event from the given @taglist.


</description>
<parameters>
<parameter name="taglist">
<parameter_description> metadata list. The event will take ownership of @taglist.
</parameter_description>
</parameter>
</parameters>
<return> a new #GstEvent
</return>
</function>

<function name="gst_event_new_latency">
<description>
Create a new latency event. The event is sent upstream from the sinks and
notifies elements that they should add an additional @latency to the
timestamps before synchronising against the clock.

The latency is mostly used in live sinks and is always expressed in
the time format.


</description>
<parameters>
<parameter name="latency">
<parameter_description> the new latency value
</parameter_description>
</parameter>
</parameters>
<return> a new #GstEvent

Since: 0.10.12
</return>
</function>

<function name="gst_rtcp_packet_sdes_get_entry">
<description>
Get the data of the current SDES item entry. @type (when not NULL) will
contain the type of the entry. @data (when not NULL) will point to @len
bytes.

When @type refers to a text item, @data will point to a UTF8 string. Note
that this UTF8 string is NOT null-terminated. Use
gst_rtcp_packet_sdes_copy_entry() to get a null-termined copy of the entry.


</description>
<parameters>
<parameter name="packet">
<parameter_description> a valid SDES #GstRTCPPacket
</parameter_description>
</parameter>
<parameter name="type">
<parameter_description> result of the entry type
</parameter_description>
</parameter>
<parameter name="len">
<parameter_description> result length of the entry data
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> result entry data
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if there was valid data.
</return>
</function>

<function name="gst_bus_pop">
<description>
Get a message from the bus.


</description>
<parameters>
<parameter name="bus">
<parameter_description> a #GstBus to pop
</parameter_description>
</parameter>
</parameters>
<return> The #GstMessage that is on the bus, or NULL if the bus is empty.
The message is taken from the bus and needs to be unreffed with
gst_message_unref() after usage.

MT safe.
</return>
</function>

<function name="gst_base_src_query_latency">
<description>
Query the source for the latency parameters. @live will be TRUE when @src is
configured as a live source. @min_latency will be set to the difference
between the running time and the timestamp of the first buffer.
@max_latency is always the undefined value of -1.

This function is mostly used by subclasses. 


</description>
<parameters>
<parameter name="src">
<parameter_description> the source
</parameter_description>
</parameter>
<parameter name="live">
<parameter_description> if the source is live
</parameter_description>
</parameter>
<parameter name="min_latency">
<parameter_description> the min latency of the source
</parameter_description>
</parameter>
<parameter name="max_latency">
<parameter_description> the max latency of the source
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the query succeeded.

Since: 0.10.13
</return>
</function>

<function name="gst_rtp_buffer_ext_timestamp">
<description>
Update the @exttimestamp field with @timestamp. For the first call of the
method, @exttimestamp should point to a location with a value of -1.

This function makes sure that the returned value is a constantly increasing
value even in the case where there is a timestamp wraparound.


</description>
<parameters>
<parameter name="exttimestamp">
<parameter_description> a previous extended timestamp
</parameter_description>
</parameter>
<parameter name="timestamp">
<parameter_description> a new timestamp
</parameter_description>
</parameter>
</parameters>
<return> The extended timestamp of @timestamp.

Since: 0.10.15
</return>
</function>

<function name="gst_mixer_set_option">
<description>
Sets a name/value option in the mixer to the requested value.

</description>
<parameters>
<parameter name="mixer">
<parameter_description> The #GstMixer (a #GstElement) that owns the optionlist.
</parameter_description>
</parameter>
<parameter name="opts">
<parameter_description> The #GstMixerOptions that we operate on.
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> The requested new option value.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_remove_buffer_probe">
<description>
Removes a buffer probe from @pad.

</description>
<parameters>
<parameter name="pad">
<parameter_description> pad to remove the buffer probe handler from
</parameter_description>
</parameter>
<parameter name="handler_id">
<parameter_description> handler id returned from gst_pad_add_buffer_probe
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_base_rtp_audio_payload_get_adapter">
<description>
Gets the internal adapter used by the depayloader.


</description>
<parameters>
<parameter name="basertpaudiopayload">
<parameter_description> a #GstBaseRTPAudioPayload
</parameter_description>
</parameter>
</parameters>
<return> a #GstAdapter.

Since: 0.10.13
</return>
</function>

<function name="gst_task_join">
<description>
Joins @task. After this call, it is safe to unref the task
and clean up the lock set with gst_task_set_lock().

The task will automatically be stopped with this call.

This function cannot be called from within a task function as this
would cause a deadlock. The function will detect this and print a 
g_warning.


</description>
<parameters>
<parameter name="task">
<parameter_description> The #GstTask to join
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the task could be joined.

MT safe.
</return>
</function>

<function name="gst_tuner_list_norms">
<description>
Retrieve a GList of available #GstTunerNorm settings for the currently
tuned channel on the given tuner object.


</description>
<parameters>
<parameter name="tuner">
<parameter_description> the #GstTuner (*a #GstElement) to get the list of norms from.
</parameter_description>
</parameter>
</parameters>
<return> A list of norms available on the current channel for this
tuner object. The list is owned by the GstTuner and must not
be freed.
</return>
</function>

<function name="gst_registry_find_feature">
<description>
Find the pluginfeature with the given name and type in the registry.


</description>
<parameters>
<parameter name="registry">
<parameter_description> the registry to search
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> the pluginfeature name to find
</parameter_description>
</parameter>
<parameter name="type">
<parameter_description> the pluginfeature type to find
</parameter_description>
</parameter>
</parameters>
<return> The pluginfeature with the given name and type or NULL
if the plugin was not found. gst_object_unref() after usage.

MT safe.
</return>
</function>

<function name="gst_bit_reader_init">
<description>
Initializes a #GstBitReader instance to read from @data. This function
can be called on already initialized instances.

Since: 0.10.22

</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstBitReader instance
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> Data from which the #GstBitReader should read
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> Size of @data in bytes
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_tag_setter_add_tag_values">
<description>
Adds the given tag / GValue pairs on the setter using the given merge mode.
The list must be terminated with NULL.

</description>
<parameters>
<parameter name="setter">
<parameter_description> a #GstTagSetter
</parameter_description>
</parameter>
<parameter name="mode">
<parameter_description> the mode to use
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to set
</parameter_description>
</parameter>
<parameter name="Varargs">
<parameter_description> more tag / GValue pairs to set
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_value_get_fraction_range_max">
<description>
Gets the maximum of the range specified by @value.


</description>
<parameters>
<parameter name="value">
<parameter_description> a GValue initialized to GST_TYPE_FRACTION_RANGE
</parameter_description>
</parameter>
</parameters>
<return> the maximum of the range
</return>
</function>

<function name="gst_video_format_new_caps">
<description>
Creates a new #GstCaps object based on the parameters provided.

Since: 0.10.16


</description>
<parameters>
<parameter name="format">
<parameter_description> the #GstVideoFormat describing the raw video format
</parameter_description>
</parameter>
<parameter name="width">
<parameter_description> width of video
</parameter_description>
</parameter>
<parameter name="height">
<parameter_description> height of video
</parameter_description>
</parameter>
<parameter name="framerate_n">
<parameter_description> numerator of frame rate
</parameter_description>
</parameter>
<parameter name="framerate_d">
<parameter_description> denominator of frame rate
</parameter_description>
</parameter>
<parameter name="par_n">
<parameter_description> numerator of pixel aspect ratio
</parameter_description>
</parameter>
<parameter name="par_d">
<parameter_description> denominator of pixel aspect ratio
</parameter_description>
</parameter>
</parameters>
<return> a new #GstCaps object, or NULL if there was an error
</return>
</function>

<function name="gst_netaddress_get_ip4_address">
<description>
Get the IPv4 address stored in @naddr into @address. This function requires
that the address type of @naddr is of type #GST_NET_TYPE_IP4.


</description>
<parameters>
<parameter name="naddr">
<parameter_description> a network address
</parameter_description>
</parameter>
<parameter name="address">
<parameter_description> a location to store the address.
</parameter_description>
</parameter>
<parameter name="port">
<parameter_description> a location to store the port.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the address could be retrieved.
</return>
</function>

<function name="gst_pad_check_pull_range">
<description>
Checks if a gst_pad_pull_range() can be performed on the peer
source pad. This function is used by plugins that want to check
if they can use random access on the peer source pad.

The peer sourcepad can implement a custom #GstPadCheckGetRangeFunction
if it needs to perform some logic to determine if pull_range is
possible.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a sink #GstPad.
</parameter_description>
</parameter>
</parameters>
<return> a gboolean with the result.

MT safe.
</return>
</function>

<function name="gst_rtsp_connection_connect">
<description>
Attempt to connect to the url of @conn made with
gst_rtsp_connection_create(). If @timeout is #NULL this function can block
forever. If @timeout contains a valid timeout, this function will return
#GST_RTSP_ETIMEOUT after the timeout expired.

This function can be cancelled with gst_rtsp_connection_flush().


</description>
<parameters>
<parameter name="conn">
<parameter_description> a #GstRTSPConnection 
</parameter_description>
</parameter>
<parameter name="timeout">
<parameter_description> a #GTimeVal timeout
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK when a connection could be made.
</return>
</function>

<function name="gst_pb_utils_get_encoder_description">
<description>
Returns: a newly-allocated description string, or NULL on error. Free

</description>
<parameters>
<parameter name="caps">
<parameter_description> the (fixed) #GstCaps for which an encoder description is needed
</parameter_description>
</parameter>
</parameters>
<return> a newly-allocated description string, or NULL on error. Free
string with g_free() when not needed any longer.
</return>
</function>

<function name="gst_structure_has_field">
<description>
Check if @structure contains a field named @fieldname.


</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="fieldname">
<parameter_description> the name of a field
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the structure contains a field with the given name
</return>
</function>

<function name="gst_pad_get_direction">
<description>
Gets the direction of the pad. The direction of the pad is
decided at construction time so this function does not take
the LOCK.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad to get the direction of.
</parameter_description>
</parameter>
</parameters>
<return> the #GstPadDirection of the pad.

MT safe.
</return>
</function>

<function name="gst_structure_remove_all_fields">
<description>
Removes all fields in a GstStructure.

</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_net_time_packet_serialize">
<description>
Serialized a #GstNetTimePacket into a newly-allocated sequence of
#GST_NET_TIME_PACKET_SIZE bytes, in network byte order. The value returned is
suitable for passing to write(2) or sendto(2) for communication over the
network.

MT safe. Caller owns return value (g_free to free).


</description>
<parameters>
<parameter name="packet">
<parameter_description> the #GstNetTimePacket
</parameter_description>
</parameter>
</parameters>
<return> A newly allocated sequence of #GST_NET_TIME_PACKET_SIZE bytes.
</return>
</function>

<function name="gst_pad_new">
<description>
Creates a new pad with the given name in the given direction.
If name is NULL, a guaranteed unique name (across all pads)
will be assigned.
This function makes a copy of the name so you can safely free the name.


</description>
<parameters>
<parameter name="name">
<parameter_description> the name of the new pad.
</parameter_description>
</parameter>
<parameter name="direction">
<parameter_description> the #GstPadDirection of the pad.
</parameter_description>
</parameter>
</parameters>
<return> a new #GstPad, or NULL in case of an error.

MT safe.
</return>
</function>

<function name="gst_audio_structure_set_int">
<description>
Do not use anymore.

Deprecated: use gst_structure_set()

</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="flag">
<parameter_description> a set of #GstAudioFieldFlag
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_sdp_media_get_num_ports">
<description>
Get the number of ports for @media.


</description>
<parameters>
<parameter name="media">
<parameter_description> a #GstSDPMedia
</parameter_description>
</parameter>
</parameters>
<return> the number of ports for @media.
</return>
</function>

<function name="gst_tag_is_fixed">
<description>
Checks if the given tag is fixed. A fixed tag can only contain one value.
Unfixed tags can contain lists of values.


</description>
<parameters>
<parameter name="tag">
<parameter_description> tag to check
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if the given tag is fixed.
</return>
</function>

<function name="gst_bit_reader_new_from_buffer">
<description>
Create a new #GstBitReader instance, which will read from the
#GstBuffer @buffer.


</description>
<parameters>
<parameter name="buffer">
<parameter_description> Buffer from which the #GstBitReader should read
</parameter_description>
</parameter>
</parameters>
<return> a new #GstBitReader instance

Since: 0.10.22
</return>
</function>

<function name="gst_controller_set_disabled">
<description>
This function is used to disable all properties of the #GstController
for some time, i.e. gst_controller_sync_values() will do nothing.

Since: 0.10.14

</description>
<parameters>
<parameter name="self">
<parameter_description> the #GstController which should be disabled
</parameter_description>
</parameter>
<parameter name="disabled">
<parameter_description> boolean that specifies whether to disable the controller
or not.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_query_parse_position">
<description>
Parse a position query, writing the format into @format, and the position
into @cur, if the respective parameters are non-NULL.

</description>
<parameters>
<parameter name="query">
<parameter_description> a #GstQuery
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> the storage for the #GstFormat of the position values (may be NULL)
</parameter_description>
</parameter>
<parameter name="cur">
<parameter_description> the storage for the current position (may be NULL)
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_structure_has_field_typed">
<description>
Check if @structure contains a field named @fieldname and with GType @type.


</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="fieldname">
<parameter_description> the name of a field
</parameter_description>
</parameter>
<parameter name="type">
<parameter_description> the type of a value
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the structure contains a field with the given name and type
</return>
</function>

<function name="gst_collect_pads_stop">
<description>
Stops the processing of data in the collect_pads. this function
will also unblock any blocking operations.

MT safe.

</description>
<parameters>
<parameter name="pads">
<parameter_description> the collectspads to use
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_base_src_get_do_timestamp">
<description>
Query if @src timestamps outgoing buffers based on the current running_time.


</description>
<parameters>
<parameter name="src">
<parameter_description> the source
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the base class will automatically timestamp outgoing buffers.

Since: 0.10.15
</return>
</function>

<function name="gst_registry_feature_filter">
<description>
Runs a filter against all features of the plugins in the registry
and returns a GList with the results.
If the first flag is set, only the first match is
returned (as a list with a single object).


</description>
<parameters>
<parameter name="registry">
<parameter_description> registry to query
</parameter_description>
</parameter>
<parameter name="filter">
<parameter_description> the filter to use
</parameter_description>
</parameter>
<parameter name="first">
<parameter_description> only return first match
</parameter_description>
</parameter>
<parameter name="user_data">
<parameter_description> user data passed to the filter function
</parameter_description>
</parameter>
</parameters>
<return> a #GList of #GstPluginFeature. Use gst_plugin_feature_list_free()
after usage.

MT safe.
</return>
</function>

<function name="gst_rtsp_connection_read">
<description>
Attempt to read @size bytes into @data from the connected @conn, blocking up to
the specified @timeout. @timeout can be #NULL, in which case this function
might block forever.

This function can be cancelled with gst_rtsp_connection_flush().


</description>
<parameters>
<parameter name="conn">
<parameter_description> a #GstRTSPConnection
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> the data to read
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> the size of @data
</parameter_description>
</parameter>
<parameter name="timeout">
<parameter_description> a timeout value or #NULL
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK on success.
</return>
</function>

<function name="gst_poll_fd_can_write">
<description>
Check if @fd in @set can be used for writing.


</description>
<parameters>
<parameter name="set">
<parameter_description> a file descriptor set.
</parameter_description>
</parameter>
<parameter name="fd">
<parameter_description> a file descriptor.
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the descriptor can be used for writing.

Since: 0.10.18
</return>
</function>

<function name="gst_rtsp_transport_init">
<description>
Initialize @transport so that it can be used.


</description>
<parameters>
<parameter name="transport">
<parameter_description> a #GstRTSPTransport
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK. 
</return>
</function>

<function name="gst_element_save_thyself">
<description>
Saves the element as part of the given XML structure.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement to save.
</parameter_description>
</parameter>
<parameter name="parent">
<parameter_description> the xml parent node.
</parameter_description>
</parameter>
</parameters>
<return> the new #xmlNodePtr.
</return>
</function>

<function name="gst_parse_bin_from_description">
<description>
This is a convenience wrapper around gst_parse_launch() to create a
#GstBin from a gst-launch-style pipeline description. See
gst_parse_launch() and the gst-launch man page for details about the
syntax. Ghost pads on the bin for unlinked source or sink pads
within the bin can automatically be created (but only a maximum of
one ghost pad for each direction will be created; if you expect
multiple unlinked source pads or multiple unlinked sink pads
and want them all ghosted, you will have to create the ghost pads
yourself).


</description>
<parameters>
<parameter name="bin_description">
<parameter_description> command line describing the bin
</parameter_description>
</parameter>
<parameter name="ghost_unlinked_pads">
<parameter_description> whether to automatically create ghost pads
for unlinked source or sink pads within the bin
</parameter_description>
</parameter>
<parameter name="err">
<parameter_description> where to store the error message in case of an error, or NULL
</parameter_description>
</parameter>
</parameters>
<return> a newly-created bin, or NULL if an error occurred.

Since: 0.10.3
</return>
</function>

<function name="gst_video_orientation_set_hflip">
<description>
Set the horizontal flipping state (%TRUE for flipped) for the given object.

Since: 0.10.11

</description>
<parameters>
<parameter name="video_orientation">
<parameter_description> #GstVideoOrientation interface of a #GstElement
</parameter_description>
</parameter>
<parameter name="flip">
<parameter_description> use flipping
</parameter_description>
</parameter>
</parameters>
<return> %TRUE in case the element supports flipping
</return>
</function>

<function name="gst_element_factory_get_longname">
<description>
Gets the longname for this factory


</description>
<parameters>
<parameter name="factory">
<parameter_description> a #GstElementFactory
</parameter_description>
</parameter>
</parameters>
<return> the longname
</return>
</function>

<function name="gst_collect_pads_add_pad_full">
<description>
Add a pad to the collection of collect pads. The pad has to be
a sinkpad. The refcount of the pad is incremented. Use
gst_collect_pads_remove_pad() to remove the pad from the collection
again.

You specify a size for the returned #GstCollectData structure
so that you can use it to store additional information.

You can also specify a #GstCollectDataDestroyNotify that will be called
just before the #GstCollectData structure is freed. It is passed the
pointer to the structure and should free any custom memory and resources
allocated for it.

The pad will be automatically activated in push mode when @pads is
started.

Since: 0.10.12


</description>
<parameters>
<parameter name="pads">
<parameter_description> the collectspads to use
</parameter_description>
</parameter>
<parameter name="pad">
<parameter_description> the pad to add
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> the size of the returned #GstCollectData structure
</parameter_description>
</parameter>
<parameter name="destroy_notify">
<parameter_description> function to be called before the returned #GstCollectData
structure is freed
</parameter_description>
</parameter>
</parameters>
<return> a new #GstCollectData to identify the new pad. Or NULL
if wrong parameters are supplied.

MT safe.
</return>
</function>

<function name="gst_query_parse_uri">
<description>
Parse an URI query, writing the URI into @uri as a newly
allocated string, if the respective parameters are non-NULL.
Free the string with g_free() after usage.

Since: 0.10.22

</description>
<parameters>
<parameter name="query">
<parameter_description> a #GstQuery
</parameter_description>
</parameter>
<parameter name="uri">
<parameter_description> the storage for the current URI (may be NULL)
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_data_queue_new">
<description>

</description>
<parameters>
<parameter name="checkfull">
<parameter_description> the callback used to tell if the element considers the queue full
or not.
</parameter_description>
</parameter>
<parameter name="checkdata">
<parameter_description> a #gpointer that will be given in the @checkfull callback.
</parameter_description>
</parameter>
</parameters>
<return> a new #GstDataQueue.
</return>
</function>

<function name="gst_xml_make_element">
<description>
Load the element from the XML description


</description>
<parameters>
<parameter name="cur">
<parameter_description> the xml node
</parameter_description>
</parameter>
<parameter name="parent">
<parameter_description> the parent of this object when it&apos;s loaded
</parameter_description>
</parameter>
</parameters>
<return> the new element
</return>
</function>

<function name="gst_rtcp_packet_rr_get_ssrc">
<description>
Get the ssrc field of the RR @packet.


</description>
<parameters>
<parameter name="packet">
<parameter_description> a valid RR #GstRTCPPacket
</parameter_description>
</parameter>
</parameters>
<return> the ssrc.
</return>
</function>

<function name="gst_pad_get_range">
<description>
When @pad is flushing this function returns #GST_FLOW_WRONG_STATE
immediatly.

Calls the getrange function of @pad, see #GstPadGetRangeFunction for a
description of a getrange function. If @pad has no getrange function
installed (see gst_pad_set_getrange_function()) this function returns
#GST_FLOW_NOT_SUPPORTED.

This is a lowlevel function. Usualy gst_pad_pull_range() is used.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a src #GstPad, returns #GST_FLOW_ERROR if not.
</parameter_description>
</parameter>
<parameter name="offset">
<parameter_description> The start offset of the buffer
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> The length of the buffer
</parameter_description>
</parameter>
<parameter name="buffer">
<parameter_description> a pointer to hold the #GstBuffer, returns #GST_FLOW_ERROR if %NULL.
</parameter_description>
</parameter>
</parameters>
<return> a #GstFlowReturn from the pad.

MT safe.
</return>
</function>

<function name="gst_iterator_new_list">
<description>
Create a new iterator designed for iterating @list.

The list you iterate is usually part of a data structure @owner and is
protected with @lock. 

The iterator will use @lock to retrieve the next item of the list and it
will then call the @item function before releasing @lock again.

The @item function usualy makes sure that the item remains alive while
@lock is released and the application is using the item. The application is
responsible for freeing/unreffing the item after usage as explained in
gst_iterator_next().

When a concurrent update to the list is performed, usually by @owner while
holding @lock, @master_cookie will be updated. The iterator implementation
will notice the update of the cookie and will return #GST_ITERATOR_RESYNC to
the user of the iterator in the next call to gst_iterator_next().

@owner will be passed to the @free function when the iterator is freed.


</description>
<parameters>
<parameter name="type">
<parameter_description> #GType of elements
</parameter_description>
</parameter>
<parameter name="lock">
<parameter_description> pointer to a #GMutex protecting the list.
</parameter_description>
</parameter>
<parameter name="master_cookie">
<parameter_description> pointer to a guint32 that is incremented when the list
is changed.
</parameter_description>
</parameter>
<parameter name="list">
<parameter_description> pointer to the list
</parameter_description>
</parameter>
<parameter name="owner">
<parameter_description> object owning the list
</parameter_description>
</parameter>
<parameter name="item">
<parameter_description> function to call for each item
</parameter_description>
</parameter>
<parameter name="free">
<parameter_description> function to call when the iterator is freed
</parameter_description>
</parameter>
</parameters>
<return> the new #GstIterator for @list.

MT safe.
</return>
</function>

<function name="gst_rtsp_message_new">
<description>
Create a new initialized #GstRTSPMessage.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a location for the new #GstRTSPMessage
</parameter_description>
</parameter>
</parameters>
<return> a #GstRTSPResult. Free with gst_rtsp_message_free().
</return>
</function>

<function name="GstXML">
<description>
Signals that a new object has been deserialized.

</description>
<parameters>
<parameter name="xml">
<parameter_description> the xml persistence instance
</parameter_description>
</parameter>
<parameter name="object">
<parameter_description> the object that has been loaded
</parameter_description>
</parameter>
<parameter name="xml_node">
<parameter_description> the related xml_node pointer to the document tree
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_peer_get_caps">
<description>
Gets the capabilities of the peer connected to this pad.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a  #GstPad to get the peer capabilities of.
</parameter_description>
</parameter>
</parameters>
<return> the #GstCaps of the peer pad. This function returns a new caps, so
use gst_caps_unref to get rid of it. this function returns NULL if there is
no peer pad.
</return>
</function>

<function name="gst_audio_duration_from_pad_buffer">
<description>
Calculate length in nanoseconds of audio buffer @buf based on capabilities of
@pad.


</description>
<parameters>
<parameter name="pad">
<parameter_description> the #GstPad to get the caps from
</parameter_description>
</parameter>
<parameter name="buf">
<parameter_description> the #GstBuffer
</parameter_description>
</parameter>
</parameters>
<return> the length.
</return>
</function>

<function name="gst_byte_reader_peek_float64_be">
<description>
Read a 64 bit big endian integer into @val
but keep the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #gdouble to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_pb_utils_init">
<description>
Initialises the base utils support library. This function is not
thread-safe. Applications should call it after calling gst_init(),
plugins should call it from their plugin_init function.

This function may be called multiple times. It will do nothing if the
library has already been initialised.

Since: 0.10.12

</description>
<parameters>
</parameters>
<return></return>
</function>

<function name="gst_rtp_buffer_pad_to">
<description>
Set the amount of padding in the RTP packet in @buffer to
@len. If @len is 0, the padding is removed.

NOTE: This function does not work correctly.

</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer
</parameter_description>
</parameter>
<parameter name="len">
<parameter_description> the new amount of padding
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_dispatcher">
<description>
Invokes the given dispatcher function on each respective peer of
all pads that are internally linked to the given pad.
The GstPadDispatcherFunction should return TRUE when no further pads
need to be processed.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad to dispatch.
</parameter_description>
</parameter>
<parameter name="dispatch">
<parameter_description> the #GstDispatcherFunction to call.
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> gpointer user data passed to the dispatcher function.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if one of the dispatcher functions returned TRUE.
</return>
</function>

<function name="gst_index_entry_free">
<description>
Free the memory used by the given entry.

</description>
<parameters>
<parameter name="entry">
<parameter_description> the entry to free
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_control_source_bind">
<description>
Binds a #GstControlSource to a specific property. This must be called only once for a
#GstControlSource.


</description>
<parameters>
<parameter name="self">
<parameter_description> the #GstControlSource object
</parameter_description>
</parameter>
<parameter name="pspec">
<parameter_description> #GParamSpec for the property for which this #GstControlSource should generate values.
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the #GstControlSource was bound correctly, %FALSE otherwise.
</return>
</function>

<function name="gst_fft_s32_fft">
<description>
This performs the FFT on @timedata and puts the result in @freqdata.

@timedata must have as many samples as specified with the @len parameter while
allocating the #GstFFTS32 instance with gst_fft_s32_new().

@freqdata must be large enough to hold @len/2 + 1 #GstFFTS32Complex frequency
domain samples.


</description>
<parameters>
<parameter name="self">
<parameter_description> #GstFFTS32 instance for this call
</parameter_description>
</parameter>
<parameter name="timedata">
<parameter_description> Buffer of the samples in the time domain
</parameter_description>
</parameter>
<parameter name="freqdata">
<parameter_description> Target buffer for the samples in the frequency domain
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pipeline_auto_clock">
<description>
Let @pipeline select a clock automatically. This is the default
behaviour.

Use this function if you previous forced a fixed clock with
gst_pipeline_use_clock() and want to restore the default
pipeline clock selection algorithm.

MT safe.

</description>
<parameters>
<parameter name="pipeline">
<parameter_description> a #GstPipeline
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_base_rtp_depayload_push_ts">
<description>
Push @out_buf to the peer of @filter. This function takes ownership of
@out_buf.

Unlike gst_base_rtp_depayload_push(), this function will apply @timestamp
on the outgoing buffer, using the configured clock_rate to convert the
timestamp to a valid GStreamer clock time.


</description>
<parameters>
<parameter name="filter">
<parameter_description> a #GstBaseRTPDepayload
</parameter_description>
</parameter>
<parameter name="timestamp">
<parameter_description> an RTP timestamp to apply
</parameter_description>
</parameter>
<parameter name="out_buf">
<parameter_description> a #GstBuffer
</parameter_description>
</parameter>
</parameters>
<return> a #GstFlowReturn.
</return>
</function>

<function name="gst_collect_pads_take_buffer">
<description>
Get a subbuffer of @size bytes from the given pad @data. Flushes the amount
of read bytes.

This function should be called with @pads LOCK held, such as in the callback.

Since: 0.10.18


</description>
<parameters>
<parameter name="pads">
<parameter_description> the collectspads to query
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> the data to use
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> the number of bytes to read
</parameter_description>
</parameter>
</parameters>
<return> A sub buffer. The size of the buffer can be less that requested.
A return of NULL signals that the pad is end-of-stream.
Unref the buffer after use.

MT safe.
</return>
</function>

<function name="gst_element_factory_get_element_type">
<description>
Get the #GType for elements managed by this factory. The type can
only be retrieved if the element factory is loaded, which can be
assured with gst_plugin_feature_load().


</description>
<parameters>
<parameter name="factory">
<parameter_description> factory to get managed #GType from
</parameter_description>
</parameter>
</parameters>
<return> the #GType for elements managed by this factory or 0 if
the factory is not loaded.
</return>
</function>

<function name="gst_uri_get_location">
<description>
Extracts the location out of a given valid URI, ie. the protocol and &quot;://&quot;
are stripped from the URI, which means that the location returned includes
the hostname if one is specified. The returned string must be freed using
g_free().


</description>
<parameters>
<parameter name="uri">
<parameter_description> A URI string
</parameter_description>
</parameter>
</parameters>
<return> The location for this URI. Returns NULL if the URI isn&apos;t valid. If
the URI does not contain a location, an empty string is returned.
</return>
</function>

<function name="gst_index_get_group">
<description>
Get the id of the current group.


</description>
<parameters>
<parameter name="index">
<parameter_description> the index to get the current group from
</parameter_description>
</parameter>
</parameters>
<return> the id of the current group.
</return>
</function>

<function name="gst_update_registry">
<description>
Forces GStreamer to re-scan its plugin paths and update the default
plugin registry.

Applications will almost never need to call this function, it is only
useful if the application knows new plugins have been installed (or old
ones removed) since the start of the application (or, to be precise, the
first call to gst_init()) and the application wants to make use of any
newly-installed plugins without restarting the application.

Applications should assume that the registry update is neither atomic nor
thread-safe and should therefore not have any dynamic pipelines running
(including the playbin and decodebin elements) and should also not create
any elements or access the GStreamer registry while the update is in
progress.

Note that this function may block for a significant amount of time.


</description>
<parameters>
</parameters>
<return> %TRUE if the registry has been updated successfully (does not
imply that there were changes), otherwise %FALSE.

Since: 0.10.12
</return>
</function>

<function name="gst_missing_element_message_new">
<description>
Creates a missing-plugin message for @element to notify the application
that a certain required element is missing. This function is mainly for
use in plugins.


</description>
<parameters>
<parameter name="element">
<parameter_description> the #GstElement posting the message
</parameter_description>
</parameter>
<parameter name="factory_name">
<parameter_description> the name of the missing element (element factory),
e.g. &quot;videoscale&quot; or &quot;cdparanoiasrc&quot;
</parameter_description>
</parameter>
</parameters>
<return> a new #GstMessage, or NULL on error
</return>
</function>

<function name="gst_bin_get_by_interface">
<description>
Looks for an element inside the bin that implements the given
interface. If such an element is found, it returns the element.
You can cast this element to the given interface afterwards.  If you want
all elements that implement the interface, use
gst_bin_iterate_all_by_interface(). This function recurses into child bins.

MT safe.  Caller owns returned reference.


</description>
<parameters>
<parameter name="bin">
<parameter_description> a #GstBin
</parameter_description>
</parameter>
<parameter name="iface">
<parameter_description> the #GType of an interface
</parameter_description>
</parameter>
</parameters>
<return> A #GstElement inside the bin implementing the interface
</return>
</function>

<function name="gst_video_format_get_component_offset">
<description>
Calculates the offset (in bytes) of the first pixel of the component
with index @component.  For packed formats, this will typically be a
small integer (0, 1, 2, 3).  For planar formats, this will be a
(relatively) large offset to the beginning of the second or third
component planes.  See @gst_video_format_get_row_stride for a description
of the component index.

Since: 0.10.16


</description>
<parameters>
<parameter name="format">
<parameter_description> a #GstVideoFormat
</parameter_description>
</parameter>
<parameter name="component">
<parameter_description> the component index
</parameter_description>
</parameter>
<parameter name="width">
<parameter_description> the width of video
</parameter_description>
</parameter>
<parameter name="height">
<parameter_description> the height of video
</parameter_description>
</parameter>
</parameters>
<return> offset of component @component
</return>
</function>

<function name="gst_element_get_query_types">
<description>
Get an array of query types from the element.
If the element doesn&apos;t implement a query types function,
the query will be forwarded to the peer of a random linked sink pad.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement to query
</parameter_description>
</parameter>
</parameters>
<return> An array of #GstQueryType elements that should not
be freed or modified.

MT safe.
</return>
</function>

<function name="gst_base_sink_set_blocksize">
<description>
Set the number of bytes that the sink will pull when it is operating in pull
mode.

Since: 0.10.22

</description>
<parameters>
<parameter name="sink">
<parameter_description> a #GstBaseSink
</parameter_description>
</parameter>
<parameter name="blocksize">
<parameter_description> the blocksize in bytes
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_set_activatepull_function">
<description>
Sets the given activate_pull function for the pad. An activate_pull function
prepares the element and any upstream connections for pulling. See XXX
part-activation.txt for details.

</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad.
</parameter_description>
</parameter>
<parameter name="activatepull">
<parameter_description> the #GstPadActivateModeFunction to set.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_riff_read_chunk">
<description>
Reads a single chunk of data. Since 0.10.8 &apos;JUNK&apos; chunks
are skipped automatically.


</description>
<parameters>
<parameter name="element">
<parameter_description> caller element (used for debugging).
</parameter_description>
</parameter>
<parameter name="pad">
<parameter_description> pad to pull data from.
</parameter_description>
</parameter>
<parameter name="offset">
<parameter_description> offset to pull from, incremented by this function.
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> fourcc of the chunk (returned by this function).
</parameter_description>
</parameter>
<parameter name="chunk_data">
<parameter_description> buffer (returned by this function).
</parameter_description>
</parameter>
</parameters>
<return> flow status.
</return>
</function>

<function name="gst_format_register">
<description>
Create a new GstFormat based on the nick or return an
already registered format with that nick.


</description>
<parameters>
<parameter name="nick">
<parameter_description> The nick of the new format
</parameter_description>
</parameter>
<parameter name="description">
<parameter_description> The description of the new format
</parameter_description>
</parameter>
</parameters>
<return> A new GstFormat or an already registered format
with the same nick.

MT safe.
</return>
</function>

<function name="gst_debug_construct_term_color">
<description>
Constructs a string that can be used for getting the desired color in color
terminals.
You need to free the string after use.


</description>
<parameters>
<parameter name="colorinfo">
<parameter_description> the color info
</parameter_description>
</parameter>
</parameters>
<return> a string containing the color definition
</return>
</function>

<function name="gst_pb_utils_get_codec_description">
<description>
Returns: a newly-allocated description string, or NULL on error. Free

</description>
<parameters>
<parameter name="caps">
<parameter_description> the (fixed) #GstCaps for which an format description is needed
</parameter_description>
</parameter>
</parameters>
<return> a newly-allocated description string, or NULL on error. Free
string with g_free() when not needed any longer.
</return>
</function>

<function name="gst_net_time_provider_new">
<description>
Allows network clients to get the current time of @clock.


</description>
<parameters>
<parameter name="clock">
<parameter_description> a #GstClock to export over the network
</parameter_description>
</parameter>
<parameter name="address">
<parameter_description> an address to bind on as a dotted quad (xxx.xxx.xxx.xxx), or NULL
to bind to all addresses
</parameter_description>
</parameter>
<parameter name="port">
<parameter_description> a port to bind on, or 0 to let the kernel choose
</parameter_description>
</parameter>
</parameters>
<return> the new #GstNetTimeProvider, or NULL on error
</return>
</function>

<function name="gst_class_signal_emit_by_name">
<description>
emits the named class signal.

</description>
<parameters>
<parameter name="object">
<parameter_description> a #GstObject that emits the signal
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> the name of the signal to emit
</parameter_description>
</parameter>
<parameter name="self">
<parameter_description> data for the signal
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_message_new_async_done">
<description>
The message is posted when elements completed an ASYNC state change.


</description>
<parameters>
<parameter name="src">
<parameter_description> The object originating the message.
</parameter_description>
</parameter>
</parameters>
<return> The new async_done message.

MT safe.

Since: 0.10.13
</return>
</function>

<function name="gst_rtcp_packet_sr_set_sender_info">
<description>
Set the given values in the SR packet @packet.

</description>
<parameters>
<parameter name="packet">
<parameter_description> a valid SR #GstRTCPPacket
</parameter_description>
</parameter>
<parameter name="ssrc">
<parameter_description> the SSRC 
</parameter_description>
</parameter>
<parameter name="ntptime">
<parameter_description> the NTP time
</parameter_description>
</parameter>
<parameter name="rtptime">
<parameter_description> the RTP time
</parameter_description>
</parameter>
<parameter name="packet_count">
<parameter_description> the packet count
</parameter_description>
</parameter>
<parameter name="octet_count">
<parameter_description> the octect count
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_install_plugins_context_set_xid">
<description>
This function is for X11-based applications (such as most Gtk/Qt
applications on linux/unix) only. You can use it to tell the external
installer the XID of your main application window. That way the installer
can make its own window transient to your application window during the
installation.

If set, the XID will be passed to the installer via a --transient-for=XID
command line option.

Gtk+/Gnome application should be able to obtain the XID of the top-level
window like this:
&amp;lt;programlisting&amp;gt;
##include &amp;lt;gtk/gtk.h&amp;gt;
##ifdef GDK_WINDOWING_X11
##include &amp;lt;gdk/gdkx.h&amp;gt;
##endif
...
##ifdef GDK_WINDOWING_X11
xid = GDK_WINDOW_XWINDOW (GTK_WIDGET (application_window)-&amp;gt;window);
##endif
...
&amp;lt;/programlisting&amp;gt;

Since: 0.10.12

</description>
<parameters>
<parameter name="ctx">
<parameter_description> a #GstInstallPluginsContext
</parameter_description>
</parameter>
<parameter name="xid">
<parameter_description> the XWindow ID (XID) of the top-level application
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtp_buffer_allocate_data">
<description>
Allocate enough data in @buffer to hold an RTP packet with @csrc_count CSRCs,
a payload length of @payload_len and padding of @pad_len.
MALLOCDATA of @buffer will be overwritten and will not be freed. 
All other RTP header fields will be set to 0/FALSE.

</description>
<parameters>
<parameter name="buffer">
<parameter_description> a #GstBuffer
</parameter_description>
</parameter>
<parameter name="payload_len">
<parameter_description> the length of the payload
</parameter_description>
</parameter>
<parameter name="pad_len">
<parameter_description> the amount of padding
</parameter_description>
</parameter>
<parameter name="csrc_count">
<parameter_description> the number of CSRC entries
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_audio_set_caps_channel_positions_list">
<description>
Sets a (possibly non-fixed) list of possible audio channel
positions (given in pos) on the given caps. Each of the
structures of the caps, after this function has been called,
will contain a &quot;channel-positions&quot; field with an array.
Each value in the array will contain each of the values given
in the pos array. Note that the size of the caps might be
increased by this, since each structure with a &quot;channel-
positions&quot; field needs to have a fixed &quot;channels&quot; field.
The input caps is not required to have this.

</description>
<parameters>
<parameter name="caps">
<parameter_description> #GstCaps to set the list of channel positions on.
</parameter_description>
</parameter>
<parameter name="pos">
<parameter_description> the array containing one or more possible audio
channel positions that we should add in each value
of the array in the given structure.
</parameter_description>
</parameter>
<parameter name="num_positions">
<parameter_description> the number of values in pos.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_rtsp_message_append_headers">
<description>
Append the currently configured headers in @msg to the #GString @str suitable
for transmission.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstRTSPMessage
</parameter_description>
</parameter>
<parameter name="str">
<parameter_description> a string
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK.
</return>
</function>

<function name="gst_value_get_mini_object">
<description>
Get the contents of a %GST_TYPE_MINI_OBJECT derived #GValue.
Does not increase the refcount of the returned object.


</description>
<parameters>
<parameter name="value">
<parameter_description>   a valid #GValue of %GST_TYPE_MINI_OBJECT derived type
</parameter_description>
</parameter>
</parameters>
<return> mini object contents of @value
</return>
</function>

<function name="gst_byte_reader_get_int16_be">
<description>
Read a signed 16 bit big endian integer into @val
and update the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #gint16 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_preset_get_meta">
<description>
Gets the @value for an existing meta data @tag. Meta data @tag names can be
something like e.g. &quot;comment&quot;. Returned values need to be released when done.


</description>
<parameters>
<parameter name="preset">
<parameter_description> a #GObject that implements #GstPreset
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> preset name
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> meta data item name
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> value
</parameter_description>
</parameter>
</parameters>
<return> %TRUE for success, %FALSE if e.g. there is no preset with that @name
or no value for the given @tag

Since: 0.10.20
</return>
</function>

<function name="gst_tag_list_from_vorbiscomment_buffer">
<description>
Creates a new tag list that contains the information parsed out of a
vorbiscomment packet.


</description>
<parameters>
<parameter name="buffer">
<parameter_description> buffer to convert
</parameter_description>
</parameter>
<parameter name="id_data">
<parameter_description> identification data at start of stream
</parameter_description>
</parameter>
<parameter name="id_data_length">
<parameter_description> length of identification data
</parameter_description>
</parameter>
<parameter name="vendor_string">
<parameter_description> pointer to a string that should take the vendor string
of this vorbis comment or NULL if you don&apos;t need it.
</parameter_description>
</parameter>
</parameters>
<return> A new #GstTagList with all tags that could be extracted from the
given vorbiscomment buffer or NULL on error.
</return>
</function>

<function name="gst_controller_set">
<description>
Set the value of given controller-handled property at a certain time.

Deprecated: Use #GstControlSource, for example #GstInterpolationControlSource
directly.


</description>
<parameters>
<parameter name="self">
<parameter_description> the controller object which handles the properties
</parameter_description>
</parameter>
<parameter name="property_name">
<parameter_description> the name of the property to set
</parameter_description>
</parameter>
<parameter name="timestamp">
<parameter_description> the time the control-change is schedules for
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> the control-value
</parameter_description>
</parameter>
</parameters>
<return> FALSE if the values couldn&apos;t be set (ex : properties not handled by controller), TRUE otherwise
</return>
</function>

<function name="gst_pad_stop_task">
<description>
Stop the task of @pad. This function will also make sure that the
function executed by the task will effectively stop if not called
from the GstTaskFunction.

This function will deadlock if called from the GstTaskFunction of
the task. Use gst_task_pause() instead.

Regardless of whether the pad has a task, the stream lock is acquired and
released so as to ensure that streaming through this pad has finished.


</description>
<parameters>
<parameter name="pad">
<parameter_description> the #GstPad to stop the task of
</parameter_description>
</parameter>
</parameters>
<return> a TRUE if the task could be stopped or FALSE on error.
</return>
</function>

<function name="gst_rtp_buffer_get_payload_type">
<description>
Get the payload type of the RTP packet in @buffer.


</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer
</parameter_description>
</parameter>
</parameters>
<return> The payload type.
</return>
</function>

<function name="gst_object_get_name">
<description>
Returns: the name of @object. g_free() after usage.

</description>
<parameters>
<parameter name="object">
<parameter_description> a #GstObject
</parameter_description>
</parameter>
</parameters>
<return> the name of @object. g_free() after usage.

MT safe. This function grabs and releases @object&apos;s LOCK.
</return>
</function>

<function name="gst_message_parse_state_changed">
<description>
Extracts the old and new states from the GstMessage.

MT safe.

</description>
<parameters>
<parameter name="message">
<parameter_description> a valid #GstMessage of type GST_MESSAGE_STATE_CHANGED
</parameter_description>
</parameter>
<parameter name="oldstate">
<parameter_description> the previous state, or NULL
</parameter_description>
</parameter>
<parameter name="newstate">
<parameter_description> the new (current) state, or NULL
</parameter_description>
</parameter>
<parameter name="pending">
<parameter_description> the pending (target) state, or NULL
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_interpolation_control_source_new">
<description>
This returns a new, unbound #GstInterpolationControlSource.


</description>
<parameters>
</parameters>
<return> a new, unbound #GstInterpolationControlSource.
</return>
</function>

<function name="gst_pad_get_negotiated_caps">
<description>
Gets the capabilities of the media type that currently flows through @pad
and its peer.

This function can be used on both src and sinkpads. Note that srcpads are
always negotiated before sinkpads so it is possible that the negotiated caps
on the srcpad do not match the negotiated caps of the peer.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad.
</parameter_description>
</parameter>
</parameters>
<return> the negotiated #GstCaps of the pad link.  Unref the caps when
you no longer need it. This function returns NULL when the @pad has no
peer or is not negotiated yet.

MT safe.
</return>
</function>

<function name="GstClock">
<description>

</description>
<parameters>
</parameters>
<return></return>
</function>

<function name="gst_iterator_free">
<description>
Free the iterator.

MT safe.

</description>
<parameters>
<parameter name="it">
<parameter_description> The #GstIterator to free
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="read_packet_header">
<description>
Read the packet headers for the packet pointed to by @packet.


</description>
<parameters>
<parameter name="packet">
<parameter_description> a packet
</parameter_description>
</parameter>
</parameters>
<return> TRUE if @packet pointed to a valid header.
</return>
</function>

<function name="GstURIHandler">
<description>
The URI of the given @handler has changed.

</description>
<parameters>
<parameter name="handler">
<parameter_description> The #GstURIHandler which emitted the signal
</parameter_description>
</parameter>
<parameter name="uri">
<parameter_description> The new URI, or NULL if the URI was removed
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_controller_remove_properties_list">
<description>
Removes the given object properties from the controller


</description>
<parameters>
<parameter name="self">
<parameter_description> the controller object from which some properties should be removed
</parameter_description>
</parameter>
<parameter name="list">
<parameter_description> #GList of property names that should be removed
</parameter_description>
</parameter>
</parameters>
<return> %FALSE if one of the given property isn&apos;t handled by the controller, %TRUE otherwise
</return>
</function>

<function name="gst_pad_get_internal_links_default">
<description>
Gets a list of pads to which the given pad is linked to
inside of the parent element.
This is the default handler, and thus returns a list of all of the
pads inside the parent element with opposite direction.

The caller must free this list after use with g_list_free().


</description>
<parameters>
<parameter name="pad">
<parameter_description> the #GstPad to get the internal links of.
</parameter_description>
</parameter>
</parameters>
<return> a newly allocated #GList of pads, or NULL if the pad has no parent.

Not MT safe.

Deprecated: This function does not ref the pads in the list so that they
could become invalid by the time the application accesses them. It&apos;s also
possible that the list changes while handling the pads, which the caller of
this function is unable to know. Use the thread-safe 
gst_pad_iterate_internal_links_default() instead.
</return>
</function>

<function name="gst_rtsp_message_parse_response">
<description>
Parse the response message @msg and store the values @code, @reason and
@version. The result locations can be #NULL if one is not interested in its
value.

@reason remains valid for as long as @msg is valid and unchanged.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstRTSPMessage
</parameter_description>
</parameter>
<parameter name="code">
<parameter_description> location to hold the status code
</parameter_description>
</parameter>
<parameter name="reason">
<parameter_description> location to hold the status reason
</parameter_description>
</parameter>
<parameter name="version">
<parameter_description> location to hold the version
</parameter_description>
</parameter>
</parameters>
<return> a #GstRTSPResult.
</return>
</function>

<function name="gst_object_set_control_source">
<description>
Sets the #GstControlSource for @property_name. If there already was a #GstControlSource
for this property it will be unreferenced.


</description>
<parameters>
<parameter name="object">
<parameter_description> the controller object
</parameter_description>
</parameter>
<parameter name="property_name">
<parameter_description> name of the property for which the #GstControlSource should be set
</parameter_description>
</parameter>
<parameter name="csource">
<parameter_description> the #GstControlSource that should be used for the property
</parameter_description>
</parameter>
</parameters>
<return> %FALSE if the given property isn&apos;t handled by the controller or the new #GstControlSource
couldn&apos;t be bound to the property, %TRUE if everything worked as expected.

Since: 0.10.14
</return>
</function>

<function name="gst_byte_reader_peek_int64_le">
<description>
Read a signed 64 bit little endian integer into @val
but keep the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #gint64 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_plugin_feature_set_name">
<description>
Sets the name of a plugin feature. The name uniquely identifies a feature
within all features of the same type. Renaming a plugin feature is not
allowed. A copy is made of the name so you should free the supplied @name
after calling this function.

</description>
<parameters>
<parameter name="feature">
<parameter_description> a feature
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> the name to set
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_object_set_parent">
<description>
Sets the parent of @object to @parent. The object&apos;s reference count will
be incremented, and any floating reference will be removed (see gst_object_sink()).

This function causes the parent-set signal to be emitted when the parent
was successfully set.


</description>
<parameters>
<parameter name="object">
<parameter_description> a #GstObject
</parameter_description>
</parameter>
<parameter name="parent">
<parameter_description> new parent of object
</parameter_description>
</parameter>
</parameters>
<return> TRUE if @parent could be set or FALSE when @object
already had a parent or @object and @parent are the same.

MT safe. Grabs and releases @object&apos;s LOCK.
</return>
</function>

<function name="gst_poll_fd_ctl_write">
<description>
Control whether the descriptor @fd in @set will be monitored for
writability.


</description>
<parameters>
<parameter name="set">
<parameter_description> a file descriptor set.
</parameter_description>
</parameter>
<parameter name="fd">
<parameter_description> a file descriptor.
</parameter_description>
</parameter>
<parameter name="active">
<parameter_description> a new status.
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the descriptor was successfully updated.

Since: 0.10.18
</return>
</function>

<function name="gst_query_new_application">
<description>
Constructs a new custom application query object. Use gst_query_unref()
when done with it.


</description>
<parameters>
<parameter name="type">
<parameter_description> the query type
</parameter_description>
</parameter>
<parameter name="structure">
<parameter_description> a structure for the query
</parameter_description>
</parameter>
</parameters>
<return> a #GstQuery
</return>
</function>

<function name="gst_poll_fd_ignored">
<description>
Mark @fd as ignored so that the next call to gst_poll_wait() will yield
the same result for @fd as last time. This function must be called if no
operation (read/write/recv/send/etc.) will be performed on @fd before
the next call to gst_poll_wait().

The reason why this is needed is because the underlying implementation
might not allow querying the fd more than once between calls to one of
the re-enabling operations.

Since: 0.10.18

</description>
<parameters>
<parameter name="set">
<parameter_description> a file descriptor set.
</parameter_description>
</parameter>
<parameter name="fd">
<parameter_description> a file descriptor.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_tag_list_get_boolean_index">
<description>
Gets the value that is at the given index for the given tag in the given
list.


</description>
<parameters>
<parameter name="list">
<parameter_description> a #GstTagList to get the tag from
</parameter_description>
</parameter>
<parameter name="tag">
<parameter_description> tag to read out
</parameter_description>
</parameter>
<parameter name="index">
<parameter_description> number of entry to read out
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> location for the result
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if a value was copied, FALSE if the tag didn&apos;t exist in the
given list.
</return>
</function>

<function name="gst_pad_activate_pull">
<description>
Activates or deactivates the given pad in pull mode via dispatching to the
pad&apos;s activatepullfunc. For use from within pad activation functions only.
When called on sink pads, will first proxy the call to the peer pad, which
is expected to activate its internally linked pads from within its
activate_pull function.

If you don&apos;t know what this is, you probably don&apos;t want to call it.


</description>
<parameters>
<parameter name="pad">
<parameter_description> the #GstPad to activate or deactivate.
</parameter_description>
</parameter>
<parameter name="active">
<parameter_description> whether or not the pad should be active.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the operation was successful.

MT safe.
</return>
</function>

<function name="gst_missing_element_installer_detail_new">
<description>
Returns: a newly-allocated detail string, or NULL on error. Free string

</description>
<parameters>
<parameter name="factory_name">
<parameter_description> the name of the missing element (element factory),
e.g. &quot;videoscale&quot; or &quot;cdparanoiasrc&quot;
</parameter_description>
</parameter>
</parameters>
<return> a newly-allocated detail string, or NULL on error. Free string
with g_free() when not needed any longer.

Since: 0.10.15
</return>
</function>

<function name="gst_rtsp_connection_send">
<description>
Attempt to send @message to the connected @conn, blocking up to
the specified @timeout. @timeout can be #NULL, in which case this function
might block forever.

This function can be cancelled with gst_rtsp_connection_flush().


</description>
<parameters>
<parameter name="conn">
<parameter_description> a #GstRTSPConnection
</parameter_description>
</parameter>
<parameter name="message">
<parameter_description> the message to send
</parameter_description>
</parameter>
<parameter name="timeout">
<parameter_description> a timeout value or #NULL
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK on success.
</return>
</function>

<function name="gst_fft_next_fast_length">
<description>
Returns: the next fast FFT length.

</description>
<parameters>
<parameter name="n">
<parameter_description> Number for which the next fast length should be returned
</parameter_description>
</parameter>
</parameters>
<return> the next fast FFT length.

</return>
</function>

<function name="gst_debug_add_log_function">
<description>
Adds the logging function to the list of logging functions.
Be sure to use G_GNUC_NO_INSTRUMENT on that function, it is needed.

</description>
<parameters>
<parameter name="func">
<parameter_description> the function to use
</parameter_description>
</parameter>
<parameter name="data">
<parameter_description> user data
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_query_new_duration">
<description>
Constructs a new stream duration query object to query in the given format. 
Use gst_query_unref() when done with it. A duration query will give the
total length of the stream.


</description>
<parameters>
<parameter name="format">
<parameter_description> the #GstFormat for this duration query
</parameter_description>
</parameter>
</parameters>
<return> A #GstQuery
</return>
</function>

<function name="gst_controller_set_control_source">
<description>
Sets the #GstControlSource for @property_name. If there already was a #GstControlSource
for this property it will be unreferenced.


</description>
<parameters>
<parameter name="self">
<parameter_description> the controller object
</parameter_description>
</parameter>
<parameter name="property_name">
<parameter_description> name of the property for which the #GstControlSource should be set
</parameter_description>
</parameter>
<parameter name="csource">
<parameter_description> the #GstControlSource that should be used for the property
</parameter_description>
</parameter>
</parameters>
<return> %FALSE if the given property isn&apos;t handled by the controller or the new #GstControlSource
couldn&apos;t be bound to the property, %TRUE if everything worked as expected.

Since: 0.10.14
</return>
</function>

<function name="gst_rtsp_message_new_request">
<description>
Create a new #GstRTSPMessage with @method and @uri and store the result
request message in @msg. 


</description>
<parameters>
<parameter name="msg">
<parameter_description> a location for the new #GstRTSPMessage
</parameter_description>
</parameter>
<parameter name="method">
<parameter_description> the request method to use
</parameter_description>
</parameter>
<parameter name="uri">
<parameter_description> the uri of the request
</parameter_description>
</parameter>
</parameters>
<return> a #GstRTSPResult. Free with gst_rtsp_message_free().
</return>
</function>

<function name="gst_byte_reader_get_int16_le">
<description>
Read a signed 16 bit little endian integer into @val
and update the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstByteReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #gint16 to store the result
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_value_register_intersect_func">
<description>
Registers a function that is called to calculate the intersection
of the values having the types @type1 and @type2.

Intersect functions should be registered at startup before any pipelines are
started, as gst_value_register_intersect_func() is not thread-safe and
cannot be used at the same time as gst_value_intersect() or
gst_value_can_intersect().

</description>
<parameters>
<parameter name="type1">
<parameter_description> the first type to intersect
</parameter_description>
</parameter>
<parameter name="type2">
<parameter_description> the second type to intersect
</parameter_description>
</parameter>
<parameter name="func">
<parameter_description> the intersection function
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_set_active">
<description>
Activates or deactivates the given pad.
Normally called from within core state change functions.

If @active, makes sure the pad is active. If it is already active, either in
push or pull mode, just return. Otherwise dispatches to the pad&apos;s activate
function to perform the actual activation.

If not @active, checks the pad&apos;s current mode and calls
gst_pad_activate_push() or gst_pad_activate_pull(), as appropriate, with a
FALSE argument.


</description>
<parameters>
<parameter name="pad">
<parameter_description> the #GstPad to activate or deactivate.
</parameter_description>
</parameter>
<parameter name="active">
<parameter_description> whether or not the pad should be active.
</parameter_description>
</parameter>
</parameters>
<return> #TRUE if the operation was successful.

MT safe.
</return>
</function>

<function name="gst_fft_s16_free">
<description>
This frees the memory allocated for @self.


</description>
<parameters>
<parameter name="self">
<parameter_description> #GstFFTS16 instance for this call
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_clock_id_unref">
<description>
Unref given @id. When the refcount reaches 0 the
#GstClockID will be freed.

MT safe.

</description>
<parameters>
<parameter name="id">
<parameter_description> The #GstClockID to unref
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_buffer_merge">
<description>
Create a new buffer that is the concatenation of the two source
buffers.  The original source buffers will not be modified or
unref&apos;d.  Make sure you unref the source buffers if they are not used
anymore afterwards.

If the buffers point to contiguous areas of memory, the buffer
is created without copying the data.


</description>
<parameters>
<parameter name="buf1">
<parameter_description> the first source #GstBuffer to merge.
</parameter_description>
</parameter>
<parameter name="buf2">
<parameter_description> the second source #GstBuffer to merge.
</parameter_description>
</parameter>
</parameters>
<return> the new #GstBuffer which is the concatenation of the source buffers.
</return>
</function>

<function name="gst_bit_reader_get_bits_uint64">
<description>
Read @nbits bits into @val and update the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstBitReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #guint64 to store the result
</parameter_description>
</parameter>
<parameter name="nbits">
<parameter_description> number of bits to read
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_rtsp_strresult">
<description>
Convert @result in a human readable string.


</description>
<parameters>
<parameter name="result">
<parameter_description> a #GstRTSPResult
</parameter_description>
</parameter>
</parameters>
<return> a newly allocated string. g_free() after usage.
</return>
</function>

<function name="gst_element_implements_interface">
<description>
Test whether the given element implements a certain interface of type
iface_type, and test whether it is supported for this specific instance.


</description>
<parameters>
<parameter name="element">
<parameter_description> #GstElement to check for the implementation of the interface
</parameter_description>
</parameter>
<parameter name="iface_type">
<parameter_description> (final) type of the interface which we want to be implemented
</parameter_description>
</parameter>
</parameters>
<return> whether or not the element implements the interface.
</return>
</function>

<function name="gst_rtsp_message_unset">
<description>
Unset the concents of @msg so that it becomes an uninitialized
#GstRTSPMessage again. This function is mostly used in combination with 
gst_rtsp_message_init_request(), gst_rtsp_message_init_response() and
gst_rtsp_message_init_data() on stack allocated #GstRTSPMessage structures.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstRTSPMessage
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK.
</return>
</function>

<function name="gst_element_get_static_pad">
<description>
Retrieves a pad from @element by name. This version only retrieves
already-existing (i.e. &apos;static&apos;) pads.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement to find a static pad of.
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> the name of the static #GstPad to retrieve.
</parameter_description>
</parameter>
</parameters>
<return> the requested #GstPad if found, otherwise %NULL. unref after
usage.

MT safe.
</return>
</function>

<function name="gst_base_rtp_depayload_push">
<description>
Push @out_buf to the peer of @filter. This function takes ownership of
@out_buf.

Unlike gst_base_rtp_depayload_push_ts(), this function will not apply
any timestamp on the outgoing buffer.


</description>
<parameters>
<parameter name="filter">
<parameter_description> a #GstBaseRTPDepayload
</parameter_description>
</parameter>
<parameter name="out_buf">
<parameter_description> a #GstBuffer
</parameter_description>
</parameter>
</parameters>
<return> a #GstFlowReturn.
</return>
</function>

<function name="gst_collect_pads_start">
<description>
Starts the processing of data in the collect_pads.

MT safe.

</description>
<parameters>
<parameter name="pads">
<parameter_description> the collectspads to use
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_set_query_type_function">
<description>
Set the given query type function for the pad.

</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad of either direction.
</parameter_description>
</parameter>
<parameter name="type_func">
<parameter_description> the #GstPadQueryTypeFunction to set.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_mixer_message_parse_option_changed">
<description>
Extracts the GstMixerOptions and new value from a option-changed bus notification
message.

The options and value returned remain valid until the message is freed.

Since: 0.10.14

</description>
<parameters>
<parameter name="message">
<parameter_description> A volume-changed change notification message.
</parameter_description>
</parameter>
<parameter name="options">
<parameter_description> Pointer to hold a GstMixerOptions object, or NULL.
</parameter_description>
</parameter>
<parameter name="value">
<parameter_description> Result location to receive the new options value, or NULL.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_collect_pads_is_active">
<description>
Check if a pad is active.

This function is currently not implemented.


</description>
<parameters>
<parameter name="pads">
<parameter_description> the collectspads to use
</parameter_description>
</parameter>
<parameter name="pad">
<parameter_description> the pad to check
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the pad is active.

MT safe.
</return>
</function>

<function name="gst_sdp_message_uninit">
<description>
Free all resources allocated in @msg. @msg should not be used anymore after
this function. This function should be used when @msg was allocated on the
stack and initialized with gst_sdp_message_init().


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
</parameters>
<return> a #GstSDPResult.
</return>
</function>

<function name="gst_tuner_list_channels">
<description>
Retrieve a #GList of #GstTunerChannels available
(e.g. &apos;composite&apos;, &apos;s-video&apos;, ...) from the given tuner object.


</description>
<parameters>
<parameter name="tuner">
<parameter_description> the #GstTuner (a #GstElement) to get the channels from.
</parameter_description>
</parameter>
</parameters>
<return> A list of channels available on this tuner. The list is
owned by the GstTuner and must not be freed.
</return>
</function>

<function name="gst_query_set_formatsv">
<description>
Set the formats query result fields in @query. The number of formats passed
in the @formats array must be equal to @n_formats.

Since: 0.10.4

</description>
<parameters>
<parameter name="query">
<parameter_description> a #GstQuery
</parameter_description>
</parameter>
<parameter name="n_formats">
<parameter_description> the number of formats to set.
</parameter_description>
</parameter>
<parameter name="formats">
<parameter_description> An array containing @n_formats @GstFormat values.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_element_found_tags_for_pad">
<description>
Posts a message to the bus that new tags were found and pushes the
tags as event. Takes ownership of the @list.

This is a utility method for elements. Applications should use the
#GstTagSetter interface.

</description>
<parameters>
<parameter name="element">
<parameter_description> element for which to post taglist to bus.
</parameter_description>
</parameter>
<parameter name="pad">
<parameter_description> pad on which to push tag-event.
</parameter_description>
</parameter>
<parameter name="list">
<parameter_description> the taglist to post on the bus and create event from.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_base_sink_wait_preroll">
<description>
If the #GstBaseSinkClass::render method performs its own synchronisation against
the clock it must unblock when going from PLAYING to the PAUSED state and call
this method before continuing to render the remaining data.

This function will block until a state change to PLAYING happens (in which
case this function returns #GST_FLOW_OK) or the processing must be stopped due
to a state change to READY or a FLUSH event (in which case this function
Returns: #GST_FLOW_OK if the preroll completed and processing can

</description>
<parameters>
<parameter name="sink">
<parameter_description> the sink
</parameter_description>
</parameter>
</parameters>
<return> #GST_FLOW_OK if the preroll completed and processing can
continue. Any other return value should be returned from the render vmethod.
</return>
</function>

<function name="gst_interpolation_control_source_get_all">
<description>
Returns: a copy of the list, or %NULL if the property isn&apos;t handled by the controller

</description>
<parameters>
<parameter name="self">
<parameter_description> the #GstInterpolationControlSource to get the list from
</parameter_description>
</parameter>
</parameters>
<return> a copy of the list, or %NULL if the property isn&apos;t handled by the controller
</return>
</function>

<function name="gst_sdp_message_zones_len">
<description>
Get the number of time zone information entries in @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
</parameters>
<return> the number of time zone information entries in @msg.
</return>
</function>

<function name="gst_netaddress_set_ip6_address">
<description>
Set @naddr with the IPv6 @address and @port pair.

</description>
<parameters>
<parameter name="naddr">
<parameter_description> a network address
</parameter_description>
</parameter>
<parameter name="address">
<parameter_description> an IPv6 network address.
</parameter_description>
</parameter>
<parameter name="port">
<parameter_description> a port number to set.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_message_new_warning">
<description>
Create a new warning message. The message will make copies of @error and
@debug.


</description>
<parameters>
<parameter name="src">
<parameter_description> The object originating the message.
</parameter_description>
</parameter>
<parameter name="error">
<parameter_description> The GError for this message.
</parameter_description>
</parameter>
<parameter name="debug">
<parameter_description> A debugging string.
</parameter_description>
</parameter>
</parameters>
<return> The new warning message.

MT safe.
</return>
</function>

<function name="gst_message_new_info">
<description>
Create a new info message. The message will make copies of @error and
@debug.


</description>
<parameters>
<parameter name="src">
<parameter_description> The object originating the message.
</parameter_description>
</parameter>
<parameter name="error">
<parameter_description> The GError for this message.
</parameter_description>
</parameter>
<parameter name="debug">
<parameter_description> A debugging string.
</parameter_description>
</parameter>
</parameters>
<return> The new info message.

Since: 0.10.12

MT safe.
</return>
</function>

<function name="gst_bin_get_by_name_recurse_up">
<description>
Gets the element with the given name from this bin. If the
element is not found, a recursion is performed on the parent bin.

Returns: the #GstElement with the given name, or NULL

</description>
<parameters>
<parameter name="bin">
<parameter_description> a #GstBin
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> the element name to search for
</parameter_description>
</parameter>
</parameters>
<return> the #GstElement with the given name, or NULL
</return>
</function>

<function name="gst_index_set_filter_full">
<description>
Lets the app register a custom filter function so that
it can select what entries should be stored in the index.

</description>
<parameters>
<parameter name="index">
<parameter_description> the index to register the filter on
</parameter_description>
</parameter>
<parameter name="filter">
<parameter_description> the filter to register
</parameter_description>
</parameter>
<parameter name="user_data">
<parameter_description> data passed to the filter function
</parameter_description>
</parameter>
<parameter name="user_data_destroy">
<parameter_description> function to call when @user_data is unset
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_video_format_parse_caps">
<description>
Determines the #GstVideoFormat of @caps and places it in the location
pointed to by @format.  Extracts the size of the video and places it
in the location pointed to by @width and @height.  If @caps does not
represent one of the raw video formats listed in #GstVideoFormat, the
function will fail and return FALSE.

Since: 0.10.16


</description>
<parameters>
<parameter name="caps">
<parameter_description> the #GstCaps to parse
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> the #GstVideoFormat of the video represented by @caps (output)
</parameter_description>
</parameter>
<parameter name="width">
<parameter_description> the width of the video represented by @caps, may be NULL (output)
</parameter_description>
</parameter>
<parameter name="height">
<parameter_description> the height of the video represented by @caps, may be NULL (output)
</parameter_description>
</parameter>
</parameters>
<return> TRUE if @caps was parsed correctly.
</return>
</function>

<function name="gst_rtcp_buffer_validate">
<description>
Check if the data pointed to by @buffer is a valid RTCP packet using
gst_rtcp_buffer_validate_data().


</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer to validate
</parameter_description>
</parameter>
</parameters>
<return> TRUE if @buffer is a valid RTCP packet.
</return>
</function>

<function name="gst_xml_get_topelements">
<description>
Retrieve a list of toplevel elements.


</description>
<parameters>
<parameter name="xml">
<parameter_description> The GstXML to get the elements from
</parameter_description>
</parameter>
</parameters>
<return> a GList of top-level elements. The caller does not own a copy
of the list and must not free or modify the list. The caller also does not
own a reference to any of the elements in the list and should obtain its own
reference using gst_object_ref() if necessary.
</return>
</function>

<function name="gst_element_get_request_pad">
<description>
Retrieves a pad from the element by name. This version only retrieves
request pads. The pad should be released with
gst_element_release_request_pad().


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement to find a request pad of.
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> the name of the request #GstPad to retrieve.
</parameter_description>
</parameter>
</parameters>
<return> requested #GstPad if found, otherwise %NULL. Release after usage.
</return>
</function>

<function name="gst_xml_write_file">
<description>
Converts the given element into XML and writes the formatted XML to an open
file.


</description>
<parameters>
<parameter name="element">
<parameter_description> The element to write out
</parameter_description>
</parameter>
<parameter name="out">
<parameter_description> an open file, like stdout
</parameter_description>
</parameter>
</parameters>
<return> number of bytes written on success, -1 otherwise.
</return>
</function>

<function name="gst_element_post_message">
<description>
Post a message on the element&apos;s #GstBus. This function takes ownership of the
message; if you want to access the message after this call, you should add an
additional reference before calling.


</description>
<parameters>
<parameter name="element">
<parameter_description> a #GstElement posting the message
</parameter_description>
</parameter>
<parameter name="message">
<parameter_description> a #GstMessage to post
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the message was successfully posted. The function returns
%FALSE if the element did not have a bus.

MT safe.
</return>
</function>

<function name="gst_object_unparent">
<description>
Clear the parent of @object, removing the associated reference.
This function decreases the refcount of @object.

MT safe. Grabs and releases @object&apos;s lock.

</description>
<parameters>
<parameter name="object">
<parameter_description> a #GstObject to unparent
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_bit_reader_init_from_buffer">
<description>
Initializes a #GstBitReader instance to read from @buffer. This function
can be called on already initialized instances.

Since: 0.10.22

</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstBitReader instance
</parameter_description>
</parameter>
<parameter name="buffer">
<parameter_description> Buffer from which the #GstBitReader should read
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_sdp_media_get_media">
<description>
Get the media description of @media.


</description>
<parameters>
<parameter name="media">
<parameter_description> a #GstSDPMedia
</parameter_description>
</parameter>
</parameters>
<return> the media description.
</return>
</function>

<function name="gst_rtp_buffer_get_marker">
<description>
Check if the marker bit is set on the RTP packet in @buffer.


</description>
<parameters>
<parameter name="buffer">
<parameter_description> the buffer
</parameter_description>
</parameter>
</parameters>
<return> TRUE if @buffer has the marker bit set.
</return>
</function>

<function name="gst_controller_init">
<description>
Initializes the use of the controller library. Suggested to be called right
after gst_init().


</description>
<parameters>
<parameter name="argc">
<parameter_description> pointer to the commandline argument count
</parameter_description>
</parameter>
<parameter name="argv">
<parameter_description> pointer to the commandline argument values
</parameter_description>
</parameter>
</parameters>
<return> the %TRUE for success.
</return>
</function>

<function name="gst_query_parse_formats_length">
<description>
Parse the number of formats in the formats @query. 

Since: 0.10.4

</description>
<parameters>
<parameter name="query">
<parameter_description> a #GstQuery
</parameter_description>
</parameter>
<parameter name="n_formats">
<parameter_description> the number of formats in this query.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_clock_set_master">
<description>
Set @master as the master clock for @clock. @clock will be automatically
calibrated so that gst_clock_get_time() reports the same time as the
master clock.  

A clock provider that slaves its clock to a master can get the current
calibration values with gst_clock_get_calibration().

@master can be %NULL in which case @clock will not be slaved anymore. It will
however keep reporting its time adjusted with the last configured rate 
and time offsets.


</description>
<parameters>
<parameter name="clock">
<parameter_description> a #GstClock 
</parameter_description>
</parameter>
<parameter name="master">
<parameter_description> a master #GstClock 
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the clock is capable of being slaved to a master clock. 
Trying to set a master on a clock without the 
#GST_CLOCK_FLAG_CAN_SET_MASTER flag will make this function return %FALSE.

MT safe.
</return>
</function>

<function name="gst_poll_wait">
<description>
Wait for activity on the file descriptors in @set. This function waits up to
the specified @timeout.  A timeout of #GST_CLOCK_TIME_NONE waits forever.

When this function is called from multiple threads, -1 will be returned with
errno set to EPERM.


</description>
<parameters>
<parameter name="set">
<parameter_description> a #GstPoll.
</parameter_description>
</parameter>
<parameter name="timeout">
<parameter_description> a timeout in nanoseconds.
</parameter_description>
</parameter>
</parameters>
<return> The number of #GstPollFD in @set that have activity or 0 when no
activity was detected after @timeout. If an error occurs, -1 is returned
and errno is set.

Since: 0.10.18
</return>
</function>

<function name="gst_query_parse_seeking">
<description>
Parse a seeking query, writing the format into @format, and 
other results into the passed parameters, if the respective parameters
are non-NULL

</description>
<parameters>
<parameter name="query">
<parameter_description> a GST_QUERY_SEEKING type query #GstQuery
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> the format to set for the @segment_start and @segment_end values
</parameter_description>
</parameter>
<parameter name="seekable">
<parameter_description> the seekable flag to set
</parameter_description>
</parameter>
<parameter name="segment_start">
<parameter_description> the segment_start to set
</parameter_description>
</parameter>
<parameter name="segment_end">
<parameter_description> the segment_end to set
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_netaddress_set_ip4_address">
<description>
Set @naddr with the IPv4 @address and @port pair.

</description>
<parameters>
<parameter name="naddr">
<parameter_description> a network address
</parameter_description>
</parameter>
<parameter name="address">
<parameter_description> an IPv4 network address.
</parameter_description>
</parameter>
<parameter name="port">
<parameter_description> a port number to set.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pb_utils_get_source_description">
<description>
Returns: a newly-allocated description string, or NULL on error. Free

</description>
<parameters>
<parameter name="protocol">
<parameter_description> the protocol the source element needs to handle, e.g. &quot;http&quot;
</parameter_description>
</parameter>
</parameters>
<return> a newly-allocated description string, or NULL on error. Free
string with g_free() when not needed any longer.
</return>
</function>

<function name="_gst_alloc_trace_register">
<description>
Register an get a handle to a GstAllocTrace object that
can be used to trace memory allocations.


</description>
<parameters>
<parameter name="name">
<parameter_description> the name of the new alloc trace object.
</parameter_description>
</parameter>
</parameters>
<return> A handle to a GstAllocTrace.
</return>
</function>

<function name="gst_structure_id_set_valist">
<description>
va_list form of gst_structure_id_set().

Since: 0.10.10

</description>
<parameters>
<parameter name="structure">
<parameter_description> a #GstStructure
</parameter_description>
</parameter>
<parameter name="fieldname">
<parameter_description> the name of the field to set
</parameter_description>
</parameter>
<parameter name="varargs">
<parameter_description> variable arguments
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_bit_reader_peek_bits_uint8">
<description>
Read @nbits bits into @val but keep the current position.


</description>
<parameters>
<parameter name="reader">
<parameter_description> a #GstBitReader instance
</parameter_description>
</parameter>
<parameter name="val">
<parameter_description> Pointer to a #guint8 to store the result
</parameter_description>
</parameter>
<parameter name="nbits">
<parameter_description> number of bits to read
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if successful, %FALSE otherwise.

Since: 0.10.22
</return>
</function>

<function name="gst_pad_proxy_getcaps">
<description>
Calls gst_pad_get_allowed_caps() for every other pad belonging to the
same element as @pad, and returns the intersection of the results.

This function is useful as a default getcaps function for an element
that can handle any stream format, but requires all its pads to have
the same caps.  Two such elements are tee and aggregator.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad to proxy.
</parameter_description>
</parameter>
</parameters>
<return> the intersection of the other pads&apos; allowed caps.
</return>
</function>

<function name="gst_fft_f64_fft">
<description>
This performs the FFT on @timedata and puts the result in @freqdata.

@timedata must have as many samples as specified with the @len parameter while
allocating the #GstFFTF64 instance with gst_fft_f64_new().

@freqdata must be large enough to hold @len/2 + 1 #GstFFTF64Complex frequency
domain samples.


</description>
<parameters>
<parameter name="self">
<parameter_description> #GstFFTF64 instance for this call
</parameter_description>
</parameter>
<parameter name="timedata">
<parameter_description> Buffer of the samples in the time domain
</parameter_description>
</parameter>
<parameter name="freqdata">
<parameter_description> Target buffer for the samples in the frequency domain
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_uri_protocol_is_valid">
<description>
Tests if the given string is a valid protocol identifier. Protocols
must consist of alphanumeric characters, &apos;+&apos;, &apos;-&apos; and &apos;.&apos; and must
start with a alphabetic character. See RFC 3986 Section 3.1.


</description>
<parameters>
<parameter name="protocol">
<parameter_description> A string
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the string is a valid protocol identifier, FALSE otherwise.
</return>
</function>

<function name="gst_pad_get_pad_template">
<description>
Gets the template for @pad.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad.
</parameter_description>
</parameter>
</parameters>
<return> the #GstPadTemplate from which this pad was instantiated, or %NULL
if this pad has no template.

FIXME: currently returns an unrefcounted padtemplate.
</return>
</function>

<function name="gst_plugin_feature_load">
<description>
Loads the plugin containing @feature if it&apos;s not already loaded. @feature is
unaffected; use the return value instead.

Normally this function is used like this:

&amp;lt;programlisting&amp;gt;
GstPluginFeature *loaded_feature;
loaded_feature = gst_plugin_feature_load (feature);
// presumably, we&apos;re no longer interested in the potentially-unloaded feature
gst_object_unref (feature);
feature = loaded_feature;
&amp;lt;/programlisting&amp;gt;


</description>
<parameters>
<parameter name="feature">
<parameter_description> the plugin feature to check
</parameter_description>
</parameter>
</parameters>
<return> A reference to the loaded feature, or NULL on error.
</return>
</function>

<function name="gst_query_set_seeking">
<description>
Set the seeking query result fields in @query.

</description>
<parameters>
<parameter name="query">
<parameter_description> a #GstQuery
</parameter_description>
</parameter>
<parameter name="format">
<parameter_description> the format to set for the @segment_start and @segment_end values
</parameter_description>
</parameter>
<parameter name="seekable">
<parameter_description> the seekable flag to set
</parameter_description>
</parameter>
<parameter name="segment_start">
<parameter_description> the segment_start to set
</parameter_description>
</parameter>
<parameter name="segment_end">
<parameter_description> the segment_end to set
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_pad_set_caps">
<description>
Sets the capabilities of this pad. The caps must be fixed. Any previous
caps on the pad will be unreffed. This function refs the caps so you should
unref if as soon as you don&apos;t need it anymore.
It is possible to set NULL caps, which will make the pad unnegotiated
again.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a  #GstPad to set the capabilities of.
</parameter_description>
</parameter>
<parameter name="caps">
<parameter_description> a #GstCaps to set.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the caps could be set. FALSE if the caps were not fixed
or bad parameters were provided to this function.

MT safe.
</return>
</function>

<function name="gst_rtcp_packet_sdes_next_item">
<description>
Move to the next SDES item in @packet.


</description>
<parameters>
<parameter name="packet">
<parameter_description> a valid SDES #GstRTCPPacket
</parameter_description>
</parameter>
</parameters>
<return> TRUE if there was a next item.
</return>
</function>

<function name="gst_element_factory_can_sink_caps">
<description>
Checks if the factory can sink the given capability.


</description>
<parameters>
<parameter name="factory">
<parameter_description> factory to query
</parameter_description>
</parameter>
<parameter name="caps">
<parameter_description> the caps to check
</parameter_description>
</parameter>
</parameters>
<return> true if it can sink the capabilities
</return>
</function>

<function name="gst_pad_query_default">
<description>
Invokes the default query handler for the given pad.
The query is sent to all pads internally linked to @pad. Note that
if there are many possible sink pads that are internally linked to
@pad, only one will be sent the query.
Multi-sinkpad elements should implement custom query handlers.


</description>
<parameters>
<parameter name="pad">
<parameter_description> a #GstPad to call the default query handler on.
</parameter_description>
</parameter>
<parameter name="query">
<parameter_description> the #GstQuery to handle.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if the query was performed succesfully.
</return>
</function>

<function name="GstObject">
<description>
The deep notify signal is used to be notified of property changes. It is
typically attached to the toplevel bin to receive notifications from all
the elements contained in that bin.

</description>
<parameters>
<parameter name="gstobject">
<parameter_description> a #GstObject
</parameter_description>
</parameter>
<parameter name="prop_object">
<parameter_description> the object that originated the signal
</parameter_description>
</parameter>
<parameter name="prop">
<parameter_description> the property that changed
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_clock_new_periodic_id">
<description>
Get an ID from @clock to trigger a periodic notification.
The periodic notifications will start at time @start_time and
will then be fired with the given @interval. @id should be unreffed
after usage.


</description>
<parameters>
<parameter name="clock">
<parameter_description> The #GstClockID to get a periodic notification id from
</parameter_description>
</parameter>
<parameter name="start_time">
<parameter_description> the requested start time
</parameter_description>
</parameter>
<parameter name="interval">
<parameter_description> the requested interval
</parameter_description>
</parameter>
</parameters>
<return> A #GstClockID that can be used to request the time notification.

MT safe.
</return>
</function>

<function name="gst_message_new_clock_provide">
<description>
Create a clock provide message. This message is posted whenever an
element is ready to provide a clock or lost its ability to provide
a clock (maybe because it paused or became EOS).

This message is mainly used internally to manage the clock
selection.


</description>
<parameters>
<parameter name="src">
<parameter_description> The object originating the message.
</parameter_description>
</parameter>
<parameter name="clock">
<parameter_description> The clock it provides
</parameter_description>
</parameter>
<parameter name="ready">
<parameter_description> TRUE if the sender can provide a clock
</parameter_description>
</parameter>
</parameters>
<return> The new provide clock message.

MT safe.
</return>
</function>

<function name="GstTuner">
<description>
Reports that the signal strength has changed.

See Also: gst_tuner_signal_strength()

</description>
<parameters>
<parameter name="tuner">
<parameter_description> The element providing the GstTuner interface
</parameter_description>
</parameter>
<parameter name="channel">
<parameter_description> The current #GstTunerChannel
</parameter_description>
</parameter>
<parameter name="signal">
<parameter_description> The new signal strength (an integer)
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_collect_pads_add_pad">
<description>
Add a pad to the collection of collect pads. The pad has to be
a sinkpad. The refcount of the pad is incremented. Use
gst_collect_pads_remove_pad() to remove the pad from the collection
again.

You specify a size for the returned #GstCollectData structure
so that you can use it to store additional information.

The pad will be automatically activated in push mode when @pads is
started.

This function calls gst_collect_pads_add_pad() passing a value of NULL
for destroy_notify.


</description>
<parameters>
<parameter name="pads">
<parameter_description> the collectspads to use
</parameter_description>
</parameter>
<parameter name="pad">
<parameter_description> the pad to add
</parameter_description>
</parameter>
<parameter name="size">
<parameter_description> the size of the returned #GstCollectData structure
</parameter_description>
</parameter>
</parameters>
<return> a new #GstCollectData to identify the new pad. Or NULL
if wrong parameters are supplied.

MT safe.
</return>
</function>

<function name="gst_mini_object_make_writable">
<description>
Checks if a mini-object is writable.  If not, a writable copy is made and
returned.  This gives away the reference to the original mini object,
and returns a reference to the new object.

MT safe


</description>
<parameters>
<parameter name="mini_object">
<parameter_description> the mini-object to make writable
</parameter_description>
</parameter>
</parameters>
<return> a mini-object (possibly the same pointer) that is writable.
</return>
</function>

<function name="gst_rtsp_url_parse">
<description>
Parse the RTSP @urlstr into a newly allocated #GstRTSPUrl. Free after usage
with gst_rtsp_url_free().


</description>
<parameters>
<parameter name="urlstr">
<parameter_description> the url string to parse
</parameter_description>
</parameter>
<parameter name="url">
<parameter_description> location to hold the result.
</parameter_description>
</parameter>
</parameters>
<return> a #GstRTSPResult.
</return>
</function>

<function name="gst_object_restore_thyself">
<description>
Restores @object with the data from the parent XML node.

</description>
<parameters>
<parameter name="object">
<parameter_description> a #GstObject to load into
</parameter_description>
</parameter>
<parameter name="self">
<parameter_description> The XML node to load @object from
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_riff_parse_strh">
<description>
Parses a strh structure from input data. Takes ownership of @buf.


</description>
<parameters>
<parameter name="element">
<parameter_description> caller element (used for debugging/error).
</parameter_description>
</parameter>
<parameter name="buf">
<parameter_description> input data to be used for parsing, stripped from header.
</parameter_description>
</parameter>
<parameter name="strh">
<parameter_description> a pointer (returned by this function) to a filled-in
strh structure. Caller should free it.
</parameter_description>
</parameter>
</parameters>
<return> TRUE if parsing succeeded, otherwise FALSE. The stream
should be skipped on error, but it is not fatal.
</return>
</function>

<function name="gst_implements_interface_cast">
<description>
cast a given object to an interface type, and check whether this
interface is supported for this specific instance.


</description>
<parameters>
<parameter name="from">
<parameter_description> the object (any sort) from which to cast to the interface
</parameter_description>
</parameter>
<parameter name="type">
<parameter_description> the interface type to cast to
</parameter_description>
</parameter>
</parameters>
<return> a gpointer to the interface type
</return>
</function>

<function name="gst_base_audio_src_set_slave_method">
<description>
Controls how clock slaving will be performed in @src. 

Since: 0.10.20

</description>
<parameters>
<parameter name="src">
<parameter_description> a #GstBaseAudioSrc
</parameter_description>
</parameter>
<parameter name="method">
<parameter_description> the new slave method
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_element_found_tags">
<description>
Posts a message to the bus that new tags were found, and pushes an event
to all sourcepads. Takes ownership of the @list.

This is a utility method for elements. Applications should use the
#GstTagSetter interface.

</description>
<parameters>
<parameter name="element">
<parameter_description> element for which we found the tags.
</parameter_description>
</parameter>
<parameter name="list">
<parameter_description> list of tags.
</parameter_description>
</parameter>
</parameters>
<return></return>
</function>

<function name="gst_base_sink_wait_clock">
<description>
This function will block until @time is reached. It is usually called by
subclasses that use their own internal synchronisation.

If @time is not valid, no sycnhronisation is done and #GST_CLOCK_BADTIME is
returned. Likewise, if synchronisation is disabled in the element or there
is no clock, no synchronisation is done and #GST_CLOCK_BADTIME is returned.

This function should only be called with the PREROLL_LOCK held, like when
receiving an EOS event in the ::event vmethod or when receiving a buffer in
the ::render vmethod.

The @time argument should be the running_time of when this method should
return and is not adjusted with any latency or offset configured in the
sink.

Since 0.10.20


</description>
<parameters>
<parameter name="sink">
<parameter_description> the sink
</parameter_description>
</parameter>
<parameter name="time">
<parameter_description> the running_time to be reached
</parameter_description>
</parameter>
<parameter name="jitter">
<parameter_description> the jitter to be filled with time diff (can be NULL)
</parameter_description>
</parameter>
</parameters>
<return> #GstClockReturn
</return>
</function>

<function name="gst_adapter_available_fast">
<description>
Gets the maximum number of bytes that are immediately available without
requiring any expensive operations (like copying the data into a 
temporary buffer).


</description>
<parameters>
<parameter name="adapter">
<parameter_description> a #GstAdapter
</parameter_description>
</parameter>
</parameters>
<return> number of bytes that are available in @adapter without expensive 
operations
</return>
</function>

<function name="gst_poll_new">
<description>
Create a new file descriptor set. If @controllable, it
is possible to restart or flush a call to gst_poll_wait() with
gst_poll_restart() and gst_poll_set_flushing() respectively.


</description>
<parameters>
<parameter name="controllable">
<parameter_description> whether it should be possible to control a wait.
</parameter_description>
</parameter>
</parameters>
<return> a new #GstPoll, or %NULL in case of an error. Free with
gst_poll_free().

Since: 0.10.18
</return>
</function>

<function name="gst_controller_sync_values">
<description>
Sets the properties of the element, according to the controller that (maybe)
handles them and for the given timestamp.

If this function fails, it is most likely the application developers fault.
Most probably the control sources are not setup correctly.


</description>
<parameters>
<parameter name="self">
<parameter_description> the controller that handles the values
</parameter_description>
</parameter>
<parameter name="timestamp">
<parameter_description> the time that should be processed
</parameter_description>
</parameter>
</parameters>
<return> %TRUE if the controller values could be applied to the object
properties, %FALSE otherwise
</return>
</function>

<function name="gst_child_proxy_get_child_by_index">
<description>
Fetches a child by its number.


</description>
<parameters>
<parameter name="parent">
<parameter_description> the parent object to get the child from
</parameter_description>
</parameter>
<parameter name="index">
<parameter_description> the childs position in the child list
</parameter_description>
</parameter>
</parameters>
<return> the child object or %NULL if not found (index too high). Unref
after usage.

MT safe.
</return>
</function>

<function name="gst_sdp_message_emails_len">
<description>
Get the number of emails in @msg.


</description>
<parameters>
<parameter name="msg">
<parameter_description> a #GstSDPMessage
</parameter_description>
</parameter>
</parameters>
<return> the number of emails in @msg.
</return>
</function>

<function name="gst_element_register">
<description>
Create a new elementfactory capable of instantiating objects of the
@type and add the factory to @plugin.


</description>
<parameters>
<parameter name="plugin">
<parameter_description> #GstPlugin to register the element with, or NULL for a static
element (note that passing NULL only works in GStreamer 0.10.13 and later)
</parameter_description>
</parameter>
<parameter name="name">
<parameter_description> name of elements of this type
</parameter_description>
</parameter>
<parameter name="rank">
<parameter_description> rank of element (higher rank means more importance when autoplugging)
</parameter_description>
</parameter>
<parameter name="type">
<parameter_description> GType of element to register
</parameter_description>
</parameter>
</parameters>
<return> TRUE, if the registering succeeded, FALSE on error
</return>
</function>

<function name="gst_rtsp_transport_get_mime">
<description>
Get the mime type of the transport mode @trans. This mime type is typically
used to generate #GstCaps on buffers.


</description>
<parameters>
<parameter name="trans">
<parameter_description> a #GstRTSPTransMode
</parameter_description>
</parameter>
<parameter name="mime">
<parameter_description> location to hold the result
</parameter_description>
</parameter>
</parameters>
<return> #GST_RTSP_OK. 
</return>
</function>

</root>
