The GstElementDetails structure gives a hierarchical type for the element, a human-readable description of the element, as well as author and version data. The entries are:
A long, english, name for the element.
The type of the element, as a hierarchy. The hierarchy is defined by specifying the top level category, followed by a "/", followed by the next level category, etc. The type should be defined according to the guidelines elsewhere in this document. (FIXME: write the guidelines, and give a better reference to them)
A brief description of the purpose of the element.
The name of the author of the element, optionally followed by a contact email address in angle brackets.
For example:
static GstElementDetails my_filter_details = { "An example plugin", "Example/FirstExample", "Shows the basic structure of a plugin", "your name <your.name@your.isp>" };
The element details are registered with the plugin during
the _base_init ()
function, which is part of
the GObject system. The _base_init ()
function
should be set for this GObject in the function where you register
the type with Glib.
static void gst_my_filter_base_init (gpointer klass) { GstElementClass *element_class = GST_ELEMENT_CLASS (klass); static GstElementDetails my_filter_details = { [..] }; [..] gst_element_class_set_details (element_class, &my_filter_details); }