| GStreamer Core Reference Manual |
|---|
GstRegistry — Abstract class for managing plugins.
#include <gst/gst.h> enum GstRegistryReturn; enum GstRegistryFlags; struct GstRegistry;gboolean gst_registry_load (GstRegistry *registry);gboolean gst_registry_is_loaded (GstRegistry *registry);gboolean gst_registry_save (GstRegistry *registry);gboolean gst_registry_rebuild (GstRegistry *registry);gboolean gst_registry_unload (GstRegistry *registry); void gst_registry_add_path (GstRegistry *registry, constgchar *path);GList * gst_registry_get_path_list (GstRegistry *registry); void gst_registry_clear_paths (GstRegistry *registry);gboolean gst_registry_add_plugin (GstRegistry *registry, GstPlugin *plugin); void gst_registry_remove_plugin (GstRegistry *registry, GstPlugin *plugin); GstPlugin* gst_registry_find_plugin (GstRegistry *registry, constgchar *name); GstPluginFeature* gst_registry_find_feature (GstRegistry *registry, constgchar *name,GType type); GstRegistryReturn gst_registry_load_plugin (GstRegistry *registry, GstPlugin *plugin); GstRegistryReturn gst_registry_unload_plugin (GstRegistry *registry, GstPlugin *plugin); GstRegistryReturn gst_registry_update_plugin (GstRegistry *registry, GstPlugin *plugin);GList * gst_registry_pool_list (void); void gst_registry_pool_add (GstRegistry *registry,guint priority); void gst_registry_pool_remove (GstRegistry *registry); void gst_registry_pool_add_plugin (GstPlugin *plugin); void gst_registry_pool_load_all (void);GList * gst_registry_pool_plugin_list (void);GList * gst_registry_pool_feature_list (GType type); GstPlugin* gst_registry_pool_find_plugin (constgchar *name); GstPluginFeature* gst_registry_pool_find_feature (constgchar *name,GType type); GstRegistry* gst_registry_pool_get_prefered (GstRegistryFlags flags);
The registry holds the available plugins in the system.
typedef enum {
GST_REGISTRY_OK = (0),
GST_REGISTRY_LOAD_ERROR = (1 << 1),
GST_REGISTRY_SAVE_ERROR = (1 << 2),
GST_REGISTRY_PLUGIN_LOAD_ERROR = (1 << 3),
GST_REGISTRY_PLUGIN_SIGNATURE_ERROR = (1 << 4)
} GstRegistryReturn;
The return value of registry operations
| GST_REGISTRY_OK | The registry reported no error. |
| GST_REGISTRY_LOAD_ERROR | There was a load error |
| GST_REGISTRY_SAVE_ERROR | There was an error saving the registry |
| GST_REGISTRY_PLUGIN_LOAD_ERROR | There was an error loading a plugin |
| GST_REGISTRY_PLUGIN_SIGNATURE_ERROR | There was an error saving a plugin |
typedef enum {
GST_REGISTRY_READABLE = (1 << 1),
GST_REGISTRY_WRITABLE = (1 << 2),
GST_REGISTRY_EXISTS = (1 << 3),
GST_REGISTRY_REMOTE = (1 << 4),
GST_REGISTRY_DELAYED_LOADING = (1 << 5)
} GstRegistryFlags;
Flags for the registry
| GST_REGISTRY_READABLE | The registry can be read |
| GST_REGISTRY_WRITABLE | The registry can be written to |
| GST_REGISTRY_EXISTS | The registry exists |
| GST_REGISTRY_REMOTE | The registry is remote and might be slower |
| GST_REGISTRY_DELAYED_LOADING | The registry will be loaded on demand. |
struct GstRegistry {
GObject object;
gint priority;
GstRegistryFlags flags;
gchar *name;
gchar *details;
gboolean loaded;
GList *plugins;
GList *paths;
gpointer dummy[8];
};
The registry object
gboolean gst_registry_load (GstRegistry *registry);
Load the given registry
| registry : | the registry to load |
| Returns : | TRUE on success. |
gboolean gst_registry_is_loaded (GstRegistry *registry);
Check if the given registry is loaded
| registry : | the registry to check |
| Returns : | TRUE if loaded. |
gboolean gst_registry_save (GstRegistry *registry);
Save the contents of the given registry
| registry : | the registry to save |
| Returns : | TRUE on success |
gboolean gst_registry_rebuild (GstRegistry *registry);
Rebuild the given registry
| registry : | the registry to rebuild |
| Returns : | TRUE on success |
gboolean gst_registry_unload (GstRegistry *registry);
Unload the given registry
| registry : | the registry to unload |
| Returns : | TRUE on success |
void gst_registry_add_path (GstRegistry *registry, constgchar *path);
Add the given path to the registry. The syntax of the path is specific to the registry. If the path has already been added, do nothing.
| registry : | the registry to add the path to |
| path : | the path to add to the registry |
GList * gst_registry_get_path_list (GstRegistry *registry);
Get the list of paths for the given registry.
| registry : | the registry to get the pathlist of |
| Returns : | A Glist of paths as strings. g_list_free after use. |
void gst_registry_clear_paths (GstRegistry *registry);
Clear the paths of the given registry
| registry : | the registry to clear the paths of |
gboolean gst_registry_add_plugin (GstRegistry *registry, GstPlugin *plugin);
Add the plugin to the registry. The plugin-added signal will be emitted.
| registry : | the registry to add the plugin to |
| plugin : | the plugin to add |
| Returns : | TRUE on success. |
void gst_registry_remove_plugin (GstRegistry *registry, GstPlugin *plugin);
Remove the plugin from the registry.
| registry : | the registry to remove the plugin from |
| plugin : | the plugin to remove |
GstPlugin* gst_registry_find_plugin (GstRegistry *registry, constgchar *name);
Find the plugin with the given name in the registry.
| registry : | the registry to search |
| name : | the plugin name to find |
| Returns : | The plugin with the given name or NULL if the plugin was not found. |
GstPluginFeature* gst_registry_find_feature (GstRegistry *registry, constgchar *name,GType type);
Find the pluginfeature with the given name and type in the registry.
| registry : | the registry to search |
| name : | the pluginfeature name to find |
| type : | the pluginfeature type to find |
| Returns : | The pluginfeature with the given name and type or NULL if the plugin was not found. |
GstRegistryReturn gst_registry_load_plugin (GstRegistry *registry, GstPlugin *plugin);
Bring the plugin from the registry into memory.
| registry : | the registry to load the plugin from |
| plugin : | the plugin to load |
| Returns : | a value indicating the result |
GstRegistryReturn gst_registry_unload_plugin (GstRegistry *registry, GstPlugin *plugin);
Unload the plugin from the given registry.
| registry : | the registry to unload the plugin from |
| plugin : | the plugin to unload |
| Returns : | a value indicating the result |
GstRegistryReturn gst_registry_update_plugin (GstRegistry *registry, GstPlugin *plugin);
Update the plugin in the given registry.
| registry : | the registry to update |
| plugin : | the plugin to update |
| Returns : | a value indicating the result |
GList * gst_registry_pool_list (void);
Get a list of all registries in the pool
| Returns : | a Glist of GstRegistries, g_list_free after use. |
void gst_registry_pool_add (GstRegistry *registry,guint priority);
Add the registry to the pool with the given priority.
| registry : | the registry to add |
| priority : | the priority of the registry |
void gst_registry_pool_remove (GstRegistry *registry);
Remove the registry from the pool.
| registry : | the registry to remove |
void gst_registry_pool_add_plugin (GstPlugin *plugin);
Add the plugin to the global pool of plugins.
| plugin : | the plugin to add |
void gst_registry_pool_load_all (void);
Load all the registries in the pool. Registries with the GST_REGISTRY_DELAYED_LOADING will not be loaded.
GList * gst_registry_pool_plugin_list (void);
Get a list of all plugins in the pool.
| Returns : | a GList of plugins, g_list_free after use. |
GList * gst_registry_pool_feature_list (GType type);
Get a list of all pluginfeatures of the given type in the pool.
| type : | the type of the features to list. |
| Returns : | a GList of pluginfeatures, g_list_free after use. |
GstPlugin* gst_registry_pool_find_plugin (constgchar *name);
Get the named plugin from the registry pool
| name : | the name of the plugin to find |
| Returns : | The plugin with the given name or NULL if the plugin was not found. |
GstPluginFeature* gst_registry_pool_find_feature (constgchar *name,GType type);
Get the pluginfeature with the given name and type from the pool of registries.
| name : | the name of the pluginfeature to find |
| type : | the type of the pluginfeature to find |
| Returns : | A pluginfeature with the given name and type or NULL if the feature was not found. |
GstRegistry* gst_registry_pool_get_prefered (GstRegistryFlags flags);
Get the prefered registry with the given flags
| flags : | The flags for the prefered registry |
| Returns : | The registry with the flags. |
| << GstQuery | GstScheduler >> |