GstPlugin Dynamically loadable Elements GStreamer is extensible so GstElements can be loaded at runtime. A plugin system can provide one or more of the basic GStreamer #GstPluginFeature subclasses. 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. Once you have a handle to a #GstPlugin, you can add any object that subclasses #GstPluginFeature. use gst_plugin_find_feature() and gst_plugin_get_feature_list() to find features in a plugin. 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. #GstPluginFeature, #GstType, #GstAutoplug, #GstElementFactory The error quark Get the error quark @Returns: The error quark used in GError messages The plugin loading errors @GST_PLUGIN_ERROR_MODULE: The plugin could not be loaded @GST_PLUGIN_ERROR_DEPENDENCIES: The plugin has unresolved dependencies @name: @longname: @filename: @features: @numfeatures: @manager: @module: @init_called: 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. @module: The GModule it was loaded from @plugin: The plugin object that can be used to register stuff for this plugin. @Returns: A boolean indicating success or failure. A plugins should export a variable of this type called plugin_desc. This plugin loaded will use this variable to initialize the plugin. @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 @plugin_init: The init function of this plugin. A handy macro to define a plugin description. This macro handles with all the issues involved with the different linking methods for this plugin. @major: The major version of GStreamer this plugin was compiled against. @minor: The minor version of GStreamer this plugin was compiled against. @name: The name of the plugin. @init: The init function of this plugin. The macro used to define dynamically loaded plugins. @major: The major version of GStreamer this plugin was compiled against. @minor: The minor version of GStreamer this plugin was compiled against. @name: The name of the plugin. @init: The init function of this plugin. A macro used to define a statically linked plugin. @major: The major version of GStreamer this plugin was compiled against. @minor: The minor version of GStreamer this plugin was compiled against. @name: The name of the plugin. @init: The init function of this plugin. @filename: @Returns: @name: @major: @minor: @plugin: @name: @plugin: @Returns: @plugin: @Returns: @plugin: @longname: @plugin: @Returns: @plugin: @Returns: @plugin: @Returns: @plugin: @name: @type: @Returns: @plugin: @error: @Returns: @plugin: @Returns: @plugin: @feature: @name: @Returns: @name: @Returns: