mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-24 17:20:36 +00:00
1e4ad29e52
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:
355 lines
5.4 KiB
Text
355 lines
5.4 KiB
Text
<!-- ##### SECTION Title ##### -->
|
|
GstPlugin
|
|
|
|
<!-- ##### SECTION Short_Description ##### -->
|
|
Container for features loaded from a shared object module
|
|
|
|
<!-- ##### SECTION Long_Description ##### -->
|
|
<para>
|
|
GStreamer is extensible so <classname>GstElements</classname> can be loaded at runtime. A plugin
|
|
system can provide one or more of the basic <application>GStreamer</application>
|
|
#GstPluginFeature subclasses.
|
|
</para>
|
|
<para>
|
|
A plugin should export a symbol plugin_desc that is a struct of type #GstPluginDesc.
|
|
the plugin loader will check the version of the core library the plugin was linked against
|
|
and will create a new #GstPlugin. It will then call the #GstPluginInitFunc function
|
|
that was provided in the plugin_desc.
|
|
</para>
|
|
<para>
|
|
Once you have a handle to a #GstPlugin, you can add any object that subclasses #GstPluginFeature.
|
|
</para>
|
|
<para>
|
|
use gst_plugin_find_feature() and gst_plugin_get_feature_list() to find features in a plugin.
|
|
</para>
|
|
<para>
|
|
Usually plugins are always automaticlly loaded so you don't need to call gst_plugin_load() explicitly
|
|
to bring it into memory. There are options to statically link plugins to an app or even
|
|
use GStreamer without a plugin repository in which case gst_plugin_load() can be needed
|
|
to bring the plugin into memory.
|
|
</para>
|
|
|
|
<!-- ##### SECTION See_Also ##### -->
|
|
<para>
|
|
#GstPluginFeature, #GstType, #GstAutoplug, #GstElementFactory
|
|
</para>
|
|
|
|
<!-- ##### FUNCTION gst_plugin_error_quark ##### -->
|
|
<para>
|
|
Get the error quark
|
|
</para>
|
|
|
|
@Returns: The error quark used in GError messages
|
|
|
|
|
|
<!-- ##### MACRO GST_PLUGIN_ERROR ##### -->
|
|
<para>
|
|
The error quark
|
|
</para>
|
|
|
|
|
|
|
|
<!-- ##### ENUM GstPluginError ##### -->
|
|
<para>
|
|
The plugin loading errors
|
|
</para>
|
|
|
|
@GST_PLUGIN_ERROR_MODULE: The plugin could not be loaded
|
|
@GST_PLUGIN_ERROR_DEPENDENCIES: The plugin has unresolved dependencies
|
|
@GST_PLUGIN_ERROR_NAME_MISMATCH:
|
|
|
|
<!-- ##### MACRO GST_PLUGIN ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@plugin:
|
|
|
|
|
|
<!-- ##### STRUCT GstPlugin ##### -->
|
|
<para>
|
|
The plugin object
|
|
</para>
|
|
|
|
@desc:
|
|
@filename:
|
|
@features:
|
|
@numfeatures:
|
|
@manager:
|
|
@module:
|
|
@_gst_reserved:
|
|
|
|
<!-- ##### STRUCT GstPluginDesc ##### -->
|
|
<para>
|
|
A plugins should export a variable of this type called plugin_desc. This plugin
|
|
loaded will use this variable to initialize the plugin.
|
|
</para>
|
|
|
|
@major_version: The minor version of the gstreamer library this plugin was created with
|
|
@minor_version: The minor version of the gstreamer library this plugin was created with
|
|
@name: The name of the plugin
|
|
@description:
|
|
@plugin_init: The init function of this plugin.
|
|
@plugin_exit:
|
|
@version:
|
|
@license:
|
|
@package:
|
|
@origin:
|
|
@_gst_reserved:
|
|
|
|
<!-- ##### USER_FUNCTION GstPluginInitFunc ##### -->
|
|
<para>
|
|
A plugin should provide a pointer to a function of this type in the plugin_desc struct.
|
|
It will be called by the loader at statup.
|
|
</para>
|
|
|
|
@plugin: The plugin object that can be used to register stuff for this plugin.
|
|
@Returns: A boolean indicating success or failure.
|
|
<!-- # Unused Parameters # -->
|
|
@module: The <classname>GModule</classname> it was loaded from
|
|
|
|
|
|
<!-- ##### USER_FUNCTION GstPluginExitFunc ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@plugin:
|
|
|
|
|
|
<!-- ##### MACRO GST_PLUGIN_DEFINE ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@major:
|
|
@minor:
|
|
@name:
|
|
@description:
|
|
@init:
|
|
@version:
|
|
@license:
|
|
@package:
|
|
@origin:
|
|
|
|
|
|
<!-- ##### MACRO GST_PLUGIN_DEFINE_STATIC ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@major:
|
|
@minor:
|
|
@name:
|
|
@description:
|
|
@init:
|
|
@version:
|
|
@license:
|
|
@package:
|
|
@origin:
|
|
|
|
|
|
<!-- ##### MACRO GST_LICENSE_UNKNOWN ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<!-- ##### USER_FUNCTION GstPluginFilter ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@plugin:
|
|
@user_data:
|
|
@Returns:
|
|
|
|
|
|
<!-- ##### MACRO GST_TYPE_PLUGIN ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gst_plugin_get_type ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@Returns:
|
|
|
|
|
|
<!-- ##### FUNCTION gst_plugin_get_name ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@plugin:
|
|
@Returns:
|
|
|
|
|
|
<!-- ##### FUNCTION gst_plugin_get_description ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@plugin:
|
|
@Returns:
|
|
|
|
|
|
<!-- ##### FUNCTION gst_plugin_get_filename ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@plugin:
|
|
@Returns:
|
|
|
|
|
|
<!-- ##### FUNCTION gst_plugin_get_license ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@plugin:
|
|
@Returns:
|
|
|
|
|
|
<!-- ##### FUNCTION gst_plugin_get_package ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@plugin:
|
|
@Returns:
|
|
|
|
|
|
<!-- ##### FUNCTION gst_plugin_get_origin ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@plugin:
|
|
@Returns:
|
|
|
|
|
|
<!-- ##### FUNCTION gst_plugin_get_module ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@plugin:
|
|
@Returns:
|
|
|
|
|
|
<!-- ##### FUNCTION gst_plugin_is_loaded ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@plugin:
|
|
@Returns:
|
|
|
|
|
|
<!-- ##### FUNCTION gst_plugin_feature_filter ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@plugin:
|
|
@filter:
|
|
@first:
|
|
@user_data:
|
|
@Returns:
|
|
|
|
|
|
<!-- ##### FUNCTION gst_plugin_list_feature_filter ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@list:
|
|
@filter:
|
|
@first:
|
|
@user_data:
|
|
@Returns:
|
|
|
|
|
|
<!-- ##### FUNCTION gst_plugin_name_filter ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@plugin:
|
|
@name:
|
|
@Returns:
|
|
|
|
|
|
<!-- ##### FUNCTION gst_plugin_get_feature_list ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@plugin:
|
|
@Returns:
|
|
|
|
|
|
<!-- ##### FUNCTION gst_plugin_find_feature ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@plugin:
|
|
@name:
|
|
@type:
|
|
@Returns:
|
|
|
|
|
|
<!-- ##### FUNCTION gst_plugin_load_file ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@filename:
|
|
@error:
|
|
@Returns:
|
|
|
|
|
|
<!-- ##### FUNCTION gst_plugin_unload_plugin ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@plugin:
|
|
@Returns:
|
|
|
|
|
|
<!-- ##### FUNCTION gst_plugin_add_feature ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@plugin:
|
|
@feature:
|
|
|
|
|
|
<!-- ##### FUNCTION gst_plugin_load ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@name:
|
|
@Returns:
|
|
|
|
|
|
<!-- ##### FUNCTION gst_library_load ##### -->
|
|
<para>
|
|
|
|
</para>
|
|
|
|
@name:
|
|
@Returns:
|
|
|
|
|