gst.plugin
Module for [Plugin] class
Types 3
GStreamer is extensible, so #GstElement instances 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 gst_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 gst_plugin_desc.
Once you have a handle to a #GstPlugin (e.g. from the #GstRegistry), you can add any object that subclasses #GstPluginFeature.
Usually plugins are always automatically loaded so you don't need to call [gst.plugin.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.Plugin.load] can be needed to bring the plugin into memory.
PluginGidBuilder builder()Get builder for [gst.plugin.Plugin] Returns: New builder objectgst.plugin.Plugin loadByName(string name)Load the named plugin. Refs the plugin.gst.plugin.Plugin loadFile(string filename)Loads the given plugin and refs it. Caller needs to unref after use.bool registerStatic(int majorVersion, int minorVersion, string name, string description, gst.types.PluginInitFunc initFunc, string version_, string license, string source, string package_, string origin)Registers a static plugin, ie. a plugin which is private to an application or library and contained within the application or library (as opposed to being shipped as a separate module file).bool registerStaticFull(int majorVersion, int minorVersion, string name, string description, gst.types.PluginInitFullFunc initFullFunc, string version_, string license, string source, string package_, string origin)Registers a static plugin, ie. a plugin which is private to an application or library and contained within the application or library (as opposed to being shipped as a separate module file) with a ...void addDependency(string[] envVars, string[] paths, string[] names, gst.types.PluginDependencyFlags flags)Make GStreamer aware of external dependencies which affect the feature set of this plugin (ie. the elements or typefinders associated with it).void addDependencySimple(string envVars, string paths, string names, gst.types.PluginDependencyFlags flags)Make GStreamer aware of external dependencies which affect the feature set of this plugin (ie. the elements or typefinders associated with it).void addStatusError(string message)void addStatusInfo(string message)void addStatusWarning(string message)gst.structure.Structure getCacheData()Gets the plugin specific data cache. If it is null there is no cached data stored. This is the case when the registry is getting rebuilt. Returns: The cached data as a #GstStructure or null.string getDescription()Get the long descriptive name of the plugin Returns: the long name of the pluginstring getFilename()get the filename of the plugin Returns: the filename of the pluginstring getLicense()get the license of the plugin Returns: the license of the pluginstring getName()Get the short name of the plugin Returns: the name of the pluginstring getOrigin()get the URL where the plugin comes from Returns: the origin of the pluginstring getPackage()get the package the plugin belongs to. Returns: the package of the pluginstring getReleaseDateString()Get the release date (and possibly time) in form of a string, if available.string getSource()get the source module the plugin belongs to. Returns: the source of the pluginstring[] getStatusErrors()string[] getStatusInfos()string[] getStatusWarnings()string getVersion()get the version of the plugin Returns: the version of the pluginbool isLoaded()queries if the plugin is loaded into memory Returns: true is loaded, false otherwisegst.plugin.Plugin load()Loads plugin. Note that the return value is the loaded plugin; plugin is untouched. The normal use pattern of this function goes like this:void setCacheData(gst.structure.Structure cacheData)Adds plugin specific data to cache. Passes the ownership of the structure to the plugin.