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.

Methods
GType _getGType() static nothrow
GType _gType() @property nothrow
Plugin self() nothrowReturns `this`, for use in `with` statements.
PluginGidBuilder builder() static nothrowGet builder for [gst.plugin.Plugin] Returns: New builder object
gst.plugin.Plugin loadByName(string name) static nothrowLoad the named plugin. Refs the plugin.
gst.plugin.Plugin loadFile(string filename) staticLoads 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) static nothrowRegisters 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) static nothrowRegisters 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) nothrowMake 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) nothrowMake 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) nothrow
void addStatusInfo(string message) nothrow
void addStatusWarning(string message) nothrow
gst.structure.Structure getCacheData() nothrowGets 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() nothrowGet the long descriptive name of the plugin Returns: the long name of the plugin
string getFilename() nothrowget the filename of the plugin Returns: the filename of the plugin
string getLicense() nothrowget the license of the plugin Returns: the license of the plugin
string getName() nothrowGet the short name of the plugin Returns: the name of the plugin
string getOrigin() nothrowget the URL where the plugin comes from Returns: the origin of the plugin
string getPackage() nothrowget the package the plugin belongs to. Returns: the package of the plugin
string getReleaseDateString() nothrowGet the release date (and possibly time) in form of a string, if available.
string getSource() nothrowget the source module the plugin belongs to. Returns: the source of the plugin
string[] getStatusErrors() nothrow
string[] getStatusInfos() nothrow
string[] getStatusWarnings() nothrow
string getVersion() nothrowget the version of the plugin Returns: the version of the plugin
bool isLoaded() nothrowqueries if the plugin is loaded into memory Returns: true is loaded, false otherwise
gst.plugin.Plugin load() nothrowLoads 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) nothrowAdds plugin specific data to cache. Passes the ownership of the structure to the plugin.
Constructors
this(void * ptr, Flag!"Take" take)

Fluent builder implementation template for gst.plugin.Plugin

Fluent builder for gst.plugin.Plugin

Methods
Plugin build() nothrowCreate object from builder. Returns: New object