| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
| <title>GstElement</title> |
| <meta name="generator" content="DocBook XSL Stylesheets V1.78.1"> |
| <link rel="home" href="index.html" title="GStreamer 1.0 Core Reference Manual"> |
| <link rel="up" href="libgstreamer.html" title="GStreamer Core Library"> |
| <link rel="prev" href="gstreamer-GstDateTime.html" title="GstDateTime"> |
| <link rel="next" href="GstElementFactory.html" title="GstElementFactory"> |
| <meta name="generator" content="GTK-Doc V1.18 (XML mode)"> |
| <link rel="stylesheet" href="style.css" type="text/css"> |
| </head> |
| <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> |
| <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"> |
| <tr valign="middle"> |
| <td><a accesskey="p" href="gstreamer-GstDateTime.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td> |
| <td><a accesskey="u" href="libgstreamer.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td> |
| <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td> |
| <th width="100%" align="center">GStreamer 1.0 Core Reference Manual</th> |
| <td><a accesskey="n" href="GstElementFactory.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td> |
| </tr> |
| <tr><td colspan="5" class="shortcuts"> |
| <a href="#GstElement.synopsis" class="shortcut">Top</a> |
| | |
| <a href="#GstElement.description" class="shortcut">Description</a> |
| | |
| <a href="#GstElement.object-hierarchy" class="shortcut">Object Hierarchy</a> |
| | |
| <a href="#GstElement.derived-interfaces" class="shortcut">Known Derived Interfaces</a> |
| | |
| <a href="#GstElement.signals" class="shortcut">Signals</a> |
| </td></tr> |
| </table> |
| <div class="refentry"> |
| <a name="GstElement"></a><div class="titlepage"></div> |
| <div class="refnamediv"><table width="100%"><tr> |
| <td valign="top"> |
| <h2><span class="refentrytitle"><a name="GstElement.top_of_page"></a>GstElement</span></h2> |
| <p>GstElement — Abstract base class for all pipeline elements</p> |
| </td> |
| <td valign="top" align="right"></td> |
| </tr></table></div> |
| <div class="refsynopsisdiv"> |
| <a name="GstElement.synopsis"></a><h2>Synopsis</h2> |
| <pre class="synopsis"> |
| #include <gst/gst.h> |
| |
| struct <a class="link" href="GstElement.html#GstElement-struct" title="struct GstElement">GstElement</a>; |
| struct <a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass">GstElementClass</a>; |
| enum <a class="link" href="GstElement.html#GstElementFlags" title="enum GstElementFlags">GstElementFlags</a>; |
| enum <a class="link" href="GstElement.html#GstState" title="enum GstState">GstState</a>; |
| enum <a class="link" href="GstElement.html#GstStateChange" title="enum GstStateChange">GstStateChange</a>; |
| enum <a class="link" href="GstElement.html#GstStateChangeReturn" title="enum GstStateChangeReturn">GstStateChangeReturn</a>; |
| #define <a class="link" href="GstElement.html#GST-STATE:CAPS" title="GST_STATE()">GST_STATE</a> (elem) |
| #define <a class="link" href="GstElement.html#GST-STATE-GET-NEXT:CAPS" title="GST_STATE_GET_NEXT()">GST_STATE_GET_NEXT</a> (cur, |
| pending) |
| #define <a class="link" href="GstElement.html#GST-STATE-NEXT:CAPS" title="GST_STATE_NEXT()">GST_STATE_NEXT</a> (elem) |
| #define <a class="link" href="GstElement.html#GST-STATE-PENDING:CAPS" title="GST_STATE_PENDING()">GST_STATE_PENDING</a> (elem) |
| #define <a class="link" href="GstElement.html#GST-STATE-RETURN:CAPS" title="GST_STATE_RETURN()">GST_STATE_RETURN</a> (elem) |
| #define <a class="link" href="GstElement.html#GST-STATE-TARGET:CAPS" title="GST_STATE_TARGET()">GST_STATE_TARGET</a> (elem) |
| #define <a class="link" href="GstElement.html#GST-STATE-TRANSITION:CAPS" title="GST_STATE_TRANSITION()">GST_STATE_TRANSITION</a> (cur, |
| next) |
| #define <a class="link" href="GstElement.html#GST-STATE-TRANSITION-CURRENT:CAPS" title="GST_STATE_TRANSITION_CURRENT()">GST_STATE_TRANSITION_CURRENT</a> (trans) |
| #define <a class="link" href="GstElement.html#GST-STATE-TRANSITION-NEXT:CAPS" title="GST_STATE_TRANSITION_NEXT()">GST_STATE_TRANSITION_NEXT</a> (trans) |
| #define <a class="link" href="GstElement.html#GST-STATE-GET-LOCK:CAPS" title="GST_STATE_GET_LOCK()">GST_STATE_GET_LOCK</a> (elem) |
| #define <a class="link" href="GstElement.html#GST-STATE-GET-COND:CAPS" title="GST_STATE_GET_COND()">GST_STATE_GET_COND</a> (elem) |
| #define <a class="link" href="GstElement.html#GST-ELEMENT-NAME:CAPS" title="GST_ELEMENT_NAME()">GST_ELEMENT_NAME</a> (elem) |
| #define <a class="link" href="GstElement.html#GST-ELEMENT-PARENT:CAPS" title="GST_ELEMENT_PARENT()">GST_ELEMENT_PARENT</a> (elem) |
| #define <a class="link" href="GstElement.html#GST-ELEMENT-BUS:CAPS" title="GST_ELEMENT_BUS()">GST_ELEMENT_BUS</a> (elem) |
| #define <a class="link" href="GstElement.html#GST-ELEMENT-CLOCK:CAPS" title="GST_ELEMENT_CLOCK()">GST_ELEMENT_CLOCK</a> (elem) |
| #define <a class="link" href="GstElement.html#GST-ELEMENT-PADS:CAPS" title="GST_ELEMENT_PADS()">GST_ELEMENT_PADS</a> (elem) |
| #define <a class="link" href="GstElement.html#GST-ELEMENT-START-TIME:CAPS" title="GST_ELEMENT_START_TIME()">GST_ELEMENT_START_TIME</a> (elem) |
| #define <a class="link" href="GstElement.html#GST-ELEMENT-ERROR:CAPS" title="GST_ELEMENT_ERROR()">GST_ELEMENT_ERROR</a> (el, |
| domain, |
| code, |
| text, |
| debug) |
| #define <a class="link" href="GstElement.html#GST-ELEMENT-WARNING:CAPS" title="GST_ELEMENT_WARNING()">GST_ELEMENT_WARNING</a> (el, |
| domain, |
| code, |
| text, |
| debug) |
| #define <a class="link" href="GstElement.html#GST-ELEMENT-INFO:CAPS" title="GST_ELEMENT_INFO()">GST_ELEMENT_INFO</a> (el, |
| domain, |
| code, |
| text, |
| debug) |
| #define <a class="link" href="GstElement.html#GST-ELEMENT-IS-LOCKED-STATE:CAPS" title="GST_ELEMENT_IS_LOCKED_STATE()">GST_ELEMENT_IS_LOCKED_STATE</a> (elem) |
| |
| #define <a class="link" href="GstElement.html#GST-ELEMENT-METADATA-AUTHOR:CAPS" title="GST_ELEMENT_METADATA_AUTHOR">GST_ELEMENT_METADATA_AUTHOR</a> |
| #define <a class="link" href="GstElement.html#GST-ELEMENT-METADATA-DESCRIPTION:CAPS" title="GST_ELEMENT_METADATA_DESCRIPTION">GST_ELEMENT_METADATA_DESCRIPTION</a> |
| #define <a class="link" href="GstElement.html#GST-ELEMENT-METADATA-DOC-URI:CAPS" title="GST_ELEMENT_METADATA_DOC_URI">GST_ELEMENT_METADATA_DOC_URI</a> |
| #define <a class="link" href="GstElement.html#GST-ELEMENT-METADATA-ICON-NAME:CAPS" title="GST_ELEMENT_METADATA_ICON_NAME">GST_ELEMENT_METADATA_ICON_NAME</a> |
| #define <a class="link" href="GstElement.html#GST-ELEMENT-METADATA-KLASS:CAPS" title="GST_ELEMENT_METADATA_KLASS">GST_ELEMENT_METADATA_KLASS</a> |
| #define <a class="link" href="GstElement.html#GST-ELEMENT-METADATA-LONGNAME:CAPS" title="GST_ELEMENT_METADATA_LONGNAME">GST_ELEMENT_METADATA_LONGNAME</a> |
| |
| <span class="returnvalue">void</span> <a class="link" href="GstElement.html#gst-element-class-add-pad-template" title="gst_element_class_add_pad_template ()">gst_element_class_add_pad_template</a> (<em class="parameter"><code><a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a> *klass</code></em>, |
| <em class="parameter"><code><a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a> *templ</code></em>); |
| <a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="returnvalue">GstPadTemplate</span></a> * <a class="link" href="GstElement.html#gst-element-class-get-pad-template" title="gst_element_class_get_pad_template ()">gst_element_class_get_pad_template</a> (<em class="parameter"><code><a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a> *element_class</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>); |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> * <a class="link" href="GstElement.html#gst-element-class-get-pad-template-list" title="gst_element_class_get_pad_template_list ()">gst_element_class_get_pad_template_list</a> |
| (<em class="parameter"><code><a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a> *element_class</code></em>); |
| <span class="returnvalue">void</span> <a class="link" href="GstElement.html#gst-element-class-set-metadata" title="gst_element_class_set_metadata ()">gst_element_class_set_metadata</a> (<em class="parameter"><code><a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a> *klass</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *longname</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *classification</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *description</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *author</code></em>); |
| <span class="returnvalue">void</span> <a class="link" href="GstElement.html#gst-element-class-set-static-metadata" title="gst_element_class_set_static_metadata ()">gst_element_class_set_static_metadata</a> |
| (<em class="parameter"><code><a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a> *klass</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *longname</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *classification</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *description</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *author</code></em>); |
| <span class="returnvalue">void</span> <a class="link" href="GstElement.html#gst-element-class-add-metadata" title="gst_element_class_add_metadata ()">gst_element_class_add_metadata</a> (<em class="parameter"><code><a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a> *klass</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *value</code></em>); |
| <span class="returnvalue">void</span> <a class="link" href="GstElement.html#gst-element-class-add-static-metadata" title="gst_element_class_add_static_metadata ()">gst_element_class_add_static_metadata</a> |
| (<em class="parameter"><code><a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a> *klass</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *value</code></em>); |
| |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstElement.html#gst-element-add-pad" title="gst_element_add_pad ()">gst_element_add_pad</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>); |
| <span class="returnvalue">void</span> <a class="link" href="GstElement.html#gst-element-create-all-pads" title="gst_element_create_all_pads ()">gst_element_create_all_pads</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>); |
| <a class="link" href="GstPad.html" title="GstPad"><span class="returnvalue">GstPad</span></a> * <a class="link" href="GstElement.html#gst-element-get-compatible-pad" title="gst_element_get_compatible_pad ()">gst_element_get_compatible_pad</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>); |
| <a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="returnvalue">GstPadTemplate</span></a> * <a class="link" href="GstElement.html#gst-element-get-compatible-pad-template" title="gst_element_get_compatible_pad_template ()">gst_element_get_compatible_pad_template</a> |
| (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a> *compattempl</code></em>); |
| <a class="link" href="GstPad.html" title="GstPad"><span class="returnvalue">GstPad</span></a> * <a class="link" href="GstElement.html#gst-element-get-request-pad" title="gst_element_get_request_pad ()">gst_element_get_request_pad</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>); |
| <a class="link" href="GstPad.html" title="GstPad"><span class="returnvalue">GstPad</span></a> * <a class="link" href="GstElement.html#gst-element-get-static-pad" title="gst_element_get_static_pad ()">gst_element_get_static_pad</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>); |
| <a class="link" href="GstPad.html" title="GstPad"><span class="returnvalue">GstPad</span></a> * <a class="link" href="GstElement.html#gst-element-request-pad" title="gst_element_request_pad ()">gst_element_request_pad</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a> *templ</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>, |
| <em class="parameter"><code>const <a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>); |
| <span class="returnvalue">void</span> <a class="link" href="GstElement.html#gst-element-no-more-pads" title="gst_element_no_more_pads ()">gst_element_no_more_pads</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>); |
| <span class="returnvalue">void</span> <a class="link" href="GstElement.html#gst-element-release-request-pad" title="gst_element_release_request_pad ()">gst_element_release_request_pad</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>); |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstElement.html#gst-element-remove-pad" title="gst_element_remove_pad ()">gst_element_remove_pad</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>); |
| <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="returnvalue">GstIterator</span></a> * <a class="link" href="GstElement.html#gst-element-iterate-pads" title="gst_element_iterate_pads ()">gst_element_iterate_pads</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>); |
| <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="returnvalue">GstIterator</span></a> * <a class="link" href="GstElement.html#gst-element-iterate-sink-pads" title="gst_element_iterate_sink_pads ()">gst_element_iterate_sink_pads</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>); |
| <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="returnvalue">GstIterator</span></a> * <a class="link" href="GstElement.html#gst-element-iterate-src-pads" title="gst_element_iterate_src_pads ()">gst_element_iterate_src_pads</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>); |
| |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstElement.html#gst-element-link" title="gst_element_link ()">gst_element_link</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *src</code></em>, |
| <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *dest</code></em>); |
| <span class="returnvalue">void</span> <a class="link" href="GstElement.html#gst-element-unlink" title="gst_element_unlink ()">gst_element_unlink</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *src</code></em>, |
| <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *dest</code></em>); |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstElement.html#gst-element-link-many" title="gst_element_link_many ()">gst_element_link_many</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element_1</code></em>, |
| <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element_2</code></em>, |
| <em class="parameter"><code>...</code></em>); |
| <span class="returnvalue">void</span> <a class="link" href="GstElement.html#gst-element-unlink-many" title="gst_element_unlink_many ()">gst_element_unlink_many</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element_1</code></em>, |
| <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element_2</code></em>, |
| <em class="parameter"><code>...</code></em>); |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstElement.html#gst-element-link-pads" title="gst_element_link_pads ()">gst_element_link_pads</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *src</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *srcpadname</code></em>, |
| <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *dest</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *destpadname</code></em>); |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstElement.html#gst-element-link-pads-full" title="gst_element_link_pads_full ()">gst_element_link_pads_full</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *src</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *srcpadname</code></em>, |
| <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *dest</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *destpadname</code></em>, |
| <em class="parameter"><code><a class="link" href="GstPad.html#GstPadLinkCheck" title="enum GstPadLinkCheck"><span class="type">GstPadLinkCheck</span></a> flags</code></em>); |
| <span class="returnvalue">void</span> <a class="link" href="GstElement.html#gst-element-unlink-pads" title="gst_element_unlink_pads ()">gst_element_unlink_pads</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *src</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *srcpadname</code></em>, |
| <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *dest</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *destpadname</code></em>); |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstElement.html#gst-element-link-pads-filtered" title="gst_element_link_pads_filtered ()">gst_element_link_pads_filtered</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *src</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *srcpadname</code></em>, |
| <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *dest</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *destpadname</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a> *filter</code></em>); |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstElement.html#gst-element-link-filtered" title="gst_element_link_filtered ()">gst_element_link_filtered</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *src</code></em>, |
| <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *dest</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a> *filter</code></em>); |
| |
| const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="GstElement.html#gst-element-class-get-metadata" title="gst_element_class_get_metadata ()">gst_element_class_get_metadata</a> (<em class="parameter"><code><a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a> *klass</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>); |
| <span class="returnvalue">void</span> <a class="link" href="GstElement.html#gst-element-set-base-time" title="gst_element_set_base_time ()">gst_element_set_base_time</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> time</code></em>); |
| <a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="returnvalue">GstClockTime</span></a> <a class="link" href="GstElement.html#gst-element-get-base-time" title="gst_element_get_base_time ()">gst_element_get_base_time</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>); |
| <span class="returnvalue">void</span> <a class="link" href="GstElement.html#gst-element-set-start-time" title="gst_element_set_start_time ()">gst_element_set_start_time</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> time</code></em>); |
| <a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="returnvalue">GstClockTime</span></a> <a class="link" href="GstElement.html#gst-element-get-start-time" title="gst_element_get_start_time ()">gst_element_get_start_time</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>); |
| <span class="returnvalue">void</span> <a class="link" href="GstElement.html#gst-element-set-bus" title="gst_element_set_bus ()">gst_element_set_bus</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> *bus</code></em>); |
| <a class="link" href="GstBus.html" title="GstBus"><span class="returnvalue">GstBus</span></a> * <a class="link" href="GstElement.html#gst-element-get-bus" title="gst_element_get_bus ()">gst_element_get_bus</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>); |
| <span class="returnvalue">void</span> <a class="link" href="GstElement.html#gst-element-set-context" title="gst_element_set_context ()">gst_element_set_context</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstContext.html#GstContext" title="GstContext"><span class="type">GstContext</span></a> *context</code></em>); |
| <a class="link" href="gstreamer-GstContext.html#GstContext" title="GstContext"><span class="returnvalue">GstContext</span></a> * <a class="link" href="GstElement.html#gst-element-get-context" title="gst_element_get_context ()">gst_element_get_context</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>); |
| <a class="link" href="GstElementFactory.html" title="GstElementFactory"><span class="returnvalue">GstElementFactory</span></a> * <a class="link" href="GstElement.html#gst-element-get-factory" title="gst_element_get_factory ()">gst_element_get_factory</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>); |
| #define <a class="link" href="GstElement.html#gst-element-set-name" title="gst_element_set_name()">gst_element_set_name</a> (elem, |
| name) |
| #define <a class="link" href="GstElement.html#gst-element-get-name" title="gst_element_get_name()">gst_element_get_name</a> (elem) |
| #define <a class="link" href="GstElement.html#gst-element-set-parent" title="gst_element_set_parent()">gst_element_set_parent</a> (elem, |
| parent) |
| #define <a class="link" href="GstElement.html#gst-element-get-parent" title="gst_element_get_parent()">gst_element_get_parent</a> (elem) |
| |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstElement.html#gst-element-set-clock" title="gst_element_set_clock ()">gst_element_set_clock</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="GstClock.html" title="GstClock"><span class="type">GstClock</span></a> *clock</code></em>); |
| <a class="link" href="GstClock.html" title="GstClock"><span class="returnvalue">GstClock</span></a> * <a class="link" href="GstElement.html#gst-element-get-clock" title="gst_element_get_clock ()">gst_element_get_clock</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>); |
| <a class="link" href="GstClock.html" title="GstClock"><span class="returnvalue">GstClock</span></a> * <a class="link" href="GstElement.html#gst-element-provide-clock" title="gst_element_provide_clock ()">gst_element_provide_clock</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>); |
| |
| <a class="link" href="GstElement.html#GstStateChangeReturn" title="enum GstStateChangeReturn"><span class="returnvalue">GstStateChangeReturn</span></a> <a class="link" href="GstElement.html#gst-element-set-state" title="gst_element_set_state ()">gst_element_set_state</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a> state</code></em>); |
| <a class="link" href="GstElement.html#GstStateChangeReturn" title="enum GstStateChangeReturn"><span class="returnvalue">GstStateChangeReturn</span></a> <a class="link" href="GstElement.html#gst-element-get-state" title="gst_element_get_state ()">gst_element_get_state</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a> *state</code></em>, |
| <em class="parameter"><code><a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a> *pending</code></em>, |
| <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> timeout</code></em>); |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstElement.html#gst-element-set-locked-state" title="gst_element_set_locked_state ()">gst_element_set_locked_state</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> locked_state</code></em>); |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstElement.html#gst-element-is-locked-state" title="gst_element_is_locked_state ()">gst_element_is_locked_state</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>); |
| <span class="returnvalue">void</span> <a class="link" href="GstElement.html#gst-element-abort-state" title="gst_element_abort_state ()">gst_element_abort_state</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>); |
| <a class="link" href="GstElement.html#GstStateChangeReturn" title="enum GstStateChangeReturn"><span class="returnvalue">GstStateChangeReturn</span></a> <a class="link" href="GstElement.html#gst-element-continue-state" title="gst_element_continue_state ()">gst_element_continue_state</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="GstElement.html#GstStateChangeReturn" title="enum GstStateChangeReturn"><span class="type">GstStateChangeReturn</span></a> ret</code></em>); |
| <span class="returnvalue">void</span> <a class="link" href="GstElement.html#gst-element-lost-state" title="gst_element_lost_state ()">gst_element_lost_state</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>); |
| const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="GstElement.html#gst-element-state-get-name" title="gst_element_state_get_name ()">gst_element_state_get_name</a> (<em class="parameter"><code><a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a> state</code></em>); |
| const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="GstElement.html#gst-element-state-change-return-get-name" title="gst_element_state_change_return_get_name ()">gst_element_state_change_return_get_name</a> |
| (<em class="parameter"><code><a class="link" href="GstElement.html#GstStateChangeReturn" title="enum GstStateChangeReturn"><span class="type">GstStateChangeReturn</span></a> state_ret</code></em>); |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstElement.html#gst-element-sync-state-with-parent" title="gst_element_sync_state_with_parent ()">gst_element_sync_state_with_parent</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>); |
| <a class="link" href="GstElement.html#GstStateChangeReturn" title="enum GstStateChangeReturn"><span class="returnvalue">GstStateChangeReturn</span></a> <a class="link" href="GstElement.html#gst-element-change-state" title="gst_element_change_state ()">gst_element_change_state</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="GstElement.html#GstStateChange" title="enum GstStateChange"><span class="type">GstStateChange</span></a> transition</code></em>); |
| |
| <span class="returnvalue">void</span> <a class="link" href="GstElement.html#gst-element-message-full" title="gst_element_message_full ()">gst_element_message_full</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstMessage.html#GstMessageType" title="enum GstMessageType"><span class="type">GstMessageType</span></a> type</code></em>, |
| <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> domain</code></em>, |
| <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> code</code></em>, |
| <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *text</code></em>, |
| <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *debug</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *file</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *function</code></em>, |
| <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> line</code></em>); |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstElement.html#gst-element-post-message" title="gst_element_post_message ()">gst_element_post_message</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstMessage.html#GstMessage" title="struct GstMessage"><span class="type">GstMessage</span></a> *message</code></em>); |
| |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstElement.html#gst-element-query" title="gst_element_query ()">gst_element_query</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>); |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstElement.html#gst-element-query-convert" title="gst_element_query_convert ()">gst_element_query_convert</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> src_format</code></em>, |
| <em class="parameter"><code><span class="type">gint64</span> src_val</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> dest_format</code></em>, |
| <em class="parameter"><code><span class="type">gint64</span> *dest_val</code></em>); |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstElement.html#gst-element-query-position" title="gst_element_query_position ()">gst_element_query_position</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>, |
| <em class="parameter"><code><span class="type">gint64</span> *cur</code></em>); |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstElement.html#gst-element-query-duration" title="gst_element_query_duration ()">gst_element_query_duration</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>, |
| <em class="parameter"><code><span class="type">gint64</span> *duration</code></em>); |
| |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstElement.html#gst-element-send-event" title="gst_element_send_event ()">gst_element_send_event</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstEvent.html#GstEvent" title="struct GstEvent"><span class="type">GstEvent</span></a> *event</code></em>); |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstElement.html#gst-element-seek-simple" title="gst_element_seek_simple ()">gst_element_seek_simple</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstEvent.html#GstSeekFlags" title="enum GstSeekFlags"><span class="type">GstSeekFlags</span></a> seek_flags</code></em>, |
| <em class="parameter"><code><span class="type">gint64</span> seek_pos</code></em>); |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="GstElement.html#gst-element-seek" title="gst_element_seek ()">gst_element_seek</a> (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> rate</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstEvent.html#GstSeekFlags" title="enum GstSeekFlags"><span class="type">GstSeekFlags</span></a> flags</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstEvent.html#GstSeekType" title="enum GstSeekType"><span class="type">GstSeekType</span></a> start_type</code></em>, |
| <em class="parameter"><code><span class="type">gint64</span> start</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstEvent.html#GstSeekType" title="enum GstSeekType"><span class="type">GstSeekType</span></a> stop_type</code></em>, |
| <em class="parameter"><code><span class="type">gint64</span> stop</code></em>); |
| </pre> |
| </div> |
| <div class="refsect1"> |
| <a name="GstElement.object-hierarchy"></a><h2>Object Hierarchy</h2> |
| <pre class="synopsis"> |
| <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a> |
| +----<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a> |
| +----<a class="link" href="GstObject.html" title="GstObject">GstObject</a> |
| +----GstElement |
| +----<a class="link" href="GstBin.html" title="GstBin">GstBin</a> |
| </pre> |
| </div> |
| <div class="refsect1"> |
| <a name="GstElement.derived-interfaces"></a><h2>Known Derived Interfaces</h2> |
| <p> |
| GstElement is required by |
| <a class="link" href="GstTagSetter.html" title="GstTagSetter">GstTagSetter</a>.</p> |
| </div> |
| <div class="refsect1"> |
| <a name="GstElement.signals"></a><h2>Signals</h2> |
| <pre class="synopsis"> |
| "<a class="link" href="GstElement.html#GstElement-no-more-pads" title='The "no-more-pads" signal'>no-more-pads</a>" : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS"><code class="literal">Run Last</code></a> |
| "<a class="link" href="GstElement.html#GstElement-pad-added" title='The "pad-added" signal'>pad-added</a>" : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS"><code class="literal">Run Last</code></a> |
| "<a class="link" href="GstElement.html#GstElement-pad-removed" title='The "pad-removed" signal'>pad-removed</a>" : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS"><code class="literal">Run Last</code></a> |
| </pre> |
| </div> |
| <div class="refsect1"> |
| <a name="GstElement.description"></a><h2>Description</h2> |
| <p> |
| GstElement is the abstract base class needed to construct an element that |
| can be used in a GStreamer pipeline. Please refer to the plugin writers |
| guide for more information on creating <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> subclasses. |
| </p> |
| <p> |
| The name of a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> can be get with <a class="link" href="GstElement.html#gst-element-get-name" title="gst_element_get_name()"><code class="function">gst_element_get_name()</code></a> and set with |
| <a class="link" href="GstElement.html#gst-element-set-name" title="gst_element_set_name()"><code class="function">gst_element_set_name()</code></a>. For speed, <a class="link" href="GstElement.html#GST-ELEMENT-NAME:CAPS" title="GST_ELEMENT_NAME()"><code class="function">GST_ELEMENT_NAME()</code></a> can be used in the |
| core when using the appropriate locking. Do not use this in plug-ins or |
| applications in order to retain ABI compatibility. |
| </p> |
| <p> |
| Elements can have pads (of the type <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>). These pads link to pads on |
| other elements. <a class="link" href="gstreamer-GstBuffer.html#GstBuffer" title="struct GstBuffer"><span class="type">GstBuffer</span></a> flow between these linked pads. |
| A <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> has a <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> structures for all their input (or sink) |
| and output (or source) pads. |
| Core and plug-in writers can add and remove pads with <a class="link" href="GstElement.html#gst-element-add-pad" title="gst_element_add_pad ()"><code class="function">gst_element_add_pad()</code></a> |
| and <a class="link" href="GstElement.html#gst-element-remove-pad" title="gst_element_remove_pad ()"><code class="function">gst_element_remove_pad()</code></a>. |
| </p> |
| <p> |
| An existing pad of an element can be retrieved by name with |
| <a class="link" href="GstElement.html#gst-element-get-static-pad" title="gst_element_get_static_pad ()"><code class="function">gst_element_get_static_pad()</code></a>. A new dynamic pad can be created using |
| <a class="link" href="GstElement.html#gst-element-request-pad" title="gst_element_request_pad ()"><code class="function">gst_element_request_pad()</code></a> with a <a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a> or |
| <a class="link" href="GstElement.html#gst-element-get-request-pad" title="gst_element_get_request_pad ()"><code class="function">gst_element_get_request_pad()</code></a> with the template name such as "src_%u". |
| An iterator of all pads can be retrieved with <a class="link" href="GstElement.html#gst-element-iterate-pads" title="gst_element_iterate_pads ()"><code class="function">gst_element_iterate_pads()</code></a>. |
| </p> |
| <p> |
| Elements can be linked through their pads. |
| If the link is straightforward, use the <a class="link" href="GstElement.html#gst-element-link" title="gst_element_link ()"><code class="function">gst_element_link()</code></a> |
| convenience function to link two elements, or <a class="link" href="GstElement.html#gst-element-link-many" title="gst_element_link_many ()"><code class="function">gst_element_link_many()</code></a> |
| for more elements in a row. |
| Use <a class="link" href="GstElement.html#gst-element-link-filtered" title="gst_element_link_filtered ()"><code class="function">gst_element_link_filtered()</code></a> to link two elements constrained by |
| a specified set of <a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a>. |
| For finer control, use <a class="link" href="GstElement.html#gst-element-link-pads" title="gst_element_link_pads ()"><code class="function">gst_element_link_pads()</code></a> and |
| <a class="link" href="GstElement.html#gst-element-link-pads-filtered" title="gst_element_link_pads_filtered ()"><code class="function">gst_element_link_pads_filtered()</code></a> to specify the pads to link on |
| each element by name. |
| </p> |
| <p> |
| Each element has a state (see <a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a>). You can get and set the state |
| of an element with <a class="link" href="GstElement.html#gst-element-get-state" title="gst_element_get_state ()"><code class="function">gst_element_get_state()</code></a> and <a class="link" href="GstElement.html#gst-element-set-state" title="gst_element_set_state ()"><code class="function">gst_element_set_state()</code></a>. |
| Setting a state triggers a <a class="link" href="GstElement.html#GstStateChange" title="enum GstStateChange"><span class="type">GstStateChange</span></a>. To get a string representation |
| of a <a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a>, use <a class="link" href="GstElement.html#gst-element-state-get-name" title="gst_element_state_get_name ()"><code class="function">gst_element_state_get_name()</code></a>. |
| </p> |
| <p> |
| You can get and set a <a class="link" href="GstClock.html" title="GstClock"><span class="type">GstClock</span></a> on an element using <a class="link" href="GstElement.html#gst-element-get-clock" title="gst_element_get_clock ()"><code class="function">gst_element_get_clock()</code></a> |
| and <a class="link" href="GstElement.html#gst-element-set-clock" title="gst_element_set_clock ()"><code class="function">gst_element_set_clock()</code></a>. |
| Some elements can provide a clock for the pipeline if |
| the <a class="link" href="GstElement.html#GST-ELEMENT-FLAG-PROVIDE-CLOCK:CAPS"><span class="type">GST_ELEMENT_FLAG_PROVIDE_CLOCK</span></a> flag is set. With the |
| <a class="link" href="GstElement.html#gst-element-provide-clock" title="gst_element_provide_clock ()"><code class="function">gst_element_provide_clock()</code></a> method one can retrieve the clock provided by |
| such an element. |
| Not all elements require a clock to operate correctly. If the |
| #<a class="link" href="GstElement.html#GST-ELEMENT-FLAG-REQUIRE-CLOCK:CAPS"><code class="function">GST_ELEMENT_FLAG_REQUIRE_CLOCK()</code></a> flag is set, a clock should be set on the |
| element with <a class="link" href="GstElement.html#gst-element-set-clock" title="gst_element_set_clock ()"><code class="function">gst_element_set_clock()</code></a>. |
| </p> |
| <p> |
| Note that clock slection and distribution is normally handled by the |
| toplevel <a class="link" href="GstPipeline.html" title="GstPipeline"><span class="type">GstPipeline</span></a> so the clock functions are only to be used in very |
| specific situations. |
| </p> |
| <p> |
| Last reviewed on 2012-03-28 (0.11.3) |
| </p> |
| </div> |
| <div class="refsect1"> |
| <a name="GstElement.details"></a><h2>Details</h2> |
| <div class="refsect2"> |
| <a name="GstElement-struct"></a><h3>struct GstElement</h3> |
| <pre class="programlisting">struct GstElement { |
| GRecMutex state_lock; |
| |
| /* element state */ |
| GCond state_cond; |
| guint32 state_cookie; |
| GstState target_state; |
| GstState current_state; |
| GstState next_state; |
| GstState pending_state; |
| GstStateChangeReturn last_return; |
| |
| GstBus *bus; |
| |
| /* allocated clock */ |
| GstClock *clock; |
| GstClockTimeDiff base_time; /* NULL/READY: 0 - PAUSED: current time - PLAYING: difference to clock */ |
| GstClockTime start_time; |
| |
| /* element pads, these lists can only be iterated while holding |
| * the LOCK or checking the cookie after each LOCK. */ |
| guint16 numpads; |
| GList *pads; |
| guint16 numsrcpads; |
| GList *srcpads; |
| guint16 numsinkpads; |
| GList *sinkpads; |
| guint32 pads_cookie; |
| |
| GstContext *context; |
| }; |
| </pre> |
| <p> |
| GStreamer element abstract base class. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><a href="http://library.gnome.org/devel/glib/unstable/glib-Threads.html#GRecMutex"><span class="type">GRecMutex</span></a> <em class="structfield"><code><a name="GstElement-struct.state-lock"></a>state_lock</code></em>;</span></p></td> |
| <td>Used to serialize execution of <a class="link" href="GstElement.html#gst-element-set-state" title="gst_element_set_state ()"><code class="function">gst_element_set_state()</code></a> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><a href="http://library.gnome.org/devel/glib/unstable/glib-Threads.html#GCond"><span class="type">GCond</span></a> <em class="structfield"><code><a name="GstElement-struct.state-cond"></a>state_cond</code></em>;</span></p></td> |
| <td>Used to signal completion of a state change</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="GstElement-struct.state-cookie"></a>state_cookie</code></em>;</span></p></td> |
| <td>Used to detect concurrent execution of |
| <a class="link" href="GstElement.html#gst-element-set-state" title="gst_element_set_state ()"><code class="function">gst_element_set_state()</code></a> and <a class="link" href="GstElement.html#gst-element-get-state" title="gst_element_get_state ()"><code class="function">gst_element_get_state()</code></a> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a> <em class="structfield"><code><a name="GstElement-struct.target-state"></a>target_state</code></em>;</span></p></td> |
| <td>the target state of an element as set by the application</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a> <em class="structfield"><code><a name="GstElement-struct.current-state"></a>current_state</code></em>;</span></p></td> |
| <td>the current state of an element</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a> <em class="structfield"><code><a name="GstElement-struct.next-state"></a>next_state</code></em>;</span></p></td> |
| <td>the next state of an element, can be <a class="link" href="GstElement.html#GST-STATE-VOID-PENDING:CAPS"><span class="type">GST_STATE_VOID_PENDING</span></a> if |
| the element is in the correct state.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a> <em class="structfield"><code><a name="GstElement-struct.pending-state"></a>pending_state</code></em>;</span></p></td> |
| <td>the final state the element should go to, can be |
| <a class="link" href="GstElement.html#GST-STATE-VOID-PENDING:CAPS"><span class="type">GST_STATE_VOID_PENDING</span></a> if the element is in the correct state</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><a class="link" href="GstElement.html#GstStateChangeReturn" title="enum GstStateChangeReturn"><span class="type">GstStateChangeReturn</span></a> <em class="structfield"><code><a name="GstElement-struct.last-return"></a>last_return</code></em>;</span></p></td> |
| <td>the last return value of an element state change</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> *<em class="structfield"><code><a name="GstElement-struct.bus"></a>bus</code></em>;</span></p></td> |
| <td>the bus of the element. This bus is provided to the element by the |
| parent element or the application. A <a class="link" href="GstPipeline.html" title="GstPipeline"><span class="type">GstPipeline</span></a> has a bus of its own.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><a class="link" href="GstClock.html" title="GstClock"><span class="type">GstClock</span></a> *<em class="structfield"><code><a name="GstElement-struct.clock"></a>clock</code></em>;</span></p></td> |
| <td>the clock of the element. This clock is usually provided to the |
| element by the toplevel <a class="link" href="GstPipeline.html" title="GstPipeline"><span class="type">GstPipeline</span></a>.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><a class="link" href="GstClock.html#GstClockTimeDiff" title="GstClockTimeDiff"><span class="type">GstClockTimeDiff</span></a> <em class="structfield"><code><a name="GstElement-struct.base-time"></a>base_time</code></em>;</span></p></td> |
| <td>the time of the clock right before the element is set to |
| PLAYING. Subtracting <em class="parameter"><code>base_time</code></em> from the current clock time in the PLAYING |
| state will yield the running_time against the clock.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> <em class="structfield"><code><a name="GstElement-struct.start-time"></a>start_time</code></em>;</span></p></td> |
| <td>the running_time of the last PAUSED state</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="GstElement-struct.numpads"></a>numpads</code></em>;</span></p></td> |
| <td>number of pads of the element, includes both source and sink pads.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *<em class="structfield"><code><a name="GstElement-struct.pads"></a>pads</code></em>;</span></p></td> |
| <td>list of pads. <span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Gst.Pad]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="GstElement-struct.numsrcpads"></a>numsrcpads</code></em>;</span></p></td> |
| <td>number of source pads of the element.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *<em class="structfield"><code><a name="GstElement-struct.srcpads"></a>srcpads</code></em>;</span></p></td> |
| <td>list of source pads. <span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Gst.Pad]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="type">guint16</span> <em class="structfield"><code><a name="GstElement-struct.numsinkpads"></a>numsinkpads</code></em>;</span></p></td> |
| <td>number of sink pads of the element.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *<em class="structfield"><code><a name="GstElement-struct.sinkpads"></a>sinkpads</code></em>;</span></p></td> |
| <td>list of sink pads. <span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Gst.Pad]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="GstElement-struct.pads-cookie"></a>pads_cookie</code></em>;</span></p></td> |
| <td>updated whenever the a pad is added or removed</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><a class="link" href="gstreamer-GstContext.html#GstContext" title="GstContext"><span class="type">GstContext</span></a> *<em class="structfield"><code><a name="GstElement-struct.context"></a>context</code></em>;</span></p></td> |
| <td></td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GstElementClass"></a><h3>struct GstElementClass</h3> |
| <pre class="programlisting">struct GstElementClass { |
| GstObjectClass parent_class; |
| |
| /* the element metadata */ |
| gpointer metadata; |
| |
| /* factory that the element was created from */ |
| GstElementFactory *elementfactory; |
| |
| /* templates for our pads */ |
| GList *padtemplates; |
| gint numpadtemplates; |
| guint32 pad_templ_cookie; |
| |
| /* virtual methods for subclasses */ |
| |
| /* request/release pads */ |
| GstPad* (*request_new_pad) (GstElement *element, GstPadTemplate *templ, |
| const gchar* name, const GstCaps *caps); |
| void (*release_pad) (GstElement *element, GstPad *pad); |
| |
| /* state changes */ |
| GstStateChangeReturn (*get_state) (GstElement * element, GstState * state, |
| GstState * pending, GstClockTime timeout); |
| GstStateChangeReturn (*set_state) (GstElement *element, GstState state); |
| GstStateChangeReturn (*change_state) (GstElement *element, GstStateChange transition); |
| void (*state_changed) (GstElement *element, GstState oldstate, |
| GstState newstate, GstState pending); |
| |
| /* bus */ |
| void (*set_bus) (GstElement * element, GstBus * bus); |
| |
| /* set/get clocks */ |
| GstClock* (*provide_clock) (GstElement *element); |
| gboolean (*set_clock) (GstElement *element, GstClock *clock); |
| |
| /* query functions */ |
| gboolean (*send_event) (GstElement *element, GstEvent *event); |
| |
| gboolean (*query) (GstElement *element, GstQuery *query); |
| |
| gboolean (*post_message) (GstElement *element, GstMessage *message); |
| |
| void (*set_context) (GstElement *element, GstContext *context); |
| }; |
| </pre> |
| <p> |
| GStreamer element class. Override the vmethods to implement the element |
| functionality. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><a class="link" href="GstObject.html#GstObjectClass" title="struct GstObjectClass"><span class="type">GstObjectClass</span></a> <em class="structfield"><code><a name="GstElementClass.parent-class"></a>parent_class</code></em>;</span></p></td> |
| <td>the parent class structure</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> <em class="structfield"><code><a name="GstElementClass.metadata"></a>metadata</code></em>;</span></p></td> |
| <td>metadata for elements of this class</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><a class="link" href="GstElementFactory.html" title="GstElementFactory"><span class="type">GstElementFactory</span></a> *<em class="structfield"><code><a name="GstElementClass.elementfactory"></a>elementfactory</code></em>;</span></p></td> |
| <td>the <a class="link" href="GstElementFactory.html" title="GstElementFactory"><span class="type">GstElementFactory</span></a> that creates these elements</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> *<em class="structfield"><code><a name="GstElementClass.padtemplates"></a>padtemplates</code></em>;</span></p></td> |
| <td>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of <a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> <em class="structfield"><code><a name="GstElementClass.numpadtemplates"></a>numpadtemplates</code></em>;</span></p></td> |
| <td>the number of padtemplates</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="type">guint32</span> <em class="structfield"><code><a name="GstElementClass.pad-templ-cookie"></a>pad_templ_cookie</code></em>;</span></p></td> |
| <td>changed whenever the padtemplates change</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="structfield"><code><a name="GstElementClass.request-new-pad"></a>request_new_pad</code></em> ()</span></p></td> |
| <td>called when a new pad is requested</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="structfield"><code><a name="GstElementClass.release-pad"></a>release_pad</code></em> ()</span></p></td> |
| <td>called when a request pad is to be released</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="structfield"><code><a name="GstElementClass.get-state"></a>get_state</code></em> ()</span></p></td> |
| <td>get the state of the element</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="structfield"><code><a name="GstElementClass.set-state"></a>set_state</code></em> ()</span></p></td> |
| <td>set a new state on the element</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="structfield"><code><a name="GstElementClass.change-state"></a>change_state</code></em> ()</span></p></td> |
| <td>called by <em class="parameter"><code>set_state</code></em> to perform an incremental state change</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="structfield"><code><a name="GstElementClass.state-changed"></a>state_changed</code></em> ()</span></p></td> |
| <td>called immediately after a new state was set.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="structfield"><code><a name="GstElementClass.set-bus"></a>set_bus</code></em> ()</span></p></td> |
| <td>set a <a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> on the element</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="structfield"><code><a name="GstElementClass.provide-clock"></a>provide_clock</code></em> ()</span></p></td> |
| <td>gets the <a class="link" href="GstClock.html" title="GstClock"><span class="type">GstClock</span></a> provided by the element</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="structfield"><code><a name="GstElementClass.set-clock"></a>set_clock</code></em> ()</span></p></td> |
| <td>set the <a class="link" href="GstClock.html" title="GstClock"><span class="type">GstClock</span></a> on the element</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="structfield"><code><a name="GstElementClass.send-event"></a>send_event</code></em> ()</span></p></td> |
| <td>send a <a class="link" href="gstreamer-GstEvent.html#GstEvent" title="struct GstEvent"><span class="type">GstEvent</span></a> to the element</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="structfield"><code><a name="GstElementClass.query"></a>query</code></em> ()</span></p></td> |
| <td>perform a <a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> on the element</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="structfield"><code><a name="GstElementClass.post-message"></a>post_message</code></em> ()</span></p></td> |
| <td>called when a message is posted on the element. Chain up to |
| the parent class' handler to have it posted on the bus.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="structfield"><code><a name="GstElementClass.set-context"></a>set_context</code></em> ()</span></p></td> |
| <td>set a <a class="link" href="gstreamer-GstContext.html#GstContext" title="GstContext"><span class="type">GstContext</span></a> on the element</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GstElementFlags"></a><h3>enum GstElementFlags</h3> |
| <pre class="programlisting">typedef enum { |
| GST_ELEMENT_FLAG_LOCKED_STATE = (GST_OBJECT_FLAG_LAST << 0), |
| GST_ELEMENT_FLAG_SINK = (GST_OBJECT_FLAG_LAST << 1), |
| GST_ELEMENT_FLAG_SOURCE = (GST_OBJECT_FLAG_LAST << 2), |
| GST_ELEMENT_FLAG_PROVIDE_CLOCK = (GST_OBJECT_FLAG_LAST << 3), |
| GST_ELEMENT_FLAG_REQUIRE_CLOCK = (GST_OBJECT_FLAG_LAST << 4), |
| GST_ELEMENT_FLAG_INDEXABLE = (GST_OBJECT_FLAG_LAST << 5), |
| /* padding */ |
| GST_ELEMENT_FLAG_LAST = (GST_OBJECT_FLAG_LAST << 10) |
| } GstElementFlags; |
| </pre> |
| <p> |
| The standard flags that an element may have. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><a name="GST-ELEMENT-FLAG-LOCKED-STATE:CAPS"></a><span class="term"><code class="literal">GST_ELEMENT_FLAG_LOCKED_STATE</code></span></p></td> |
| <td>ignore state changes from parent |
| </td> |
| </tr> |
| <tr> |
| <td><p><a name="GST-ELEMENT-FLAG-SINK:CAPS"></a><span class="term"><code class="literal">GST_ELEMENT_FLAG_SINK</code></span></p></td> |
| <td>the element is a sink |
| </td> |
| </tr> |
| <tr> |
| <td><p><a name="GST-ELEMENT-FLAG-SOURCE:CAPS"></a><span class="term"><code class="literal">GST_ELEMENT_FLAG_SOURCE</code></span></p></td> |
| <td>the element is a source. |
| </td> |
| </tr> |
| <tr> |
| <td><p><a name="GST-ELEMENT-FLAG-PROVIDE-CLOCK:CAPS"></a><span class="term"><code class="literal">GST_ELEMENT_FLAG_PROVIDE_CLOCK</code></span></p></td> |
| <td>the element can provide a clock |
| </td> |
| </tr> |
| <tr> |
| <td><p><a name="GST-ELEMENT-FLAG-REQUIRE-CLOCK:CAPS"></a><span class="term"><code class="literal">GST_ELEMENT_FLAG_REQUIRE_CLOCK</code></span></p></td> |
| <td>the element requires a clock |
| </td> |
| </tr> |
| <tr> |
| <td><p><a name="GST-ELEMENT-FLAG-INDEXABLE:CAPS"></a><span class="term"><code class="literal">GST_ELEMENT_FLAG_INDEXABLE</code></span></p></td> |
| <td>the element can use an index |
| </td> |
| </tr> |
| <tr> |
| <td><p><a name="GST-ELEMENT-FLAG-LAST:CAPS"></a><span class="term"><code class="literal">GST_ELEMENT_FLAG_LAST</code></span></p></td> |
| <td>offset to define more flags |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GstState"></a><h3>enum GstState</h3> |
| <pre class="programlisting">typedef enum { |
| GST_STATE_VOID_PENDING = 0, |
| GST_STATE_NULL = 1, |
| GST_STATE_READY = 2, |
| GST_STATE_PAUSED = 3, |
| GST_STATE_PLAYING = 4 |
| } GstState; |
| </pre> |
| <p> |
| The possible states an element can be in. States can be changed using |
| <a class="link" href="GstElement.html#gst-element-set-state" title="gst_element_set_state ()"><code class="function">gst_element_set_state()</code></a> and checked using <a class="link" href="GstElement.html#gst-element-get-state" title="gst_element_get_state ()"><code class="function">gst_element_get_state()</code></a>. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><a name="GST-STATE-VOID-PENDING:CAPS"></a><span class="term"><code class="literal">GST_STATE_VOID_PENDING</code></span></p></td> |
| <td>no pending state. |
| </td> |
| </tr> |
| <tr> |
| <td><p><a name="GST-STATE-NULL:CAPS"></a><span class="term"><code class="literal">GST_STATE_NULL</code></span></p></td> |
| <td>the NULL state or initial state of an element. |
| </td> |
| </tr> |
| <tr> |
| <td><p><a name="GST-STATE-READY:CAPS"></a><span class="term"><code class="literal">GST_STATE_READY</code></span></p></td> |
| <td>the element is ready to go to PAUSED. |
| </td> |
| </tr> |
| <tr> |
| <td><p><a name="GST-STATE-PAUSED:CAPS"></a><span class="term"><code class="literal">GST_STATE_PAUSED</code></span></p></td> |
| <td>the element is PAUSED, it is ready to accept and |
| process data. Sink elements however only accept one |
| buffer and then block. |
| </td> |
| </tr> |
| <tr> |
| <td><p><a name="GST-STATE-PLAYING:CAPS"></a><span class="term"><code class="literal">GST_STATE_PLAYING</code></span></p></td> |
| <td>the element is PLAYING, the <a class="link" href="GstClock.html" title="GstClock"><span class="type">GstClock</span></a> is running and |
| the data is flowing. |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GstStateChange"></a><h3>enum GstStateChange</h3> |
| <pre class="programlisting">typedef enum { |
| GST_STATE_CHANGE_NULL_TO_READY = (GST_STATE_NULL<<3) | GST_STATE_READY, |
| GST_STATE_CHANGE_READY_TO_PAUSED = (GST_STATE_READY<<3) | GST_STATE_PAUSED, |
| GST_STATE_CHANGE_PAUSED_TO_PLAYING = (GST_STATE_PAUSED<<3) | GST_STATE_PLAYING, |
| GST_STATE_CHANGE_PLAYING_TO_PAUSED = (GST_STATE_PLAYING<<3) | GST_STATE_PAUSED, |
| GST_STATE_CHANGE_PAUSED_TO_READY = (GST_STATE_PAUSED<<3) | GST_STATE_READY, |
| GST_STATE_CHANGE_READY_TO_NULL = (GST_STATE_READY<<3) | GST_STATE_NULL |
| } GstStateChange; |
| </pre> |
| <p> |
| These are the different state changes an element goes through. |
| <a class="link" href="GstElement.html#GST-STATE-NULL:CAPS"><code class="literal">GST_STATE_NULL</code></a> ⇒ <a class="link" href="GstElement.html#GST-STATE-PLAYING:CAPS"><code class="literal">GST_STATE_PLAYING</code></a> is called an upwards state change |
| and <a class="link" href="GstElement.html#GST-STATE-PLAYING:CAPS"><code class="literal">GST_STATE_PLAYING</code></a> ⇒ <a class="link" href="GstElement.html#GST-STATE-NULL:CAPS"><code class="literal">GST_STATE_NULL</code></a> a downwards state change. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><a name="GST-STATE-CHANGE-NULL-TO-READY:CAPS"></a><span class="term"><code class="literal">GST_STATE_CHANGE_NULL_TO_READY</code></span></p></td> |
| <td>state change from NULL to READY. |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"><p> |
| The element must check if the resources it needs are available. Device |
| sinks and -sources typically try to probe the device to constrain their |
| caps. |
| </p></li> |
| <li class="listitem"><p> |
| The element opens the device (in case feature need to be probed). |
| </p></li> |
| </ul></div> |
| </td> |
| </tr> |
| <tr> |
| <td><p><a name="GST-STATE-CHANGE-READY-TO-PAUSED:CAPS"></a><span class="term"><code class="literal">GST_STATE_CHANGE_READY_TO_PAUSED</code></span></p></td> |
| <td>state change from READY to PAUSED. |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"><p> |
| The element pads are activated in order to receive data in PAUSED. |
| Streaming threads are started. |
| </p></li> |
| <li class="listitem"><p> |
| Some elements might need to return <a class="link" href="GstElement.html#GST-STATE-CHANGE-ASYNC:CAPS"><code class="literal">GST_STATE_CHANGE_ASYNC</code></a> and complete |
| the state change when they have enough information. It is a requirement |
| for sinks to return <a class="link" href="GstElement.html#GST-STATE-CHANGE-ASYNC:CAPS"><code class="literal">GST_STATE_CHANGE_ASYNC</code></a> and complete the state change |
| when they receive the first buffer or <a class="link" href="gstreamer-GstEvent.html#GST-EVENT-EOS:CAPS"><code class="literal">GST_EVENT_EOS</code></a> (preroll). |
| Sinks also block the dataflow when in PAUSED. |
| </p></li> |
| <li class="listitem"><p> |
| A pipeline resets the running_time to 0. |
| </p></li> |
| <li class="listitem"><p> |
| Live sources return <a class="link" href="GstElement.html#GST-STATE-CHANGE-NO-PREROLL:CAPS"><code class="literal">GST_STATE_CHANGE_NO_PREROLL</code></a> and don't generate data. |
| </p></li> |
| </ul></div> |
| </td> |
| </tr> |
| <tr> |
| <td><p><a name="GST-STATE-CHANGE-PAUSED-TO-PLAYING:CAPS"></a><span class="term"><code class="literal">GST_STATE_CHANGE_PAUSED_TO_PLAYING</code></span></p></td> |
| <td>state change from PAUSED to PLAYING. |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"><p> |
| Most elements ignore this state change. |
| </p></li> |
| <li class="listitem"><p> |
| The pipeline selects a <a class="link" href="GstClock.html" title="GstClock"><span class="type">GstClock</span></a> and distributes this to all the children |
| before setting them to PLAYING. This means that it is only alowed to |
| synchronize on the <a class="link" href="GstClock.html" title="GstClock"><span class="type">GstClock</span></a> in the PLAYING state. |
| </p></li> |
| <li class="listitem"><p> |
| The pipeline uses the <a class="link" href="GstClock.html" title="GstClock"><span class="type">GstClock</span></a> and the running_time to calculate the |
| base_time. The base_time is distributed to all children when performing |
| the state change. |
| </p></li> |
| <li class="listitem"><p> |
| Sink elements stop blocking on the preroll buffer or event and start |
| rendering the data. |
| </p></li> |
| <li class="listitem"><p> |
| Sinks can post <a class="link" href="gstreamer-GstMessage.html#GST-MESSAGE-EOS:CAPS"><code class="literal">GST_MESSAGE_EOS</code></a> in the PLAYING state. It is not allowed |
| to post <a class="link" href="gstreamer-GstMessage.html#GST-MESSAGE-EOS:CAPS"><code class="literal">GST_MESSAGE_EOS</code></a> when not in the PLAYING state. |
| </p></li> |
| <li class="listitem"><p> |
| While streaming in PAUSED or PLAYING elements can create and remove |
| sometimes pads. |
| </p></li> |
| <li class="listitem"><p> |
| Live sources start generating data and return <a class="link" href="GstElement.html#GST-STATE-CHANGE-SUCCESS:CAPS"><code class="literal">GST_STATE_CHANGE_SUCCESS</code></a>. |
| </p></li> |
| </ul></div> |
| </td> |
| </tr> |
| <tr> |
| <td><p><a name="GST-STATE-CHANGE-PLAYING-TO-PAUSED:CAPS"></a><span class="term"><code class="literal">GST_STATE_CHANGE_PLAYING_TO_PAUSED</code></span></p></td> |
| <td>state change from PLAYING to PAUSED. |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"><p> |
| Most elements ignore this state change. |
| </p></li> |
| <li class="listitem"><p> |
| The pipeline calculates the running_time based on the last selected |
| <a class="link" href="GstClock.html" title="GstClock"><span class="type">GstClock</span></a> and the base_time. It stores this information to continue |
| playback when going back to the PLAYING state. |
| </p></li> |
| <li class="listitem"><p> |
| Sinks unblock any <a class="link" href="GstClock.html" title="GstClock"><span class="type">GstClock</span></a> wait calls. |
| </p></li> |
| <li class="listitem"><p> |
| When a sink does not have a pending buffer to play, it returns |
| <a class="link" href="GstElement.html#GST-STATE-CHANGE-ASYNC:CAPS"><code class="literal">GST_STATE_CHANGE_ASYNC</code></a> from this state change and completes the state |
| change when it receives a new buffer or an <a class="link" href="gstreamer-GstEvent.html#GST-EVENT-EOS:CAPS"><code class="literal">GST_EVENT_EOS</code></a>. |
| </p></li> |
| <li class="listitem"><p> |
| Any queued <a class="link" href="gstreamer-GstMessage.html#GST-MESSAGE-EOS:CAPS"><code class="literal">GST_MESSAGE_EOS</code></a> items are removed since they will be reposted |
| when going back to the PLAYING state. The EOS messages are queued in |
| <a class="link" href="GstBin.html" title="GstBin"><span class="type">GstBin</span></a> containers. |
| </p></li> |
| <li class="listitem"><p> |
| Live sources stop generating data and return <a class="link" href="GstElement.html#GST-STATE-CHANGE-NO-PREROLL:CAPS"><code class="literal">GST_STATE_CHANGE_NO_PREROLL</code></a>. |
| </p></li> |
| </ul></div> |
| </td> |
| </tr> |
| <tr> |
| <td><p><a name="GST-STATE-CHANGE-PAUSED-TO-READY:CAPS"></a><span class="term"><code class="literal">GST_STATE_CHANGE_PAUSED_TO_READY</code></span></p></td> |
| <td>state change from PAUSED to READY. |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"><p> |
| Sinks unblock any waits in the preroll. |
| </p></li> |
| <li class="listitem"><p> |
| Elements unblock any waits on devices |
| </p></li> |
| <li class="listitem"><p> |
| Chain or get_range functions return <a class="link" href="GstPad.html#GST-FLOW-FLUSHING:CAPS"><code class="literal">GST_FLOW_FLUSHING</code></a>. |
| </p></li> |
| <li class="listitem"><p> |
| The element pads are deactivated so that streaming becomes impossible and |
| all streaming threads are stopped. |
| </p></li> |
| <li class="listitem"><p> |
| The sink forgets all negotiated formats |
| </p></li> |
| <li class="listitem"><p> |
| Elements remove all sometimes pads |
| </p></li> |
| </ul></div> |
| </td> |
| </tr> |
| <tr> |
| <td><p><a name="GST-STATE-CHANGE-READY-TO-NULL:CAPS"></a><span class="term"><code class="literal">GST_STATE_CHANGE_READY_TO_NULL</code></span></p></td> |
| <td>state change from READY to NULL. |
| <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> |
| <li class="listitem"><p> |
| Elements close devices |
| </p></li> |
| <li class="listitem"><p> |
| Elements reset any internal state. |
| </p></li> |
| </ul></div> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GstStateChangeReturn"></a><h3>enum GstStateChangeReturn</h3> |
| <pre class="programlisting">typedef enum { |
| GST_STATE_CHANGE_FAILURE = 0, |
| GST_STATE_CHANGE_SUCCESS = 1, |
| GST_STATE_CHANGE_ASYNC = 2, |
| GST_STATE_CHANGE_NO_PREROLL = 3 |
| } GstStateChangeReturn; |
| </pre> |
| <p> |
| The possible return values from a state change function such as |
| <a class="link" href="GstElement.html#gst-element-set-state" title="gst_element_set_state ()"><code class="function">gst_element_set_state()</code></a>. Only <em class="parameter"><code>GST_STATE_CHANGE_FAILURE</code></em> is a real failure. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><a name="GST-STATE-CHANGE-FAILURE:CAPS"></a><span class="term"><code class="literal">GST_STATE_CHANGE_FAILURE</code></span></p></td> |
| <td>the state change failed |
| </td> |
| </tr> |
| <tr> |
| <td><p><a name="GST-STATE-CHANGE-SUCCESS:CAPS"></a><span class="term"><code class="literal">GST_STATE_CHANGE_SUCCESS</code></span></p></td> |
| <td>the state change succeeded |
| </td> |
| </tr> |
| <tr> |
| <td><p><a name="GST-STATE-CHANGE-ASYNC:CAPS"></a><span class="term"><code class="literal">GST_STATE_CHANGE_ASYNC</code></span></p></td> |
| <td>the state change will happen asynchronously |
| </td> |
| </tr> |
| <tr> |
| <td><p><a name="GST-STATE-CHANGE-NO-PREROLL:CAPS"></a><span class="term"><code class="literal">GST_STATE_CHANGE_NO_PREROLL</code></span></p></td> |
| <td>the state change succeeded but the element |
| cannot produce data in <a class="link" href="GstElement.html#GST-STATE-PAUSED:CAPS"><code class="literal">GST_STATE_PAUSED</code></a>. |
| This typically happens with live sources. |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-STATE:CAPS"></a><h3>GST_STATE()</h3> |
| <pre class="programlisting">#define GST_STATE(elem) (GST_ELEMENT_CAST(elem)->current_state) |
| </pre> |
| <p> |
| This macro returns the current <a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a> of the element. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody><tr> |
| <td><p><span class="term"><em class="parameter"><code>elem</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to return state for.</td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-STATE-GET-NEXT:CAPS"></a><h3>GST_STATE_GET_NEXT()</h3> |
| <pre class="programlisting">#define GST_STATE_GET_NEXT(cur,pending) ((GstState)((cur) + __GST_SIGN ((gint)(pending) - (gint)(cur)))) |
| </pre> |
| <p> |
| Given a current state <em class="parameter"><code>cur</code></em> and a target state <em class="parameter"><code>pending</code></em>, calculate the next (intermediate) |
| <a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a>. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>cur</code></em> :</span></p></td> |
| <td>A starting <a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>pending</code></em> :</span></p></td> |
| <td>A target <a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-STATE-NEXT:CAPS"></a><h3>GST_STATE_NEXT()</h3> |
| <pre class="programlisting">#define GST_STATE_NEXT(elem) (GST_ELEMENT_CAST(elem)->next_state) |
| </pre> |
| <p> |
| This macro returns the next <a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a> of the element. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody><tr> |
| <td><p><span class="term"><em class="parameter"><code>elem</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to return the next state for.</td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-STATE-PENDING:CAPS"></a><h3>GST_STATE_PENDING()</h3> |
| <pre class="programlisting">#define GST_STATE_PENDING(elem) (GST_ELEMENT_CAST(elem)->pending_state) |
| </pre> |
| <p> |
| This macro returns the currently pending <a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a> of the element. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody><tr> |
| <td><p><span class="term"><em class="parameter"><code>elem</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to return the pending state for.</td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-STATE-RETURN:CAPS"></a><h3>GST_STATE_RETURN()</h3> |
| <pre class="programlisting">#define GST_STATE_RETURN(elem) (GST_ELEMENT_CAST(elem)->last_return) |
| </pre> |
| <p> |
| This macro returns the last <a class="link" href="GstElement.html#GstStateChangeReturn" title="enum GstStateChangeReturn"><span class="type">GstStateChangeReturn</span></a> value. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody><tr> |
| <td><p><span class="term"><em class="parameter"><code>elem</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to return the last state result for.</td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-STATE-TARGET:CAPS"></a><h3>GST_STATE_TARGET()</h3> |
| <pre class="programlisting">#define GST_STATE_TARGET(elem) (GST_ELEMENT_CAST(elem)->target_state) |
| </pre> |
| <p> |
| This macro returns the target <a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a> of the element. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody><tr> |
| <td><p><span class="term"><em class="parameter"><code>elem</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to return the target state for.</td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-STATE-TRANSITION:CAPS"></a><h3>GST_STATE_TRANSITION()</h3> |
| <pre class="programlisting">#define GST_STATE_TRANSITION(cur,next) ((GstStateChange)(((cur)<<3)|(next))) |
| </pre> |
| <p> |
| Given a current state <em class="parameter"><code>cur</code></em> and a next state <em class="parameter"><code>next</code></em>, calculate the associated |
| <a class="link" href="GstElement.html#GstStateChange" title="enum GstStateChange"><span class="type">GstStateChange</span></a> transition. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>cur</code></em> :</span></p></td> |
| <td>A current state</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>next</code></em> :</span></p></td> |
| <td>A next state</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-STATE-TRANSITION-CURRENT:CAPS"></a><h3>GST_STATE_TRANSITION_CURRENT()</h3> |
| <pre class="programlisting">#define GST_STATE_TRANSITION_CURRENT(trans) ((GstState)((trans)>>3)) |
| </pre> |
| <p> |
| Given a state transition <em class="parameter"><code>trans</code></em>, extract the current <a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a>. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody><tr> |
| <td><p><span class="term"><em class="parameter"><code>trans</code></em> :</span></p></td> |
| <td>A <a class="link" href="GstElement.html#GstStateChange" title="enum GstStateChange"><span class="type">GstStateChange</span></a> |
| </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-STATE-TRANSITION-NEXT:CAPS"></a><h3>GST_STATE_TRANSITION_NEXT()</h3> |
| <pre class="programlisting">#define GST_STATE_TRANSITION_NEXT(trans) ((GstState)((trans)&0x7)) |
| </pre> |
| <p> |
| Given a state transition <em class="parameter"><code>trans</code></em>, extract the next <a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a>. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody><tr> |
| <td><p><span class="term"><em class="parameter"><code>trans</code></em> :</span></p></td> |
| <td>A <a class="link" href="GstElement.html#GstStateChange" title="enum GstStateChange"><span class="type">GstStateChange</span></a> |
| </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-STATE-GET-LOCK:CAPS"></a><h3>GST_STATE_GET_LOCK()</h3> |
| <pre class="programlisting">#define GST_STATE_GET_LOCK(elem) (&(GST_ELEMENT_CAST(elem)->state_lock)) |
| </pre> |
| <p> |
| Get a reference to the state lock of <em class="parameter"><code>elem</code></em>. |
| This lock is used by the core. It is taken while getting or setting |
| the state, during state changes, and while finalizing. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody><tr> |
| <td><p><span class="term"><em class="parameter"><code>elem</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> |
| </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-STATE-GET-COND:CAPS"></a><h3>GST_STATE_GET_COND()</h3> |
| <pre class="programlisting">#define GST_STATE_GET_COND(elem) (&GST_ELEMENT_CAST(elem)->state_cond) |
| </pre> |
| <p> |
| Get the conditional used to signal the completion of a state change. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody><tr> |
| <td><p><span class="term"><em class="parameter"><code>elem</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> |
| </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-ELEMENT-NAME:CAPS"></a><h3>GST_ELEMENT_NAME()</h3> |
| <pre class="programlisting">#define GST_ELEMENT_NAME(elem) (GST_OBJECT_NAME(elem)) |
| </pre> |
| <p> |
| Gets the name of this element. Use only in core as this is not |
| ABI-compatible. Others use <a class="link" href="GstElement.html#gst-element-get-name" title="gst_element_get_name()"><code class="function">gst_element_get_name()</code></a> |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody><tr> |
| <td><p><span class="term"><em class="parameter"><code>elem</code></em> :</span></p></td> |
| <td>A <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to query</td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-ELEMENT-PARENT:CAPS"></a><h3>GST_ELEMENT_PARENT()</h3> |
| <pre class="programlisting">#define GST_ELEMENT_PARENT(elem) (GST_ELEMENT_CAST(GST_OBJECT_PARENT(elem))) |
| </pre> |
| <p> |
| Get the parent object of this element. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody><tr> |
| <td><p><span class="term"><em class="parameter"><code>elem</code></em> :</span></p></td> |
| <td>A <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to query</td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-ELEMENT-BUS:CAPS"></a><h3>GST_ELEMENT_BUS()</h3> |
| <pre class="programlisting">#define GST_ELEMENT_BUS(elem) (GST_ELEMENT_CAST(elem)->bus) |
| </pre> |
| <p> |
| Get the message bus of this element. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody><tr> |
| <td><p><span class="term"><em class="parameter"><code>elem</code></em> :</span></p></td> |
| <td>A <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to query</td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-ELEMENT-CLOCK:CAPS"></a><h3>GST_ELEMENT_CLOCK()</h3> |
| <pre class="programlisting">#define GST_ELEMENT_CLOCK(elem) (GST_ELEMENT_CAST(elem)->clock) |
| </pre> |
| <p> |
| Get the clock of this element |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody><tr> |
| <td><p><span class="term"><em class="parameter"><code>elem</code></em> :</span></p></td> |
| <td>A <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to query</td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-ELEMENT-PADS:CAPS"></a><h3>GST_ELEMENT_PADS()</h3> |
| <pre class="programlisting">#define GST_ELEMENT_PADS(elem) (GST_ELEMENT_CAST(elem)->pads) |
| </pre> |
| <p> |
| Get the pads of this elements. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody><tr> |
| <td><p><span class="term"><em class="parameter"><code>elem</code></em> :</span></p></td> |
| <td>A <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to query</td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-ELEMENT-START-TIME:CAPS"></a><h3>GST_ELEMENT_START_TIME()</h3> |
| <pre class="programlisting">#define GST_ELEMENT_START_TIME(elem) (GST_ELEMENT_CAST(elem)->start_time) |
| </pre> |
| <p> |
| This macro returns the start_time of the <em class="parameter"><code>elem</code></em>. The start_time is the |
| running_time of the pipeline when the element went to PAUSED. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody><tr> |
| <td><p><span class="term"><em class="parameter"><code>elem</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to return the start time for.</td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-ELEMENT-ERROR:CAPS"></a><h3>GST_ELEMENT_ERROR()</h3> |
| <pre class="programlisting">#define GST_ELEMENT_ERROR(el, domain, code, text, debug)</pre> |
| <p> |
| Utility function that elements can use in case they encountered a fatal |
| data processing error. The pipeline will post an error message and the |
| application will be requested to stop further media processing. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>el</code></em> :</span></p></td> |
| <td>the element that generates the error</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>domain</code></em> :</span></p></td> |
| <td>like CORE, LIBRARY, RESOURCE or STREAM (see <a class="link" href="gstreamer-GstGError.html" title="GstGError"><span class="type">gstreamer-GstGError</span></a>)</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>code</code></em> :</span></p></td> |
| <td>error code defined for that domain (see <a class="link" href="gstreamer-GstGError.html" title="GstGError"><span class="type">gstreamer-GstGError</span></a>)</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>text</code></em> :</span></p></td> |
| <td>the message to display (format string and args enclosed in |
| parentheses)</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>debug</code></em> :</span></p></td> |
| <td>debugging information for the message (format string and args |
| enclosed in parentheses)</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-ELEMENT-WARNING:CAPS"></a><h3>GST_ELEMENT_WARNING()</h3> |
| <pre class="programlisting">#define GST_ELEMENT_WARNING(el, domain, code, text, debug)</pre> |
| <p> |
| Utility function that elements can use in case they encountered a non-fatal |
| data processing problem. The pipeline will post a warning message and the |
| application will be informed. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>el</code></em> :</span></p></td> |
| <td>the element that generates the warning</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>domain</code></em> :</span></p></td> |
| <td>like CORE, LIBRARY, RESOURCE or STREAM (see <a class="link" href="gstreamer-GstGError.html" title="GstGError"><span class="type">gstreamer-GstGError</span></a>)</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>code</code></em> :</span></p></td> |
| <td>error code defined for that domain (see <a class="link" href="gstreamer-GstGError.html" title="GstGError"><span class="type">gstreamer-GstGError</span></a>)</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>text</code></em> :</span></p></td> |
| <td>the message to display (format string and args enclosed in |
| parentheses)</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>debug</code></em> :</span></p></td> |
| <td>debugging information for the message (format string and args |
| enclosed in parentheses)</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-ELEMENT-INFO:CAPS"></a><h3>GST_ELEMENT_INFO()</h3> |
| <pre class="programlisting">#define GST_ELEMENT_INFO(el, domain, code, text, debug)</pre> |
| <p> |
| Utility function that elements can use in case they want to inform |
| the application of something noteworthy that is not an error. |
| The pipeline will post a info message and the |
| application will be informed. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>el</code></em> :</span></p></td> |
| <td>the element that generates the information</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>domain</code></em> :</span></p></td> |
| <td>like CORE, LIBRARY, RESOURCE or STREAM (see <a class="link" href="gstreamer-GstGError.html" title="GstGError"><span class="type">gstreamer-GstGError</span></a>)</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>code</code></em> :</span></p></td> |
| <td>error code defined for that domain (see <a class="link" href="gstreamer-GstGError.html" title="GstGError"><span class="type">gstreamer-GstGError</span></a>)</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>text</code></em> :</span></p></td> |
| <td>the message to display (format string and args enclosed in |
| parentheses)</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>debug</code></em> :</span></p></td> |
| <td>debugging information for the message (format string and args |
| enclosed in parentheses)</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-ELEMENT-IS-LOCKED-STATE:CAPS"></a><h3>GST_ELEMENT_IS_LOCKED_STATE()</h3> |
| <pre class="programlisting">#define GST_ELEMENT_IS_LOCKED_STATE(elem) (GST_OBJECT_FLAG_IS_SET(elem,GST_ELEMENT_FLAG_LOCKED_STATE)) |
| </pre> |
| <p> |
| Check if the element is in the locked state and therefore will ignore state |
| changes from its parent object. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody><tr> |
| <td><p><span class="term"><em class="parameter"><code>elem</code></em> :</span></p></td> |
| <td>A <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to query</td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-ELEMENT-METADATA-AUTHOR:CAPS"></a><h3>GST_ELEMENT_METADATA_AUTHOR</h3> |
| <pre class="programlisting">#define GST_ELEMENT_METADATA_AUTHOR "author" |
| </pre> |
| <p> |
| Name and contact details of the author(s). Use \n to separate |
| multiple author details. |
| E.g: "Joe Bloggs <joe.blogs at foo.com>" |
| </p> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-ELEMENT-METADATA-DESCRIPTION:CAPS"></a><h3>GST_ELEMENT_METADATA_DESCRIPTION</h3> |
| <pre class="programlisting">#define GST_ELEMENT_METADATA_DESCRIPTION "description" |
| </pre> |
| <p> |
| Sentence describing the purpose of the element. |
| E.g: "Write stream to a file" |
| </p> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-ELEMENT-METADATA-DOC-URI:CAPS"></a><h3>GST_ELEMENT_METADATA_DOC_URI</h3> |
| <pre class="programlisting">#define GST_ELEMENT_METADATA_DOC_URI "doc-uri" |
| </pre> |
| <p> |
| Set uri pointing to user documentation. Applications can use this to show |
| help for e.g. effects to users. |
| </p> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-ELEMENT-METADATA-ICON-NAME:CAPS"></a><h3>GST_ELEMENT_METADATA_ICON_NAME</h3> |
| <pre class="programlisting">#define GST_ELEMENT_METADATA_ICON_NAME "icon-name" |
| </pre> |
| <p> |
| Elements that bridge to certain other products can include an icon of that |
| used product. Application can show the icon in menus/selectors to help |
| identifying specific elements. |
| </p> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-ELEMENT-METADATA-KLASS:CAPS"></a><h3>GST_ELEMENT_METADATA_KLASS</h3> |
| <pre class="programlisting">#define GST_ELEMENT_METADATA_KLASS "klass" |
| </pre> |
| <p> |
| String describing the type of element, as an unordered list |
| separated with slashes ('/'). See draft-klass.txt of the design docs |
| for more details and common types. E.g: "Sink/File" |
| </p> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GST-ELEMENT-METADATA-LONGNAME:CAPS"></a><h3>GST_ELEMENT_METADATA_LONGNAME</h3> |
| <pre class="programlisting">#define GST_ELEMENT_METADATA_LONGNAME "long-name" |
| </pre> |
| <p> |
| The long English name of the element. E.g. "File Sink" |
| </p> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-class-add-pad-template"></a><h3>gst_element_class_add_pad_template ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> gst_element_class_add_pad_template (<em class="parameter"><code><a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a> *klass</code></em>, |
| <em class="parameter"><code><a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a> *templ</code></em>);</pre> |
| <p> |
| Adds a padtemplate to an element class. This is mainly used in the _class_init |
| functions of classes. If a pad template with the same name as an already |
| existing one is added the old one is replaced by the new one. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>klass</code></em> :</span></p></td> |
| <td>the <a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a> to add the pad template to.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>templ</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a> to add to the element class. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-class-get-pad-template"></a><h3>gst_element_class_get_pad_template ()</h3> |
| <pre class="programlisting"><a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="returnvalue">GstPadTemplate</span></a> * gst_element_class_get_pad_template (<em class="parameter"><code><a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a> *element_class</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre> |
| <p> |
| Retrieves a padtemplate from <em class="parameter"><code>element_class</code></em> with the given name. |
| </p> |
| <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"> |
| <h3 class="title">Note</h3>If you use this function in the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GInstanceInitFunc"><span class="type">GInstanceInitFunc</span></a> of an object class |
| that has subclasses, make sure to pass the g_class parameter of the |
| <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GInstanceInitFunc"><span class="type">GInstanceInitFunc</span></a> here.</div> |
| <p> |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element_class</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a> to get the pad template of.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td> |
| <td>the name of the <a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a> to get.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>the <a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a> with the given name, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> |
| if none was found. No unreferencing is necessary. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-class-get-pad-template-list"></a><h3>gst_element_class_get_pad_template_list ()</h3> |
| <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="returnvalue">GList</span></a> * gst_element_class_get_pad_template_list |
| (<em class="parameter"><code><a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a> *element_class</code></em>);</pre> |
| <p> |
| Retrieves a list of the pad templates associated with <em class="parameter"><code>element_class</code></em>. The |
| list must not be modified by the calling code. |
| </p> |
| <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"> |
| <h3 class="title">Note</h3>If you use this function in the <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GInstanceInitFunc"><span class="type">GInstanceInitFunc</span></a> of an object class |
| that has subclasses, make sure to pass the g_class parameter of the |
| <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GInstanceInitFunc"><span class="type">GInstanceInitFunc</span></a> here.</div> |
| <p> |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element_class</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a> to get pad templates of.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>the <a href="http://library.gnome.org/devel/glib/unstable/glib-Doubly-Linked-Lists.html#GList"><span class="type">GList</span></a> of |
| pad templates. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> Gst.PadTemplate]</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-class-set-metadata"></a><h3>gst_element_class_set_metadata ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> gst_element_class_set_metadata (<em class="parameter"><code><a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a> *klass</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *longname</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *classification</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *description</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *author</code></em>);</pre> |
| <p> |
| Sets the detailed information for a <a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a>. |
| </p> |
| <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"> |
| <h3 class="title">Note</h3>This function is for use in _class_init functions only.</div> |
| <p> |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>klass</code></em> :</span></p></td> |
| <td>class to set metadata for</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>longname</code></em> :</span></p></td> |
| <td>The long English name of the element. E.g. "File Sink"</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>classification</code></em> :</span></p></td> |
| <td>String describing the type of element, as an unordered list |
| separated with slashes ('/'). See draft-klass.txt of the design docs |
| for more details and common types. E.g: "Sink/File"</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>description</code></em> :</span></p></td> |
| <td>Sentence describing the purpose of the element. |
| E.g: "Write stream to a file"</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>author</code></em> :</span></p></td> |
| <td>Name and contact details of the author(s). Use \n to separate |
| multiple author metadata. E.g: "Joe Bloggs <joe.blogs at foo.com>"</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-class-set-static-metadata"></a><h3>gst_element_class_set_static_metadata ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> gst_element_class_set_static_metadata |
| (<em class="parameter"><code><a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a> *klass</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *longname</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *classification</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *description</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *author</code></em>);</pre> |
| <p> |
| Sets the detailed information for a <a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a>. |
| </p> |
| <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"> |
| <h3 class="title">Note</h3>This function is for use in _class_init functions only.</div> |
| <p> |
| </p> |
| <p> |
| Same as <a class="link" href="GstElement.html#gst-element-class-set-metadata" title="gst_element_class_set_metadata ()"><code class="function">gst_element_class_set_metadata()</code></a>, but <em class="parameter"><code>longname</code></em>, <em class="parameter"><code>classification</code></em>, |
| <em class="parameter"><code>description</code></em>, and <em class="parameter"><code>author</code></em> must be static strings or inlined strings, as |
| they will not be copied. (GStreamer plugins will be made resident once |
| loaded, so this function can be used even from dynamically loaded plugins.) |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>klass</code></em> :</span></p></td> |
| <td>class to set metadata for</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>longname</code></em> :</span></p></td> |
| <td>The long English name of the element. E.g. "File Sink"</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>classification</code></em> :</span></p></td> |
| <td>String describing the type of element, as an unordered list |
| separated with slashes ('/'). See draft-klass.txt of the design docs |
| for more details and common types. E.g: "Sink/File"</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>description</code></em> :</span></p></td> |
| <td>Sentence describing the purpose of the element. |
| E.g: "Write stream to a file"</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>author</code></em> :</span></p></td> |
| <td>Name and contact details of the author(s). Use \n to separate |
| multiple author metadata. E.g: "Joe Bloggs <joe.blogs at foo.com>"</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-class-add-metadata"></a><h3>gst_element_class_add_metadata ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> gst_element_class_add_metadata (<em class="parameter"><code><a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a> *klass</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *value</code></em>);</pre> |
| <p> |
| Set <em class="parameter"><code>key</code></em> with <em class="parameter"><code>value</code></em> as metadata in <em class="parameter"><code>klass</code></em>. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>klass</code></em> :</span></p></td> |
| <td>class to set metadata for</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>key</code></em> :</span></p></td> |
| <td>the key to set</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td> |
| <td>the value to set</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-class-add-static-metadata"></a><h3>gst_element_class_add_static_metadata ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> gst_element_class_add_static_metadata |
| (<em class="parameter"><code><a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a> *klass</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *value</code></em>);</pre> |
| <p> |
| Set <em class="parameter"><code>key</code></em> with <em class="parameter"><code>value</code></em> as metadata in <em class="parameter"><code>klass</code></em>. |
| </p> |
| <p> |
| Same as <a class="link" href="GstElement.html#gst-element-class-add-metadata" title="gst_element_class_add_metadata ()"><code class="function">gst_element_class_add_metadata()</code></a>, but <em class="parameter"><code>value</code></em> must be a static string |
| or an inlined string, as it will not be copied. (GStreamer plugins will |
| be made resident once loaded, so this function can be used even from |
| dynamically loaded plugins.) |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>klass</code></em> :</span></p></td> |
| <td>class to set metadata for</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>key</code></em> :</span></p></td> |
| <td>the key to set</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td> |
| <td>the value to set</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-add-pad"></a><h3>gst_element_add_pad ()</h3> |
| <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_element_add_pad (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>);</pre> |
| <p> |
| Adds a pad (link point) to <em class="parameter"><code>element</code></em>. <em class="parameter"><code>pad</code></em>'s parent will be set to <em class="parameter"><code>element</code></em>; |
| see <a class="link" href="GstObject.html#gst-object-set-parent" title="gst_object_set_parent ()"><code class="function">gst_object_set_parent()</code></a> for refcounting information. |
| </p> |
| <p> |
| 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 <a class="link" href="GstPad.html#gst-pad-set-active" title="gst_pad_set_active ()"><code class="function">gst_pad_set_active()</code></a> for more information about activating pads. |
| </p> |
| <p> |
| The pad and the element should be unlocked when calling this function. |
| </p> |
| <p> |
| This function will emit the <a class="link" href="GstElement.html#GstElement-pad-added" title='The "pad-added" signal'><span class="type">"pad-added"</span></a> signal on the element. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to add the pad to.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>pad</code></em> :</span></p></td> |
| <td>the <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> to add to the element. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td> |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> 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.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-create-all-pads"></a><h3>gst_element_create_all_pads ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> gst_element_create_all_pads (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>);</pre> |
| <p> |
| Creates a pad for each pad template that is always available. |
| This function is only useful during object initialization of |
| subclasses of <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a>. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody><tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to create pads for. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> |
| </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-get-compatible-pad"></a><h3>gst_element_get_compatible_pad ()</h3> |
| <pre class="programlisting"><a class="link" href="GstPad.html" title="GstPad"><span class="returnvalue">GstPad</span></a> * gst_element_get_compatible_pad (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>);</pre> |
| <p> |
| 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. |
| </p> |
| <p> |
| This function will first attempt to find a compatible unlinked ALWAYS pad, |
| and if none can be found, it will request a compatible REQUEST pad by looking |
| at the templates of <em class="parameter"><code>element</code></em>. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> in which the pad should be found. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>pad</code></em> :</span></p></td> |
| <td>the <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> to find a compatible one for. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>caps</code></em> :</span></p></td> |
| <td>the <a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a> to use as a filter. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>the <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> to which a link can be made, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> |
| if one cannot be found. <a class="link" href="GstObject.html#gst-object-unref" title="gst_object_unref ()"><code class="function">gst_object_unref()</code></a> after usage. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-get-compatible-pad-template"></a><h3>gst_element_get_compatible_pad_template ()</h3> |
| <pre class="programlisting"><a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="returnvalue">GstPadTemplate</span></a> * gst_element_get_compatible_pad_template |
| (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a> *compattempl</code></em>);</pre> |
| <p> |
| Retrieves a pad template from <em class="parameter"><code>element</code></em> that is compatible with <em class="parameter"><code>compattempl</code></em>. |
| Pads from compatible templates can be linked together. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to get a compatible pad template for. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>compattempl</code></em> :</span></p></td> |
| <td>the <a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a> to find a compatible |
| template for. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>a compatible <a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a>, or NULL if none |
| was found. No unreferencing is necessary. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-get-request-pad"></a><h3>gst_element_get_request_pad ()</h3> |
| <pre class="programlisting"><a class="link" href="GstPad.html" title="GstPad"><span class="returnvalue">GstPad</span></a> * gst_element_get_request_pad (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre> |
| <p> |
| Retrieves a pad from the element by name (e.g. "src_%d"). This version only |
| retrieves request pads. The pad should be released with |
| <a class="link" href="GstElement.html#gst-element-release-request-pad" title="gst_element_release_request_pad ()"><code class="function">gst_element_release_request_pad()</code></a>. |
| </p> |
| <p> |
| This method is slow and will be deprecated in the future. New code should |
| use <a class="link" href="GstElement.html#gst-element-request-pad" title="gst_element_request_pad ()"><code class="function">gst_element_request_pad()</code></a> with the requested template. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to find a request pad of.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td> |
| <td>the name of the request <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> to retrieve.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>requested <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> if found, otherwise <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. |
| Release after usage. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-get-static-pad"></a><h3>gst_element_get_static_pad ()</h3> |
| <pre class="programlisting"><a class="link" href="GstPad.html" title="GstPad"><span class="returnvalue">GstPad</span></a> * gst_element_get_static_pad (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre> |
| <p> |
| Retrieves a pad from <em class="parameter"><code>element</code></em> by name. This version only retrieves |
| already-existing (i.e. 'static') pads. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to find a static pad of.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td> |
| <td>the name of the static <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> to retrieve.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>the requested <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> if found, otherwise <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. |
| unref after usage. |
| MT safe. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-request-pad"></a><h3>gst_element_request_pad ()</h3> |
| <pre class="programlisting"><a class="link" href="GstPad.html" title="GstPad"><span class="returnvalue">GstPad</span></a> * gst_element_request_pad (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a> *templ</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>, |
| <em class="parameter"><code>const <a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a> *caps</code></em>);</pre> |
| <p> |
| Retrieves a request pad from the element according to the provided template. |
| Pad templates can be looked up using |
| <a class="link" href="GstElementFactory.html#gst-element-factory-get-static-pad-templates" title="gst_element_factory_get_static_pad_templates ()"><code class="function">gst_element_factory_get_static_pad_templates()</code></a>. |
| </p> |
| <p> |
| The pad should be released with <a class="link" href="GstElement.html#gst-element-release-request-pad" title="gst_element_release_request_pad ()"><code class="function">gst_element_release_request_pad()</code></a>. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to find a request pad of.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>templ</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstPadTemplate.html" title="GstPadTemplate"><span class="type">GstPadTemplate</span></a> of which we want a pad of.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td> |
| <td>the name of the request <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> |
| to retrieve. Can be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>caps</code></em> :</span></p></td> |
| <td>the caps of the pad we want to |
| request. Can be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>requested <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> if found, otherwise <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. |
| Release after usage. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-no-more-pads"></a><h3>gst_element_no_more_pads ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> gst_element_no_more_pads (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>);</pre> |
| <p> |
| 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 <a class="link" href="GstPadTemplate.html#GST-PAD-SOMETIMES:CAPS"><span class="type">GST_PAD_SOMETIMES</span></a> |
| pad templates use this in combination with autopluggers to figure out that |
| the element is done initializing its pads. |
| </p> |
| <p> |
| This function emits the <a class="link" href="GstElement.html#GstElement-no-more-pads" title='The "no-more-pads" signal'><span class="type">"no-more-pads"</span></a> signal. |
| </p> |
| <p> |
| MT safe. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody><tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> |
| </td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-release-request-pad"></a><h3>gst_element_release_request_pad ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> gst_element_release_request_pad (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>);</pre> |
| <p> |
| Makes the element free the previously requested pad as obtained |
| with <a class="link" href="GstElement.html#gst-element-get-request-pad" title="gst_element_get_request_pad ()"><code class="function">gst_element_get_request_pad()</code></a>. |
| </p> |
| <p> |
| This does not unref the pad. If the pad was created by using |
| <a class="link" href="GstElement.html#gst-element-get-request-pad" title="gst_element_get_request_pad ()"><code class="function">gst_element_get_request_pad()</code></a>, <a class="link" href="GstElement.html#gst-element-release-request-pad" title="gst_element_release_request_pad ()"><code class="function">gst_element_release_request_pad()</code></a> needs to be |
| followed by <a class="link" href="GstObject.html#gst-object-unref" title="gst_object_unref ()"><code class="function">gst_object_unref()</code></a> to free the <em class="parameter"><code>pad</code></em>. |
| </p> |
| <p> |
| MT safe. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to release the request pad of.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>pad</code></em> :</span></p></td> |
| <td>the <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> to release.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-remove-pad"></a><h3>gst_element_remove_pad ()</h3> |
| <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_element_remove_pad (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *pad</code></em>);</pre> |
| <p> |
| Removes <em class="parameter"><code>pad</code></em> from <em class="parameter"><code>element</code></em>. <em class="parameter"><code>pad</code></em> will be destroyed if it has not been |
| referenced elsewhere using <a class="link" href="GstObject.html#gst-object-unparent" title="gst_object_unparent ()"><code class="function">gst_object_unparent()</code></a>. |
| </p> |
| <p> |
| This function is used by plugin developers and should not be used |
| by applications. Pads that were dynamically requested from elements |
| with <a class="link" href="GstElement.html#gst-element-get-request-pad" title="gst_element_get_request_pad ()"><code class="function">gst_element_get_request_pad()</code></a> should be released with the |
| <a class="link" href="GstElement.html#gst-element-release-request-pad" title="gst_element_release_request_pad ()"><code class="function">gst_element_release_request_pad()</code></a> function instead. |
| </p> |
| <p> |
| 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 <a class="link" href="GstPad.html#gst-pad-set-active" title="gst_pad_set_active ()"><code class="function">gst_pad_set_active()</code></a> for more information about |
| deactivating pads. |
| </p> |
| <p> |
| The pad and the element should be unlocked when calling this function. |
| </p> |
| <p> |
| This function will emit the <a class="link" href="GstElement.html#GstElement-pad-removed" title='The "pad-removed" signal'><span class="type">"pad-removed"</span></a> signal on the element. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to remove pad from.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>pad</code></em> :</span></p></td> |
| <td>the <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> to remove from the element. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td> |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the pad could be removed. Can return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the |
| pad does not belong to the provided element. |
| MT safe.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-iterate-pads"></a><h3>gst_element_iterate_pads ()</h3> |
| <pre class="programlisting"><a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="returnvalue">GstIterator</span></a> * gst_element_iterate_pads (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>);</pre> |
| <p> |
| Retrieves an iterator of <em class="parameter"><code>element</code></em>'s pads. The iterator should |
| be freed after usage. Also more specialized iterators exists such as |
| <a class="link" href="GstElement.html#gst-element-iterate-src-pads" title="gst_element_iterate_src_pads ()"><code class="function">gst_element_iterate_src_pads()</code></a> or <a class="link" href="GstElement.html#gst-element-iterate-sink-pads" title="gst_element_iterate_sink_pads ()"><code class="function">gst_element_iterate_sink_pads()</code></a>. |
| </p> |
| <p> |
| The order of pads returned by the iterator will be the order in which |
| the pads were added to the element. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to iterate pads of.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>the <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> of <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>. |
| MT safe. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-iterate-sink-pads"></a><h3>gst_element_iterate_sink_pads ()</h3> |
| <pre class="programlisting"><a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="returnvalue">GstIterator</span></a> * gst_element_iterate_sink_pads (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>);</pre> |
| <p> |
| Retrieves an iterator of <em class="parameter"><code>element</code></em>'s sink pads. |
| </p> |
| <p> |
| The order of pads returned by the iterator will be the order in which |
| the pads were added to the element. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a>.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>the <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> of <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>. |
| MT safe. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-iterate-src-pads"></a><h3>gst_element_iterate_src_pads ()</h3> |
| <pre class="programlisting"><a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="returnvalue">GstIterator</span></a> * gst_element_iterate_src_pads (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>);</pre> |
| <p> |
| Retrieves an iterator of <em class="parameter"><code>element</code></em>'s source pads. |
| </p> |
| <p> |
| The order of pads returned by the iterator will be the order in which |
| the pads were added to the element. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a>.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>the <a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator"><span class="type">GstIterator</span></a> of <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a>. |
| MT safe. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-link"></a><h3>gst_element_link ()</h3> |
| <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_element_link (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *src</code></em>, |
| <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *dest</code></em>);</pre> |
| <p> |
| Links <em class="parameter"><code>src</code></em> to <em class="parameter"><code>dest</code></em>. The link must be from source to |
| destination; the other direction will not be tried. The function looks for |
| existing pads that aren't linked yet. It will request new pads if necessary. |
| Such pads need to be released manually when unlinking. |
| If multiple links are possible, only one is established. |
| </p> |
| <p> |
| Make sure you have added your elements to a bin or pipeline with |
| <a class="link" href="GstBin.html#gst-bin-add" title="gst_bin_add ()"><code class="function">gst_bin_add()</code></a> before trying to link them. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>src</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> containing the source pad. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>dest</code></em> :</span></p></td> |
| <td>the <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> containing the destination pad. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>TRUE if the elements could be linked, FALSE otherwise.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-unlink"></a><h3>gst_element_unlink ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> gst_element_unlink (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *src</code></em>, |
| <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *dest</code></em>);</pre> |
| <p> |
| Unlinks all source pads of the source element with all sink pads |
| of the sink element to which they are linked. |
| </p> |
| <p> |
| If the link has been made using <a class="link" href="GstElement.html#gst-element-link" title="gst_element_link ()"><code class="function">gst_element_link()</code></a>, it could have created an |
| requestpad, which has to be released using <a class="link" href="GstElement.html#gst-element-release-request-pad" title="gst_element_release_request_pad ()"><code class="function">gst_element_release_request_pad()</code></a>. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>src</code></em> :</span></p></td> |
| <td>the source <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to unlink. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>dest</code></em> :</span></p></td> |
| <td>the sink <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to unlink. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-link-many"></a><h3>gst_element_link_many ()</h3> |
| <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_element_link_many (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element_1</code></em>, |
| <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element_2</code></em>, |
| <em class="parameter"><code>...</code></em>);</pre> |
| <p> |
| Chain together a series of elements. Uses <a class="link" href="GstElement.html#gst-element-link" title="gst_element_link ()"><code class="function">gst_element_link()</code></a>. |
| Make sure you have added your elements to a bin or pipeline with |
| <a class="link" href="GstBin.html#gst-bin-add" title="gst_bin_add ()"><code class="function">gst_bin_add()</code></a> before trying to link them. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element_1</code></em> :</span></p></td> |
| <td>the first <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> in the link chain. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element_2</code></em> :</span></p></td> |
| <td>the second <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> in the link chain. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td> |
| <td>the NULL-terminated list of elements to link in order.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>TRUE on success, FALSE otherwise.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-unlink-many"></a><h3>gst_element_unlink_many ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> gst_element_unlink_many (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element_1</code></em>, |
| <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element_2</code></em>, |
| <em class="parameter"><code>...</code></em>);</pre> |
| <p> |
| Unlinks a series of elements. Uses <a class="link" href="GstElement.html#gst-element-unlink" title="gst_element_unlink ()"><code class="function">gst_element_unlink()</code></a>. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element_1</code></em> :</span></p></td> |
| <td>the first <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> in the link chain. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element_2</code></em> :</span></p></td> |
| <td>the second <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> in the link chain. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td> |
| <td>the NULL-terminated list of elements to unlink in order.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-link-pads"></a><h3>gst_element_link_pads ()</h3> |
| <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_element_link_pads (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *src</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *srcpadname</code></em>, |
| <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *dest</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *destpadname</code></em>);</pre> |
| <p> |
| 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. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>src</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> containing the source pad.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>srcpadname</code></em> :</span></p></td> |
| <td>the name of the <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> in source element |
| or NULL for any pad. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>dest</code></em> :</span></p></td> |
| <td>the <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> containing the destination pad. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>destpadname</code></em> :</span></p></td> |
| <td>the name of the <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> in destination element, |
| or NULL for any pad. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>TRUE if the pads could be linked, FALSE otherwise.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-link-pads-full"></a><h3>gst_element_link_pads_full ()</h3> |
| <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_element_link_pads_full (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *src</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *srcpadname</code></em>, |
| <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *dest</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *destpadname</code></em>, |
| <em class="parameter"><code><a class="link" href="GstPad.html#GstPadLinkCheck" title="enum GstPadLinkCheck"><span class="type">GstPadLinkCheck</span></a> flags</code></em>);</pre> |
| <p> |
| 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. |
| </p> |
| <p> |
| Calling <a class="link" href="GstElement.html#gst-element-link-pads-full" title="gst_element_link_pads_full ()"><code class="function">gst_element_link_pads_full()</code></a> with <em class="parameter"><code>flags</code></em> == <a class="link" href="GstPad.html#GST-PAD-LINK-CHECK-DEFAULT:CAPS"><code class="literal">GST_PAD_LINK_CHECK_DEFAULT</code></a> |
| is the same as calling <a class="link" href="GstElement.html#gst-element-link-pads" title="gst_element_link_pads ()"><code class="function">gst_element_link_pads()</code></a> and the recommended way of |
| linking pads with safety checks applied. |
| </p> |
| <p> |
| This is a convenience function for <a class="link" href="GstPad.html#gst-pad-link-full" title="gst_pad_link_full ()"><code class="function">gst_pad_link_full()</code></a>. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>src</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> containing the source pad.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>srcpadname</code></em> :</span></p></td> |
| <td>the name of the <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> in source element |
| or NULL for any pad. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>dest</code></em> :</span></p></td> |
| <td>the <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> containing the destination pad. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>destpadname</code></em> :</span></p></td> |
| <td>the name of the <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> in destination element, |
| or NULL for any pad. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td> |
| <td>the <a class="link" href="GstPad.html#GstPadLinkCheck" title="enum GstPadLinkCheck"><span class="type">GstPadLinkCheck</span></a> to be performed when linking pads.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>TRUE if the pads could be linked, FALSE otherwise.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-unlink-pads"></a><h3>gst_element_unlink_pads ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> gst_element_unlink_pads (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *src</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *srcpadname</code></em>, |
| <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *dest</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *destpadname</code></em>);</pre> |
| <p> |
| Unlinks the two named pads of the source and destination elements. |
| </p> |
| <p> |
| This is a convenience function for <a class="link" href="GstPad.html#gst-pad-unlink" title="gst_pad_unlink ()"><code class="function">gst_pad_unlink()</code></a>. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>src</code></em> :</span></p></td> |
| <td>a (transfer none): <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> containing the source pad.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>srcpadname</code></em> :</span></p></td> |
| <td>the name of the <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> in source element.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>dest</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> containing the destination pad. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>destpadname</code></em> :</span></p></td> |
| <td>the name of the <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> in destination element.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-link-pads-filtered"></a><h3>gst_element_link_pads_filtered ()</h3> |
| <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_element_link_pads_filtered (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *src</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *srcpadname</code></em>, |
| <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *dest</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *destpadname</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a> *filter</code></em>);</pre> |
| <p> |
| 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 <em class="parameter"><code>caps</code></em> |
| is not <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a>, makes sure that the caps of the link is a subset of <em class="parameter"><code>caps</code></em>. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>src</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> containing the source pad.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>srcpadname</code></em> :</span></p></td> |
| <td>the name of the <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> in source element |
| or NULL for any pad. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>dest</code></em> :</span></p></td> |
| <td>the <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> containing the destination pad. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>destpadname</code></em> :</span></p></td> |
| <td>the name of the <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> in destination element |
| or NULL for any pad. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>filter</code></em> :</span></p></td> |
| <td>the <a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a> to filter the link, |
| or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a> for no filter. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>TRUE if the pads could be linked, FALSE otherwise.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-link-filtered"></a><h3>gst_element_link_filtered ()</h3> |
| <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_element_link_filtered (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *src</code></em>, |
| <em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *dest</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a> *filter</code></em>);</pre> |
| <p> |
| Links <em class="parameter"><code>src</code></em> to <em class="parameter"><code>dest</code></em> 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't linked yet. It will request new pads if necessary. |
| If multiple links are possible, only one is established. |
| </p> |
| <p> |
| Make sure you have added your elements to a bin or pipeline with |
| <a class="link" href="GstBin.html#gst-bin-add" title="gst_bin_add ()"><code class="function">gst_bin_add()</code></a> before trying to link them. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>src</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> containing the source pad.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>dest</code></em> :</span></p></td> |
| <td>the <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> containing the destination pad. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>filter</code></em> :</span></p></td> |
| <td>the <a class="link" href="gstreamer-GstCaps.html#GstCaps" title="struct GstCaps"><span class="type">GstCaps</span></a> to filter the link, |
| or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a> for no filter. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>TRUE if the pads could be linked, FALSE otherwise.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-class-get-metadata"></a><h3>gst_element_class_get_metadata ()</h3> |
| <pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * gst_element_class_get_metadata (<em class="parameter"><code><a class="link" href="GstElement.html#GstElementClass" title="struct GstElementClass"><span class="type">GstElementClass</span></a> *klass</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>);</pre> |
| <p> |
| Get metadata with <em class="parameter"><code>key</code></em> in <em class="parameter"><code>klass</code></em>. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>klass</code></em> :</span></p></td> |
| <td>class to get metadata for</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>key</code></em> :</span></p></td> |
| <td>the key to get</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>the metadata for <em class="parameter"><code>key</code></em>.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-set-base-time"></a><h3>gst_element_set_base_time ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> gst_element_set_base_time (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> time</code></em>);</pre> |
| <p> |
| Set the base time of an element. See <a class="link" href="GstElement.html#gst-element-get-base-time" title="gst_element_get_base_time ()"><code class="function">gst_element_get_base_time()</code></a>. |
| </p> |
| <p> |
| MT safe. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a>.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>time</code></em> :</span></p></td> |
| <td>the base time to set.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-get-base-time"></a><h3>gst_element_get_base_time ()</h3> |
| <pre class="programlisting"><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="returnvalue">GstClockTime</span></a> gst_element_get_base_time (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>);</pre> |
| <p> |
| Returns the base time of the element. The base time is the |
| absolute time of the clock when this element was last put to |
| PLAYING. Subtracting the base time from the clock time gives |
| the running time of the element. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a>.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>the base time of the element. |
| MT safe.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-set-start-time"></a><h3>gst_element_set_start_time ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> gst_element_set_start_time (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> time</code></em>);</pre> |
| <p> |
| Set the start time of an element. The start time of the element is the |
| running time of the element when it last went to the PAUSED state. In READY |
| or after a flushing seek, it is set to 0. |
| </p> |
| <p> |
| Toplevel elements like <a class="link" href="GstPipeline.html" title="GstPipeline"><span class="type">GstPipeline</span></a> will manage the start_time and |
| base_time on its children. Setting the start_time to <a class="link" href="GstClock.html#GST-CLOCK-TIME-NONE:CAPS" title="GST_CLOCK_TIME_NONE"><span class="type">GST_CLOCK_TIME_NONE</span></a> |
| on such a toplevel element will disable the distribution of the base_time to |
| the children and can be useful if the application manages the base_time |
| itself, for example if you want to synchronize capture from multiple |
| pipelines, and you can also ensure that the pipelines have the same clock. |
| </p> |
| <p> |
| MT safe. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a>.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>time</code></em> :</span></p></td> |
| <td>the base time to set.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-get-start-time"></a><h3>gst_element_get_start_time ()</h3> |
| <pre class="programlisting"><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="returnvalue">GstClockTime</span></a> gst_element_get_start_time (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>);</pre> |
| <p> |
| Returns the start time of the element. The start time is the |
| running time of the clock when this element was last put to PAUSED. |
| </p> |
| <p> |
| Usually the start_time is managed by a toplevel element such as |
| <a class="link" href="GstPipeline.html" title="GstPipeline"><span class="type">GstPipeline</span></a>. |
| </p> |
| <p> |
| MT safe. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a>.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>the start time of the element.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-set-bus"></a><h3>gst_element_set_bus ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> gst_element_set_bus (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> *bus</code></em>);</pre> |
| <p> |
| Sets the bus of the element. Increases the refcount on the bus. |
| For internal use only, unless you're testing elements. |
| </p> |
| <p> |
| MT safe. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to set the bus of.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>bus</code></em> :</span></p></td> |
| <td>the <a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a> to set. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-get-bus"></a><h3>gst_element_get_bus ()</h3> |
| <pre class="programlisting"><a class="link" href="GstBus.html" title="GstBus"><span class="returnvalue">GstBus</span></a> * gst_element_get_bus (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>);</pre> |
| <p> |
| Returns the bus of the element. Note that only a <a class="link" href="GstPipeline.html" title="GstPipeline"><span class="type">GstPipeline</span></a> will provide a |
| bus for the application. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to get the bus of.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>the element's <a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a>. unref after usage. |
| MT safe. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-set-context"></a><h3>gst_element_set_context ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> gst_element_set_context (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstContext.html#GstContext" title="GstContext"><span class="type">GstContext</span></a> *context</code></em>);</pre> |
| <p> |
| Sets the context of the element. Increases the refcount of the context. |
| </p> |
| <p> |
| MT safe. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to set the context of.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>context</code></em> :</span></p></td> |
| <td>the <a class="link" href="gstreamer-GstContext.html#GstContext" title="GstContext"><span class="type">GstContext</span></a> to set. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-get-context"></a><h3>gst_element_get_context ()</h3> |
| <pre class="programlisting"><a class="link" href="gstreamer-GstContext.html#GstContext" title="GstContext"><span class="returnvalue">GstContext</span></a> * gst_element_get_context (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>);</pre> |
| <p> |
| Gets the current context of the element. |
| </p> |
| <p> |
| MT safe. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to get the context from.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>The current context of the element. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-get-factory"></a><h3>gst_element_get_factory ()</h3> |
| <pre class="programlisting"><a class="link" href="GstElementFactory.html" title="GstElementFactory"><span class="returnvalue">GstElementFactory</span></a> * gst_element_get_factory (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>);</pre> |
| <p> |
| Retrieves the factory that was used to create this element. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to request the element factory of.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>the <a class="link" href="GstElementFactory.html" title="GstElementFactory"><span class="type">GstElementFactory</span></a> used for creating this |
| element. no refcounting is needed. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-set-name"></a><h3>gst_element_set_name()</h3> |
| <pre class="programlisting">#define gst_element_set_name(elem,name) gst_object_set_name(GST_OBJECT_CAST(elem),name) |
| </pre> |
| <p> |
| Sets the name of the element, getting rid of the old name if there was one. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>elem</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to set the name of.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td> |
| <td>the new name</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-get-name"></a><h3>gst_element_get_name()</h3> |
| <pre class="programlisting">#define gst_element_get_name(elem) gst_object_get_name(GST_OBJECT_CAST(elem)) |
| </pre> |
| <p> |
| Returns a copy of the name of <em class="parameter"><code>elem</code></em>. |
| Caller should <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> the return value after usage. |
| For a nameless element, this returns NULL, which you can safely <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> |
| as well. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>elem</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to get the name of <em class="parameter"><code>elem</code></em>.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>the name of <em class="parameter"><code>elem</code></em>. <a href="http://library.gnome.org/devel/glib/unstable/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> after usage. MT safe. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-set-parent"></a><h3>gst_element_set_parent()</h3> |
| <pre class="programlisting">#define gst_element_set_parent(elem,parent) gst_object_set_parent(GST_OBJECT_CAST(elem),parent) |
| </pre> |
| <p> |
| Sets the parent of an element. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>elem</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to set the parent of.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>parent</code></em> :</span></p></td> |
| <td>the new parent <a class="link" href="GstObject.html" title="GstObject"><span class="type">GstObject</span></a> of the element.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-get-parent"></a><h3>gst_element_get_parent()</h3> |
| <pre class="programlisting">#define gst_element_get_parent(elem) gst_object_get_parent(GST_OBJECT_CAST(elem)) |
| </pre> |
| <p> |
| Get the parent of an element. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>elem</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to get the parent of.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>the parent of an element. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-set-clock"></a><h3>gst_element_set_clock ()</h3> |
| <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_element_set_clock (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="GstClock.html" title="GstClock"><span class="type">GstClock</span></a> *clock</code></em>);</pre> |
| <p> |
| Sets the clock for the element. This function increases the |
| refcount on the clock. Any previously set clock on the object |
| is unreffed. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to set the clock for.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>clock</code></em> :</span></p></td> |
| <td>the <a class="link" href="GstClock.html" title="GstClock"><span class="type">GstClock</span></a> to set for the element.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td> |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> 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 |
| <em class="parameter"><code>clock</code></em> or when it requires a specific clock to operate. |
| MT safe.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-get-clock"></a><h3>gst_element_get_clock ()</h3> |
| <pre class="programlisting"><a class="link" href="GstClock.html" title="GstClock"><span class="returnvalue">GstClock</span></a> * gst_element_get_clock (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>);</pre> |
| <p> |
| Gets the currently configured clock of the element. This is the clock as was |
| last set with <a class="link" href="GstElement.html#gst-element-set-clock" title="gst_element_set_clock ()"><code class="function">gst_element_set_clock()</code></a>. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to get the clock of.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>the <a class="link" href="GstClock.html" title="GstClock"><span class="type">GstClock</span></a> of the element. unref after usage. |
| MT safe. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-provide-clock"></a><h3>gst_element_provide_clock ()</h3> |
| <pre class="programlisting"><a class="link" href="GstClock.html" title="GstClock"><span class="returnvalue">GstClock</span></a> * gst_element_provide_clock (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>);</pre> |
| <p> |
| Get the clock provided by the given element. |
| </p> |
| <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"> |
| <h3 class="title">Note</h3>An element is only required to provide a clock in the PAUSED |
| state. Some elements can provide a clock in other states.</div> |
| <p> |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to query</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>the GstClock provided by the element or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> |
| if no clock could be provided. Unref after usage. |
| MT safe. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-set-state"></a><h3>gst_element_set_state ()</h3> |
| <pre class="programlisting"><a class="link" href="GstElement.html#GstStateChangeReturn" title="enum GstStateChangeReturn"><span class="returnvalue">GstStateChangeReturn</span></a> gst_element_set_state (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a> state</code></em>);</pre> |
| <p> |
| 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's state change function for each. |
| </p> |
| <p> |
| This function can return <a class="link" href="GstElement.html#GST-STATE-CHANGE-ASYNC:CAPS"><span class="type">GST_STATE_CHANGE_ASYNC</span></a>, in which case the |
| element will perform the remainder of the state change asynchronously in |
| another thread. |
| An application can use <a class="link" href="GstElement.html#gst-element-get-state" title="gst_element_get_state ()"><code class="function">gst_element_get_state()</code></a> to wait for the completion |
| of the state change or it can wait for a <a class="link" href="gstreamer-GstMessage.html#GST-MESSAGE-ASYNC-DONE:CAPS"><code class="literal">GST_MESSAGE_ASYNC_DONE</code></a> or |
| <a class="link" href="gstreamer-GstMessage.html#GST-MESSAGE-STATE-CHANGED:CAPS"><code class="literal">GST_MESSAGE_STATE_CHANGED</code></a> on the bus. |
| </p> |
| <p> |
| State changes to <a class="link" href="GstElement.html#GST-STATE-READY:CAPS"><code class="literal">GST_STATE_READY</code></a> or <a class="link" href="GstElement.html#GST-STATE-NULL:CAPS"><code class="literal">GST_STATE_NULL</code></a> never return |
| <a class="link" href="GstElement.html#GST-STATE-CHANGE-ASYNC:CAPS"><span class="type">GST_STATE_CHANGE_ASYNC</span></a>. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to change state of.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>state</code></em> :</span></p></td> |
| <td>the element's new <a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a>.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>Result of the state change using <a class="link" href="GstElement.html#GstStateChangeReturn" title="enum GstStateChangeReturn"><span class="type">GstStateChangeReturn</span></a>. |
| MT safe.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-get-state"></a><h3>gst_element_get_state ()</h3> |
| <pre class="programlisting"><a class="link" href="GstElement.html#GstStateChangeReturn" title="enum GstStateChangeReturn"><span class="returnvalue">GstStateChangeReturn</span></a> gst_element_get_state (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a> *state</code></em>, |
| <em class="parameter"><code><a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a> *pending</code></em>, |
| <em class="parameter"><code><a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> timeout</code></em>);</pre> |
| <p> |
| Gets the state of the element. |
| </p> |
| <p> |
| For elements that performed an ASYNC state change, as reported by |
| <a class="link" href="GstElement.html#gst-element-set-state" title="gst_element_set_state ()"><code class="function">gst_element_set_state()</code></a>, 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 |
| <a class="link" href="GstElement.html#GST-STATE-CHANGE-SUCCESS:CAPS"><code class="literal">GST_STATE_CHANGE_SUCCESS</code></a> or <a class="link" href="GstElement.html#GST-STATE-CHANGE-FAILURE:CAPS"><code class="literal">GST_STATE_CHANGE_FAILURE</code></a> respectively. |
| </p> |
| <p> |
| For elements that did not return <a class="link" href="GstElement.html#GST-STATE-CHANGE-ASYNC:CAPS"><code class="literal">GST_STATE_CHANGE_ASYNC</code></a>, this function |
| returns the current and pending state immediately. |
| </p> |
| <p> |
| This function returns <a class="link" href="GstElement.html#GST-STATE-CHANGE-NO-PREROLL:CAPS"><code class="literal">GST_STATE_CHANGE_NO_PREROLL</code></a> if the element |
| successfully changed its state but is not able to provide data yet. |
| This mostly happens for live sources that only produce data in |
| <a class="link" href="GstElement.html#GST-STATE-PLAYING:CAPS"><code class="literal">GST_STATE_PLAYING</code></a>. While the state change return is equivalent to |
| <a class="link" href="GstElement.html#GST-STATE-CHANGE-SUCCESS:CAPS"><code class="literal">GST_STATE_CHANGE_SUCCESS</code></a>, it is returned to the application to signal that |
| some sink elements might not be able to complete their state change because |
| an element is not producing data to complete the preroll. When setting the |
| element to playing, the preroll will complete and playback will start. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to get the state of.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>state</code></em> :</span></p></td> |
| <td>a pointer to <a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a> to hold the state. |
| Can be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>pending</code></em> :</span></p></td> |
| <td>a pointer to <a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a> to hold the pending |
| state. Can be <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>timeout</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstClock.html#GstClockTime" title="GstClockTime"><span class="type">GstClockTime</span></a> to specify the timeout for an async |
| state change or <a class="link" href="GstClock.html#GST-CLOCK-TIME-NONE:CAPS" title="GST_CLOCK_TIME_NONE"><code class="literal">GST_CLOCK_TIME_NONE</code></a> for infinite timeout.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td> |
| <a class="link" href="GstElement.html#GST-STATE-CHANGE-SUCCESS:CAPS"><code class="literal">GST_STATE_CHANGE_SUCCESS</code></a> if the element has no more pending state |
| and the last state change succeeded, <a class="link" href="GstElement.html#GST-STATE-CHANGE-ASYNC:CAPS"><code class="literal">GST_STATE_CHANGE_ASYNC</code></a> if the |
| element is still performing a state change or |
| <a class="link" href="GstElement.html#GST-STATE-CHANGE-FAILURE:CAPS"><code class="literal">GST_STATE_CHANGE_FAILURE</code></a> if the last state change failed. |
| MT safe.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-set-locked-state"></a><h3>gst_element_set_locked_state ()</h3> |
| <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_element_set_locked_state (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> locked_state</code></em>);</pre> |
| <p> |
| Locks the state of an element, so state changes of the parent don't affect |
| this element anymore. |
| </p> |
| <p> |
| MT safe. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>locked_state</code></em> :</span></p></td> |
| <td>TRUE to lock the element's state</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>TRUE if the state was changed, FALSE if bad parameters were given |
| or the elements state-locking needed no change.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-is-locked-state"></a><h3>gst_element_is_locked_state ()</h3> |
| <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_element_is_locked_state (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>);</pre> |
| <p> |
| Checks if the state of an element is locked. |
| If the state of an element is locked, state changes of the parent don't |
| affect the element. |
| This way you can leave currently unused elements inside bins. Just lock their |
| state before changing the state from <a class="link" href="GstElement.html#GST-STATE-NULL:CAPS"><span class="type">GST_STATE_NULL</span></a>. |
| </p> |
| <p> |
| MT safe. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a>.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>TRUE, if the element's state is locked.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-abort-state"></a><h3>gst_element_abort_state ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> gst_element_abort_state (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>);</pre> |
| <p> |
| Abort the state change of the element. This function is used |
| by elements that do asynchronous state changes and find out |
| something is wrong. |
| </p> |
| <p> |
| This function should be called with the STATE_LOCK held. |
| </p> |
| <p> |
| MT safe. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody><tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to abort the state of.</td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-continue-state"></a><h3>gst_element_continue_state ()</h3> |
| <pre class="programlisting"><a class="link" href="GstElement.html#GstStateChangeReturn" title="enum GstStateChangeReturn"><span class="returnvalue">GstStateChangeReturn</span></a> gst_element_continue_state (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="GstElement.html#GstStateChangeReturn" title="enum GstStateChangeReturn"><span class="type">GstStateChangeReturn</span></a> ret</code></em>);</pre> |
| <p> |
| 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 <a class="link" href="GstElement.html#GST-STATE-CHANGE-SUCCESS:CAPS"><code class="literal">GST_STATE_CHANGE_SUCCESS</code></a> from the state change function. |
| </p> |
| <p> |
| If after calling this method the element still has not reached |
| the pending state, the next state change is performed. |
| </p> |
| <p> |
| This method is used internally and should normally not be called by plugins |
| or applications. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to continue the state change of.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>ret</code></em> :</span></p></td> |
| <td>The previous state return value</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>The result of the commit state change. |
| MT safe.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-lost-state"></a><h3>gst_element_lost_state ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> gst_element_lost_state (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>);</pre> |
| <p> |
| Brings the element to the lost state. The current state of the |
| element is copied to the pending state so that any call to |
| <a class="link" href="GstElement.html#gst-element-get-state" title="gst_element_get_state ()"><code class="function">gst_element_get_state()</code></a> will return <a class="link" href="GstElement.html#GST-STATE-CHANGE-ASYNC:CAPS"><code class="literal">GST_STATE_CHANGE_ASYNC</code></a>. |
| </p> |
| <p> |
| An ASYNC_START message is posted. 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. |
| </p> |
| <p> |
| This is mostly used for elements that lost their preroll buffer |
| in the <a class="link" href="GstElement.html#GST-STATE-PAUSED:CAPS"><code class="literal">GST_STATE_PAUSED</code></a> or <a class="link" href="GstElement.html#GST-STATE-PLAYING:CAPS"><code class="literal">GST_STATE_PLAYING</code></a> 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. |
| </p> |
| <p> |
| This function is used internally and should normally not be called from |
| plugins or applications. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody><tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> the state is lost of</td> |
| </tr></tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-state-get-name"></a><h3>gst_element_state_get_name ()</h3> |
| <pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * gst_element_state_get_name (<em class="parameter"><code><a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a> state</code></em>);</pre> |
| <p> |
| Gets a string representing the given state. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>state</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html#GstState" title="enum GstState"><span class="type">GstState</span></a> to get the name of.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>a string with the name of the state. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-state-change-return-get-name"></a><h3>gst_element_state_change_return_get_name ()</h3> |
| <pre class="programlisting">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * gst_element_state_change_return_get_name |
| (<em class="parameter"><code><a class="link" href="GstElement.html#GstStateChangeReturn" title="enum GstStateChangeReturn"><span class="type">GstStateChangeReturn</span></a> state_ret</code></em>);</pre> |
| <p> |
| Gets a string representing the given state change result. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>state_ret</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html#GstStateChangeReturn" title="enum GstStateChangeReturn"><span class="type">GstStateChangeReturn</span></a> to get the name of.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>a string with the name of the state |
| result. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> |
| </td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-sync-state-with-parent"></a><h3>gst_element_sync_state_with_parent ()</h3> |
| <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_element_sync_state_with_parent (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>);</pre> |
| <p> |
| 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. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a>.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>TRUE, if the element's state could be synced to the parent's state. |
| MT safe.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-change-state"></a><h3>gst_element_change_state ()</h3> |
| <pre class="programlisting"><a class="link" href="GstElement.html#GstStateChangeReturn" title="enum GstStateChangeReturn"><span class="returnvalue">GstStateChangeReturn</span></a> gst_element_change_state (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="GstElement.html#GstStateChange" title="enum GstStateChange"><span class="type">GstStateChange</span></a> transition</code></em>);</pre> |
| <p> |
| Perform <em class="parameter"><code>transition</code></em> on <em class="parameter"><code>element</code></em>. |
| </p> |
| <p> |
| This function must be called with STATE_LOCK held and is mainly used |
| internally. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>transition</code></em> :</span></p></td> |
| <td>the requested transition</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>the <a class="link" href="GstElement.html#GstStateChangeReturn" title="enum GstStateChangeReturn"><span class="type">GstStateChangeReturn</span></a> of the state transition.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-message-full"></a><h3>gst_element_message_full ()</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> gst_element_message_full (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstMessage.html#GstMessageType" title="enum GstMessageType"><span class="type">GstMessageType</span></a> type</code></em>, |
| <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> domain</code></em>, |
| <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> code</code></em>, |
| <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *text</code></em>, |
| <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *debug</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *file</code></em>, |
| <em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *function</code></em>, |
| <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a> line</code></em>);</pre> |
| <p> |
| Post an error, warning or info message on the bus from inside an element. |
| </p> |
| <p> |
| <em class="parameter"><code>type</code></em> must be of <a class="link" href="gstreamer-GstMessage.html#GST-MESSAGE-ERROR:CAPS"><span class="type">GST_MESSAGE_ERROR</span></a>, <a class="link" href="gstreamer-GstMessage.html#GST-MESSAGE-WARNING:CAPS"><span class="type">GST_MESSAGE_WARNING</span></a> or |
| <a class="link" href="gstreamer-GstMessage.html#GST-MESSAGE-INFO:CAPS"><span class="type">GST_MESSAGE_INFO</span></a>. |
| </p> |
| <p> |
| MT safe. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to send message from</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>type</code></em> :</span></p></td> |
| <td>the <a class="link" href="gstreamer-GstMessage.html#GstMessageType" title="enum GstMessageType"><span class="type">GstMessageType</span></a> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>domain</code></em> :</span></p></td> |
| <td>the GStreamer GError domain this message belongs to</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>code</code></em> :</span></p></td> |
| <td>the GError code belonging to the domain</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>text</code></em> :</span></p></td> |
| <td>an allocated text string to be used |
| as a replacement for the default message connected to code, |
| or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>debug</code></em> :</span></p></td> |
| <td>an allocated debug message to be |
| used as a replacement for the default debugging information, |
| or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td> |
| <td>the source code file where the error was generated</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>function</code></em> :</span></p></td> |
| <td>the source code function where the error was generated</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>line</code></em> :</span></p></td> |
| <td>the source code line where the error was generated</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-post-message"></a><h3>gst_element_post_message ()</h3> |
| <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_element_post_message (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstMessage.html#GstMessage" title="struct GstMessage"><span class="type">GstMessage</span></a> *message</code></em>);</pre> |
| <p> |
| Post a message on the element's <a class="link" href="GstBus.html" title="GstBus"><span class="type">GstBus</span></a>. 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. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> posting the message</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>message</code></em> :</span></p></td> |
| <td>a <a class="link" href="gstreamer-GstMessage.html#GstMessage" title="struct GstMessage"><span class="type">GstMessage</span></a> to post. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td> |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the message was successfully posted. The function returns |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the element did not have a bus. |
| MT safe.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-query"></a><h3>gst_element_query ()</h3> |
| <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_element_query (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a> *query</code></em>);</pre> |
| <p> |
| Performs a query on the given element. |
| </p> |
| <p> |
| For elements that don'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. |
| </p> |
| <p> |
| Please note that some queries might need a running pipeline to work. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to perform the query on.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>query</code></em> :</span></p></td> |
| <td>the <a class="link" href="gstreamer-GstQuery.html#GstQuery" title="struct GstQuery"><span class="type">GstQuery</span></a>. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>TRUE if the query could be performed. |
| MT safe.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-query-convert"></a><h3>gst_element_query_convert ()</h3> |
| <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_element_query_convert (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> src_format</code></em>, |
| <em class="parameter"><code><span class="type">gint64</span> src_val</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> dest_format</code></em>, |
| <em class="parameter"><code><span class="type">gint64</span> *dest_val</code></em>);</pre> |
| <p> |
| Queries an element to convert <em class="parameter"><code>src_val</code></em> in <em class="parameter"><code>src_format</code></em> to <em class="parameter"><code>dest_format</code></em>. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to invoke the convert query on.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>src_format</code></em> :</span></p></td> |
| <td>a <a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> to convert from. <span class="annotation">[<acronym title="Parameter for input and for returning results. Default is transfer full."><span class="acronym">inout</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>src_val</code></em> :</span></p></td> |
| <td>a value to convert.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>dest_format</code></em> :</span></p></td> |
| <td>the <a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> to convert to.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>dest_val</code></em> :</span></p></td> |
| <td>a pointer to the result. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>TRUE if the query could be performed.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-query-position"></a><h3>gst_element_query_position ()</h3> |
| <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_element_query_position (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>, |
| <em class="parameter"><code><span class="type">gint64</span> *cur</code></em>);</pre> |
| <p> |
| Queries an element for the stream position. If one repeatedly calls this |
| function one can also create and reuse it in <a class="link" href="GstElement.html#gst-element-query" title="gst_element_query ()"><code class="function">gst_element_query()</code></a>. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to invoke the position query on.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td> |
| <td>the <a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> requested</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>cur</code></em> :</span></p></td> |
| <td>a location in which to store the current |
| position, or NULL. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>TRUE if the query could be performed.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-query-duration"></a><h3>gst_element_query_duration ()</h3> |
| <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_element_query_duration (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>, |
| <em class="parameter"><code><span class="type">gint64</span> *duration</code></em>);</pre> |
| <p> |
| Queries an element for the total stream duration. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to invoke the duration query on.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td> |
| <td>the <a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> requested</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>duration</code></em> :</span></p></td> |
| <td>A location in which to store the total duration, or NULL. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td>TRUE if the query could be performed.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-send-event"></a><h3>gst_element_send_event ()</h3> |
| <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_element_send_event (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstEvent.html#GstEvent" title="struct GstEvent"><span class="type">GstEvent</span></a> *event</code></em>);</pre> |
| <p> |
| Sends an event to an element. If the element doesn'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. |
| </p> |
| <p> |
| This function takes owership of the provided event so you should |
| <a class="link" href="gstreamer-GstEvent.html#gst-event-ref" title="gst_event_ref ()"><code class="function">gst_event_ref()</code></a> it if you want to reuse the event after this call. |
| </p> |
| <p> |
| MT safe. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to send the event to.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>event</code></em> :</span></p></td> |
| <td>the <a class="link" href="gstreamer-GstEvent.html#GstEvent" title="struct GstEvent"><span class="type">GstEvent</span></a> to send to the element. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td> |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the event was handled. Events that trigger a preroll (such |
| as flushing seeks and steps) will emit <a class="link" href="gstreamer-GstMessage.html#GST-MESSAGE-ASYNC-DONE:CAPS"><code class="literal">GST_MESSAGE_ASYNC_DONE</code></a>.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-seek-simple"></a><h3>gst_element_seek_simple ()</h3> |
| <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_element_seek_simple (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstEvent.html#GstSeekFlags" title="enum GstSeekFlags"><span class="type">GstSeekFlags</span></a> seek_flags</code></em>, |
| <em class="parameter"><code><span class="type">gint64</span> seek_pos</code></em>);</pre> |
| <p> |
| 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 <a class="link" href="GstElement.html#gst-element-seek" title="gst_element_seek ()"><code class="function">gst_element_seek()</code></a>. |
| </p> |
| <p> |
| In a completely prerolled PAUSED or PLAYING pipeline, seeking is always |
| guaranteed to return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on a seekable media type or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> when the media |
| type is certainly not seekable (such as a live stream). |
| </p> |
| <p> |
| 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 <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> when |
| it receives the event in the READY state. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to seek on</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td> |
| <td>a <a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> to execute the seek in, such as <a class="link" href="gstreamer-GstFormat.html#GST-FORMAT-TIME:CAPS"><span class="type">GST_FORMAT_TIME</span></a> |
| </td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>seek_flags</code></em> :</span></p></td> |
| <td>seek options; playback applications will usually want to use |
| GST_SEEK_FLAG_FLUSH | GST_SEEK_FLAG_KEY_UNIT here</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>seek_pos</code></em> :</span></p></td> |
| <td>position to seek to (relative to the start); if you are doing |
| a seek in <a class="link" href="gstreamer-GstFormat.html#GST-FORMAT-TIME:CAPS"><span class="type">GST_FORMAT_TIME</span></a> this value is in nanoseconds - |
| multiply with <a class="link" href="GstClock.html#GST-SECOND:CAPS" title="GST_SECOND"><span class="type">GST_SECOND</span></a> to convert seconds to nanoseconds or |
| with <a class="link" href="GstClock.html#GST-MSECOND:CAPS" title="GST_MSECOND"><span class="type">GST_MSECOND</span></a> to convert milliseconds to nanoseconds.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td> |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the seek operation succeeded. Flushing seeks will trigger a |
| preroll, which will emit <a class="link" href="gstreamer-GstMessage.html#GST-MESSAGE-ASYNC-DONE:CAPS"><code class="literal">GST_MESSAGE_ASYNC_DONE</code></a>.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="gst-element-seek"></a><h3>gst_element_seek ()</h3> |
| <pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> gst_element_seek (<em class="parameter"><code><a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *element</code></em>, |
| <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gdouble"><span class="type">gdouble</span></a> rate</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstFormat.html#GstFormat" title="enum GstFormat"><span class="type">GstFormat</span></a> format</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstEvent.html#GstSeekFlags" title="enum GstSeekFlags"><span class="type">GstSeekFlags</span></a> flags</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstEvent.html#GstSeekType" title="enum GstSeekType"><span class="type">GstSeekType</span></a> start_type</code></em>, |
| <em class="parameter"><code><span class="type">gint64</span> start</code></em>, |
| <em class="parameter"><code><a class="link" href="gstreamer-GstEvent.html#GstSeekType" title="enum GstSeekType"><span class="type">GstSeekType</span></a> stop_type</code></em>, |
| <em class="parameter"><code><span class="type">gint64</span> stop</code></em>);</pre> |
| <p> |
| Sends a seek event to an element. See <a class="link" href="gstreamer-GstEvent.html#gst-event-new-seek" title="gst_event_new_seek ()"><code class="function">gst_event_new_seek()</code></a> for the details of |
| the parameters. The seek event is sent to the element using |
| <a class="link" href="GstElement.html#gst-element-send-event" title="gst_element_send_event ()"><code class="function">gst_element_send_event()</code></a>. |
| </p> |
| <p> |
| MT safe. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>element</code></em> :</span></p></td> |
| <td>a <a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> to send the event to.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>rate</code></em> :</span></p></td> |
| <td>The new playback rate</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>format</code></em> :</span></p></td> |
| <td>The format of the seek values</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td> |
| <td>The optional seek flags.</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>start_type</code></em> :</span></p></td> |
| <td>The type and flags for the new start position</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>start</code></em> :</span></p></td> |
| <td>The value of the new start position</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>stop_type</code></em> :</span></p></td> |
| <td>The type and flags for the new stop position</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>stop</code></em> :</span></p></td> |
| <td>The value of the new stop position</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td> |
| <td> |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the event was handled. Flushing seeks will trigger a |
| preroll, which will emit <a class="link" href="gstreamer-GstMessage.html#GST-MESSAGE-ASYNC-DONE:CAPS"><code class="literal">GST_MESSAGE_ASYNC_DONE</code></a>.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| <div class="refsect1"> |
| <a name="GstElement.signal-details"></a><h2>Signal Details</h2> |
| <div class="refsect2"> |
| <a name="GstElement-no-more-pads"></a><h3>The <code class="literal">"no-more-pads"</code> signal</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> user_function (<a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *gstelement, |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data) : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS"><code class="literal">Run Last</code></a></pre> |
| <p> |
| This signals that the element will not generate more dynamic pads. |
| Note that this signal will usually be emitted from the context of |
| the streaming thread. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>gstelement</code></em> :</span></p></td> |
| <td>the object which received the signal</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td> |
| <td>user data set when the signal handler was connected.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GstElement-pad-added"></a><h3>The <code class="literal">"pad-added"</code> signal</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> user_function (<a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *gstelement, |
| <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *new_pad, |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data) : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS"><code class="literal">Run Last</code></a></pre> |
| <p> |
| a new <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> has been added to the element. Note that this signal will |
| usually be emitted from the context of the streaming thread. Also keep in |
| mind that if you add new elements to the pipeline in the signal handler |
| you will need to set them to the desired target state with |
| <a class="link" href="GstElement.html#gst-element-set-state" title="gst_element_set_state ()"><code class="function">gst_element_set_state()</code></a> or <a class="link" href="GstElement.html#gst-element-sync-state-with-parent" title="gst_element_sync_state_with_parent ()"><code class="function">gst_element_sync_state_with_parent()</code></a>. |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>gstelement</code></em> :</span></p></td> |
| <td>the object which received the signal</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>new_pad</code></em> :</span></p></td> |
| <td>the pad that has been added</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td> |
| <td>user data set when the signal handler was connected.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| <hr> |
| <div class="refsect2"> |
| <a name="GstElement-pad-removed"></a><h3>The <code class="literal">"pad-removed"</code> signal</h3> |
| <pre class="programlisting"><span class="returnvalue">void</span> user_function (<a class="link" href="GstElement.html" title="GstElement"><span class="type">GstElement</span></a> *gstelement, |
| <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> *old_pad, |
| <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data) : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS"><code class="literal">Run Last</code></a></pre> |
| <p> |
| a <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> has been removed from the element |
| </p> |
| <div class="variablelist"><table border="0" class="variablelist"> |
| <colgroup> |
| <col align="left" valign="top"> |
| <col> |
| </colgroup> |
| <tbody> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>gstelement</code></em> :</span></p></td> |
| <td>the object which received the signal</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>old_pad</code></em> :</span></p></td> |
| <td>the pad that has been removed</td> |
| </tr> |
| <tr> |
| <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td> |
| <td>user data set when the signal handler was connected.</td> |
| </tr> |
| </tbody> |
| </table></div> |
| </div> |
| </div> |
| <div class="refsect1"> |
| <a name="GstElement.see-also"></a><h2>See Also</h2> |
| <a class="link" href="GstElementFactory.html" title="GstElementFactory"><span class="type">GstElementFactory</span></a>, <a class="link" href="GstPad.html" title="GstPad"><span class="type">GstPad</span></a> |
| </div> |
| </div> |
| <div class="footer"> |
| <hr> |
| Generated by GTK-Doc V1.18</div> |
| </body> |
| </html> |