gstreamer/docs/gst/tmpl/gstelement.sgml
David Schleef 1e4ad29e52 docs/gst/gstreamer-docs.sgml: I got tired of the reference manual being such complete crap, that I decided to do majo...
Original commit message from CVS:
* docs/gst/gstreamer-docs.sgml:  I got tired of the reference
manual being such complete crap, that I decided to do major
hacking of it.  This checkin replaces any fine tuning that
may have been done previously, with the benefit of actually
being complete for much of the API that was changed since
0.6.  Further fine tuning will occur shortly.  (bug #134721)
* docs/gst/gstreamer-sections.txt:
* docs/gst/tmpl/GstBin.sgml:
* docs/gst/tmpl/GstBuffer.sgml:
* docs/gst/tmpl/GstCaps.sgml:
* docs/gst/tmpl/GstClock.sgml:
* docs/gst/tmpl/GstCompat.sgml:
* docs/gst/tmpl/GstData.sgml:
* docs/gst/tmpl/GstElement.sgml:
* docs/gst/tmpl/GstEvent.sgml:
* docs/gst/tmpl/GstIndex.sgml:
* docs/gst/tmpl/GstStructure.sgml:
* docs/gst/tmpl/GstTag.sgml:
* docs/gst/tmpl/cothreads.sgml:
* docs/gst/tmpl/cothreads_compat.sgml:
* docs/gst/tmpl/gettext.sgml:
* docs/gst/tmpl/grammar.tab.sgml:
* docs/gst/tmpl/gst-i18n-app.sgml:
* docs/gst/tmpl/gst-i18n-lib.sgml:
* docs/gst/tmpl/gst.sgml:
* docs/gst/tmpl/gst_private.sgml:
* docs/gst/tmpl/gstaggregator.sgml:
* docs/gst/tmpl/gstarch.sgml:
* docs/gst/tmpl/gstatomic.sgml:
* docs/gst/tmpl/gstatomic_impl.sgml:
* docs/gst/tmpl/gstbin.sgml:
* docs/gst/tmpl/gstbuffer.sgml:
* docs/gst/tmpl/gstbufferstore.sgml:
* docs/gst/tmpl/gstcaps.sgml:
* docs/gst/tmpl/gstclock.sgml:
* docs/gst/tmpl/gstcompat.sgml:
* docs/gst/tmpl/gstconfig.sgml:
* docs/gst/tmpl/gstcpu.sgml:
* docs/gst/tmpl/gstdata.sgml:
* docs/gst/tmpl/gstdata_private.sgml:
* docs/gst/tmpl/gstelement.sgml:
* docs/gst/tmpl/gstenumtypes.sgml:
* docs/gst/tmpl/gsterror.sgml:
* docs/gst/tmpl/gstevent.sgml:
* docs/gst/tmpl/gstfakesink.sgml:
* docs/gst/tmpl/gstfakesrc.sgml:
* docs/gst/tmpl/gstfilesink.sgml:
* docs/gst/tmpl/gstfilter.sgml:
* docs/gst/tmpl/gstindex.sgml:
* docs/gst/tmpl/gstinfo.sgml:
* docs/gst/tmpl/gstinterface.sgml:
* docs/gst/tmpl/gstlog.sgml:
* docs/gst/tmpl/gstmacros.sgml:
* docs/gst/tmpl/gstmarshal.sgml:
* docs/gst/tmpl/gstmd5sink.sgml:
* docs/gst/tmpl/gstmultifilesrc.sgml:
* docs/gst/tmpl/gstobject.sgml:
* docs/gst/tmpl/gstpad.sgml:
* docs/gst/tmpl/gstparse.sgml:
* docs/gst/tmpl/gstpipeline.sgml:
* docs/gst/tmpl/gstplugin.sgml:
* docs/gst/tmpl/gstpluginfeature.sgml:
* docs/gst/tmpl/gstqueue.sgml:
* docs/gst/tmpl/gstreamer-unused.sgml:
* docs/gst/tmpl/gstregistry.sgml:
* docs/gst/tmpl/gstregistrypool.sgml:
* docs/gst/tmpl/gstscheduler.sgml:
* docs/gst/tmpl/gstsearchfuncs.sgml:
* docs/gst/tmpl/gstshaper.sgml:
* docs/gst/tmpl/gstspider.sgml:
* docs/gst/tmpl/gstspideridentity.sgml:
* docs/gst/tmpl/gststructure.sgml:
* docs/gst/tmpl/gstsystemclock.sgml:
* docs/gst/tmpl/gsttag.sgml:
* docs/gst/tmpl/gsttaginterface.sgml:
* docs/gst/tmpl/gsttee.sgml:
* docs/gst/tmpl/gstthread.sgml:
* docs/gst/tmpl/gsttrace.sgml:
* docs/gst/tmpl/gsttrashstack.sgml:
* docs/gst/tmpl/gsttypefind.sgml:
* docs/gst/tmpl/gsttypes.sgml:
* docs/gst/tmpl/gsturi.sgml:
* docs/gst/tmpl/gsturitype.sgml:
* docs/gst/tmpl/gstutils.sgml:
* docs/gst/tmpl/gstvalue.sgml:
* docs/gst/tmpl/gstversion.sgml:
* docs/gst/tmpl/gstxml.sgml:
* docs/gst/tmpl/gstxmlregistry.sgml:
* docs/gst/tmpl/gthread-cothreads.sgml:
* docs/gst/tmpl/types.sgml:
2004-03-25 04:20:33 +00:00

1367 lines
19 KiB
Plaintext

<!-- ##### SECTION Title ##### -->
GstElement
<!-- ##### SECTION Short_Description ##### -->
Abstract base class for all pipeline elements
<!-- ##### SECTION Long_Description ##### -->
<para>
GstElement is the base class needed to construct an element that can be
used in a GStreamer pipeline. As such, it is not a functional entity, and
cannot do anything when placed in a pipeline.
</para>
<para>
The name of a GstElement can be get with gst_element_get_name() and set with
gst_element_set_name(). For speed, GST_ELEMENT_NAME() can be used in the
core.
Do not use this in plug-ins or applications in order to retain ABI
compatibility.
</para>
<para>
All elements have pads (of the type #GstPad). These pads link to pads on
other elements. Buffers flow between these linked pads.
A GstElement has a GList of #GstPad structures for all their input (or sink)
and output (or source) pads.
Core and plug-in writers can add and remove pads with gst_element_add_pad()
and gst_element_remove_pad().
Application writers can manipulate ghost pads (copies of real pads inside a bin)
with gst_element_add_ghost_pad() and gst_element_remove_ghost_pad().
A pad of an element can be retrieved by name with gst_element_get_pad().
A GList of all pads can be retrieved with gst_element_get_pad_list().
</para>
<para>
Elements can be linked through their pads.
If the link is straightforward, use the gst_element_link()
convenience function to link two elements, or gst_element_link_many()
for more elements in a row.
Use gst_element_link_filtered() to link two elements constrained by
a specified set of #GstCaps.
For finer control, use gst_element_link_pads() and
gst_element_link_pads_filtered() to specify the pads to link on
each element by name.
</para>
<para>
Each element has a state (see #GstElementState). You can get and set the state
of an element with gst_element_get_state() and gst_element_set_state().
You can wait for an element to change it's state with gst_element_wait_state_change().
To get a string representation of a #GstElementState, use
gst_element_state_get_name().
</para>
<para>
You can get and set a #GstClock on an element using gst_element_get_clock()
and gst_element_set_clock(). You can wait for the clock to reach a given
#GstClockTime using gst_element_clock_wait().
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
#GstElementFactory, #GstPad
</para>
<!-- basic object functions -->
<!-- ##### STRUCT GstElementDetails ##### -->
<para>
This struct is used to define public information about the element. It
describes the element, mostly for the benefit of editors.
</para>
@longname:
@klass:
@description:
@author:
@_gst_reserved:
<!-- ##### MACRO GST_ELEMENT_DETAILS ##### -->
<para>
</para>
@longname:
@klass:
@description:
@author:
<!-- ##### MACRO GST_IS_ELEMENT_DETAILS ##### -->
<para>
</para>
@details:
<!-- ##### MACRO GST_NUM_STATES ##### -->
<para>
The maximun number of states.
</para>
<!-- ##### MACRO GST_STATE ##### -->
<para>
This macro returns the current state of the element.
</para>
@obj: Element to return state for.
<!-- ##### MACRO GST_STATE_PENDING ##### -->
<para>
This macro returns the currently pending state of the element.
</para>
@obj: Element to return the pending state for.
<!-- ##### MACRO GST_STATE_TRANSITION ##### -->
<para>
Returns the state transition this object is going through.
</para>
@obj: the Element to return the state transition for
<!-- ##### MACRO GST_STATE_NULL_TO_READY ##### -->
<para>
The Element is going from the NULL state to the READY state.
</para>
<!-- ##### MACRO GST_STATE_READY_TO_PAUSED ##### -->
<para>
The Element is going from the READY state to the PAUSED state.
</para>
<!-- ##### MACRO GST_STATE_PAUSED_TO_PLAYING ##### -->
<para>
The Element is going from the PAUSED state to the PLAYING state.
</para>
<!-- ##### MACRO GST_STATE_PLAYING_TO_PAUSED ##### -->
<para>
The Element is going from the PLAYING state to the PAUSED state.
</para>
<!-- ##### MACRO GST_STATE_PAUSED_TO_READY ##### -->
<para>
The Element is going from the PAUSED state to the READY state.
</para>
<!-- ##### MACRO GST_STATE_READY_TO_NULL ##### -->
<para>
The Element is going from the READY state to the NULL state.
</para>
<!-- ##### MACRO GST_ELEMENT_CLASS ##### -->
<para>
</para>
@klass:
<!-- ##### MACRO GST_ELEMENT_QUERY_TYPE_FUNCTION ##### -->
<para>
Helper macro to create query type functions
</para>
@functionname: The function name
@...: list of query types.
<!-- ##### MACRO GST_ELEMENT_FORMATS_FUNCTION ##### -->
<para>
Halper macro to create element format functions
</para>
@functionname: The function name
@...: formats
<!-- ##### MACRO GST_ELEMENT_EVENT_MASK_FUNCTION ##### -->
<para>
A helper macro to create a mask function
</para>
@functionname: the name of the mask function
@...: Masks
<!-- ##### ENUM GstElementFlags ##### -->
<para>
This enum defines the standard flags that an element may have.
</para>
@GST_ELEMENT_COMPLEX:
@GST_ELEMENT_DECOUPLED:
@GST_ELEMENT_THREAD_SUGGESTED:
@GST_ELEMENT_INFINITE_LOOP:
@GST_ELEMENT_NEW_LOOPFUNC:
@GST_ELEMENT_EVENT_AWARE:
@GST_ELEMENT_USE_THREADSAFE_PROPERTIES:
@GST_ELEMENT_SCHEDULER_PRIVATE1:
@GST_ELEMENT_SCHEDULER_PRIVATE2:
@GST_ELEMENT_LOCKED_STATE:
@GST_ELEMENT_IN_ERROR:
@GST_ELEMENT_FLAG_LAST:
<!-- ##### MACRO GST_ELEMENT_IS_THREAD_SUGGESTED ##### -->
<para>
Queries whether the Element should be placed in a thread.
</para>
@obj: a #GstElement to query
<!-- ##### MACRO GST_ELEMENT_IS_EVENT_AWARE ##### -->
<para>
Query wether this element can handle events.
</para>
@obj: a #GstElement to query
<!-- ##### MACRO GST_ELEMENT_IS_DECOUPLED ##### -->
<para>
Queries if the Element is decoupled.
</para>
@obj: a #GstElement to query
<!-- ##### MACRO GST_ELEMENT_NAME ##### -->
<para>
Gets the name of this element. Used in the core. Not ABI-compatible.
</para>
@obj: A #GstElement to query
<!-- ##### MACRO GST_ELEMENT_PARENT ##### -->
<para>
Get the parent object of this element.
</para>
@obj: a #GstElement to query
<!-- ##### MACRO GST_ELEMENT_MANAGER ##### -->
<para>
Get the manager of this element.
</para>
@obj: a #GstElement to query
<!-- ##### MACRO GST_ELEMENT_SCHED ##### -->
<para>
Get the scheduler of this element.
</para>
@obj: a #GstElement to query
<!-- ##### MACRO GST_ELEMENT_CLOCK ##### -->
<para>
Get the clock of this element
</para>
@obj: a #GstElement to query
<!-- ##### MACRO GST_ELEMENT_PADS ##### -->
<para>
Get the pads of this elements.
</para>
@obj: a #GstElement to query
<!-- ##### MACRO GST_ELEMENT_ERROR ##### -->
<para>
</para>
@el:
@domain:
@code:
@message:
@debug:
<!-- ##### USER_FUNCTION GstElementLoopFunction ##### -->
<para>
This function type is used to specify a loop function for the element. It
is passed the element in question, and is expect to return only in error
circumstances.
</para>
@element: The element in question.
<!-- ##### USER_FUNCTION GstElementPreRunFunction ##### -->
<para>
The signature of the function to execute after this element
is scheduled.
</para>
@element: The element
<!-- ##### USER_FUNCTION GstElementPostRunFunction ##### -->
<para>
The signature of the function to execute before this element
is scheduled.
</para>
@element: The element
<!-- ##### FUNCTION gst_element_class_add_pad_template ##### -->
<para>
</para>
@klass:
@templ:
<!-- ##### FUNCTION gst_element_class_install_std_props ##### -->
<para>
</para>
@klass:
@first_name:
@Varargs:
<!-- ##### FUNCTION gst_element_class_set_details ##### -->
<para>
</para>
@klass:
@details:
<!-- ##### MACRO gst_element_default_deep_notify ##### -->
<para>
The default deep notify handler that prints out the property change
notifications to stdout.
</para>
<!-- ##### FUNCTION gst_element_default_error ##### -->
<para>
</para>
@object:
@orig:
@error:
@debug:
<!-- ##### FUNCTION gst_element_set_loop_function ##### -->
<para>
</para>
@element:
@loop:
<!-- ##### MACRO gst_element_get_name ##### -->
<para>
Gets the name of the element.
</para>
@elem:
@Returns: the name of the element.
<!-- link -->
<!-- ##### MACRO gst_element_set_name ##### -->
<para>
Sets the name of the element, getting rid of the old name if there was one.
</para>
@elem: a #GstElement to set the name of.
@name: the new name of the element.
<!-- ##### MACRO gst_element_get_parent ##### -->
<para>
Gets the parent of an element.
</para>
@elem: a #GstElement to get the parent of.
@Returns: the #GstObject parent of the element.
<!-- ##### MACRO gst_element_set_parent ##### -->
<para>
Sets the parent of an element.
</para>
@elem: a #GstElement to set the parent of.
@parent: the new #GstObject parent of the object.
<!-- ##### FUNCTION gst_element_set ##### -->
<para>
</para>
@element:
@first_property_name:
@Varargs:
<!-- ##### FUNCTION gst_element_get ##### -->
<para>
</para>
@element:
@first_property_name:
@Varargs:
<!-- ##### FUNCTION gst_element_set_valist ##### -->
<para>
</para>
@element:
@first_property_name:
@var_args:
<!-- ##### FUNCTION gst_element_get_valist ##### -->
<para>
</para>
@element:
@first_property_name:
@var_args:
<!-- ##### FUNCTION gst_element_set_property ##### -->
<para>
</para>
@element:
@property_name:
@value:
<!-- ##### FUNCTION gst_element_get_property ##### -->
<para>
</para>
@element:
@property_name:
@value:
<!-- ##### FUNCTION gst_element_enable_threadsafe_properties ##### -->
<para>
</para>
@element:
<!-- ##### FUNCTION gst_element_disable_threadsafe_properties ##### -->
<para>
</para>
@element:
<!-- ##### FUNCTION gst_element_set_pending_properties ##### -->
<para>
</para>
@element:
<!-- ##### FUNCTION gst_element_requires_clock ##### -->
<para>
</para>
@element:
@Returns:
<!-- ##### FUNCTION gst_element_provides_clock ##### -->
<para>
</para>
@element:
@Returns:
<!-- ##### FUNCTION gst_element_get_clock ##### -->
<para>
</para>
@element:
@Returns:
<!-- ##### FUNCTION gst_element_set_clock ##### -->
<para>
</para>
@element:
@clock:
<!-- ##### FUNCTION gst_element_clock_wait ##### -->
<para>
</para>
@element:
@id:
@jitter:
@Returns:
<!-- # Unused Parameters # -->
@clock:
@time:
<!-- ##### FUNCTION gst_element_get_time ##### -->
<para>
</para>
@element:
@Returns:
<!-- ##### FUNCTION gst_element_wait ##### -->
<para>
</para>
@element:
@timestamp:
@Returns:
<!-- ##### FUNCTION gst_element_set_time ##### -->
<para>
</para>
@element:
@time:
<!-- ##### FUNCTION gst_element_adjust_time ##### -->
<para>
</para>
@element:
@diff:
<!-- ##### FUNCTION gst_element_is_indexable ##### -->
<para>
</para>
@element:
@Returns:
<!-- ##### FUNCTION gst_element_set_index ##### -->
<para>
</para>
@element:
@index:
<!-- ##### FUNCTION gst_element_get_index ##### -->
<para>
</para>
@element:
@Returns:
<!-- ##### FUNCTION gst_element_release_locks ##### -->
<para>
</para>
@element:
@Returns:
<!-- ##### FUNCTION gst_element_yield ##### -->
<para>
</para>
@element:
<!-- ##### FUNCTION gst_element_interrupt ##### -->
<para>
</para>
@element:
@Returns:
<!-- ##### FUNCTION gst_element_set_scheduler ##### -->
<para>
</para>
@element:
@sched:
<!-- ##### FUNCTION gst_element_get_scheduler ##### -->
<para>
</para>
@element:
@Returns:
<!-- ##### FUNCTION gst_element_add_pad ##### -->
<para>
</para>
@element:
@pad:
<!-- ##### FUNCTION gst_element_remove_pad ##### -->
<para>
</para>
@element:
@pad:
<!-- ##### FUNCTION gst_element_add_ghost_pad ##### -->
<para>
</para>
@element:
@pad:
@name:
@Returns:
<!-- ##### FUNCTION gst_element_remove_ghost_pad ##### -->
<para>
</para>
@element:
@pad:
<!-- pad template manipulation -->
<!-- ##### FUNCTION gst_element_get_pad ##### -->
<para>
</para>
@element:
@name:
@Returns: GList of #GstPads
<!-- ##### FUNCTION gst_element_get_static_pad ##### -->
<para>
</para>
@element:
@name:
@Returns:
<!-- ##### FUNCTION gst_element_get_request_pad ##### -->
<para>
</para>
@element:
@name:
@Returns:
<!-- ##### FUNCTION gst_element_release_request_pad ##### -->
<para>
</para>
@element:
@pad:
<!-- ##### FUNCTION gst_element_get_pad_list ##### -->
<para>
</para>
@element:
@Returns:
<!-- ##### FUNCTION gst_element_get_compatible_pad ##### -->
<para>
</para>
@element:
@pad:
@Returns:
<!-- ##### FUNCTION gst_element_get_compatible_pad_filtered ##### -->
<para>
</para>
@element:
@pad:
@filtercaps:
@Returns:
<!-- ##### FUNCTION gst_element_class_get_pad_template ##### -->
<para>
</para>
@element_class:
@name:
@Returns:
<!-- ##### FUNCTION gst_element_class_get_pad_template_list ##### -->
<para>
</para>
@element_class:
@Returns:
<!-- ##### FUNCTION gst_element_get_pad_template ##### -->
<para>
</para>
@element:
@name:
@Returns:
<!-- ##### FUNCTION gst_element_get_pad_template_list ##### -->
<para>
</para>
@element:
@Returns:
<!-- scheduling -->
<!-- ##### FUNCTION gst_element_get_compatible_pad_template ##### -->
<para>
</para>
@element:
@compattempl:
@Returns:
<!-- ##### FUNCTION gst_element_link ##### -->
<para>
</para>
@src:
@dest:
@Returns:
<!-- ##### FUNCTION gst_element_link_many ##### -->
<para>
</para>
@element_1:
@element_2:
@Varargs:
@Returns:
<!-- ##### FUNCTION gst_element_link_filtered ##### -->
<para>
</para>
@src:
@dest:
@filtercaps:
@Returns:
<!-- ##### FUNCTION gst_element_unlink ##### -->
<para>
</para>
@src:
@dest:
<!-- ##### FUNCTION gst_element_unlink_many ##### -->
<para>
</para>
@element_1:
@element_2:
@Varargs:
<!-- ##### FUNCTION gst_element_link_pads ##### -->
<para>
</para>
@src:
@srcpadname:
@dest:
@destpadname:
@Returns:
<!-- ##### FUNCTION gst_element_link_pads_filtered ##### -->
<para>
</para>
@src:
@srcpadname:
@dest:
@destpadname:
@filtercaps:
@Returns:
<!-- ##### FUNCTION gst_element_unlink_pads ##### -->
<para>
</para>
@src:
@srcpadname:
@dest:
@destpadname:
<!-- pad manipulation -->
<!-- ##### FUNCTION gst_element_get_event_masks ##### -->
<para>
</para>
@element:
@Returns:
<!-- ##### FUNCTION gst_element_send_event ##### -->
<para>
</para>
@element:
@event:
@Returns:
<!-- ##### FUNCTION gst_element_seek ##### -->
<para>
</para>
@element:
@seek_type:
@offset:
@Returns:
<!-- ##### FUNCTION gst_element_get_query_types ##### -->
<para>
</para>
@element:
@Returns:
<!-- ##### FUNCTION gst_element_query ##### -->
<para>
</para>
@element:
@type:
@format:
@value:
@Returns:
<!-- ##### FUNCTION gst_element_get_formats ##### -->
<para>
</para>
@element:
@Returns:
<!-- ##### FUNCTION gst_element_convert ##### -->
<para>
</para>
@element:
@src_format:
@src_value:
@dest_format:
@dest_value:
@Returns:
<!-- ##### FUNCTION gst_element_found_tags ##### -->
<para>
</para>
@element:
@tag_list:
<!-- ##### FUNCTION gst_element_found_tags_for_pad ##### -->
<para>
</para>
@element:
@pad:
@timestamp:
@list:
<!-- ##### FUNCTION gst_element_set_eos ##### -->
<para>
</para>
@element:
<!-- ##### FUNCTION gst_element_error_full ##### -->
<para>
</para>
@element:
@domain:
@code:
@message:
@debug:
@file:
@function:
@line:
<!-- ##### FUNCTION gst_element_is_locked_state ##### -->
<para>
</para>
@element:
@Returns:
<!-- ##### FUNCTION gst_element_set_locked_state ##### -->
<para>
</para>
@element:
@locked_state:
<!-- ##### FUNCTION gst_element_sync_state_with_parent ##### -->
<para>
</para>
@element:
@Returns:
<!-- ##### FUNCTION gst_element_get_state ##### -->
<para>
</para>
@element:
@Returns:
<!-- ##### FUNCTION gst_element_set_state ##### -->
<para>
</para>
@element:
@state:
@Returns:
<!-- ##### FUNCTION gst_element_wait_state_change ##### -->
<para>
</para>
@element:
<!-- ##### FUNCTION gst_element_state_get_name ##### -->
<para>
</para>
@state:
@Returns:
<!-- ##### FUNCTION gst_element_get_factory ##### -->
<para>
</para>
@element:
@Returns:
<!-- ##### FUNCTION gst_element_get_managing_bin ##### -->
<para>
</para>
@element:
@Returns:
<!-- clocking -->
<!-- ##### MACRO GST_TYPE_ELEMENT_FACTORY ##### -->
<para>
</para>
<!-- ##### MACRO GST_ELEMENT_FACTORY ##### -->
<para>
</para>
@obj:
<!-- ##### MACRO GST_ELEMENT_FACTORY_CLASS ##### -->
<para>
</para>
@klass:
<!-- ##### MACRO GST_IS_ELEMENT_FACTORY ##### -->
<para>
</para>
@obj:
<!-- ##### MACRO GST_IS_ELEMENT_FACTORY_CLASS ##### -->
<para>
</para>
@klass:
<!-- ##### FUNCTION gst_element_factory_get_type ##### -->
<para>
</para>
@Returns:
<!-- ##### FUNCTION gst_element_register ##### -->
<para>
</para>
@plugin:
@elementname:
@rank:
@type:
@Returns:
<!-- ##### FUNCTION gst_element_factory_find ##### -->
<para>
</para>
@name:
@Returns:
<!-- ##### FUNCTION gst_element_factory_get_element_type ##### -->
<para>
</para>
@factory:
@Returns:
<!-- ##### FUNCTION gst_element_factory_get_longname ##### -->
<para>
</para>
@factory:
@Returns:
<!-- ##### FUNCTION gst_element_factory_get_klass ##### -->
<para>
</para>
@factory:
@Returns:
<!-- ##### FUNCTION gst_element_factory_get_description ##### -->
<para>
</para>
@factory:
@Returns:
<!-- ##### FUNCTION gst_element_factory_get_author ##### -->
<para>
</para>
@factory:
@Returns:
<!-- ##### FUNCTION gst_element_factory_get_num_pad_templates ##### -->
<para>
</para>
@factory:
@Returns:
<!-- ##### FUNCTION gst_element_factory_get_pad_templates ##### -->
<para>
</para>
@factory:
@Returns:
<!-- ##### FUNCTION gst_element_factory_get_uri_type ##### -->
<para>
</para>
@factory:
@Returns:
<!-- ##### FUNCTION gst_element_factory_get_uri_protocols ##### -->
<para>
</para>
@factory:
@Returns:
<!-- ##### FUNCTION gst_element_factory_create ##### -->
<para>
</para>
@factory:
@name:
@Returns:
<!-- ##### FUNCTION gst_element_factory_make ##### -->
<para>
</para>
@factoryname:
@name:
@Returns:
<!-- ##### FUNCTION gst_element_factory_can_src_caps ##### -->
<para>
</para>
@factory:
@caps:
@Returns:
<!-- ##### FUNCTION gst_element_factory_can_sink_caps ##### -->
<para>
</para>
@factory:
@caps:
@Returns:
<!-- ##### SIGNAL GstElement::eos ##### -->
<para>
Signal emited when the element goes to PAUSED due to an end-of-stream
condition.
</para>
@gstelement: the object which received the signal.
<!-- ##### SIGNAL GstElement::error ##### -->
<para>
This signal is emitted when an element has encountered an error that caused
it to fail performing its function.
</para>
@gstelement: the object which received the signal.
@arg1: the original #GstElement that generated the error.
@arg2: a #GError containing the translated error message.
@arg3: a debug string providing additional untranslated debug information, or NULL.
<!-- ##### SIGNAL GstElement::found-tag ##### -->
<para>
</para>
@gstelement: the object which received the signal.
@arg1:
@arg2:
<!-- ##### SIGNAL GstElement::new-pad ##### -->
<para>
Is triggered whenever a new pad is added to an element.
</para>
@gstelement: the object which received the signal.
@arg1: the new pad that was added
<!-- ##### SIGNAL GstElement::pad-removed ##### -->
<para>
Is triggered whenever a pad has been removed from the element.
</para>
@gstelement: the object which received the signal.
@arg1: The pad that was removed.
<!-- ##### SIGNAL GstElement::state-change ##### -->
<para>
Is triggered whenever the state of an element changes.
</para>
@gstelement: the object which received the signal.
@arg1: the new state of the object
@arg2: