# Missing plugins

Functions to create, recognise and parse missing-plugins messages for applications and elements.

Missing-plugin messages are posted on the bus by elements like decodebin or playbin if they can't find an appropriate source element or decoder element. The application can use these messages for two things:

- concise error/problem reporting to the user mentioning what exactly is missing, see gst_missing_plugin_message_get_description

- initiate installation of missing plugins, see gst_missing_plugin_message_get_installer_detail and gst_install_plugins_async

Applications may also create missing-plugin messages themselves to install required elements that are missing, using the install mechanism mentioned above.

## Functions

### gst_is_missing_plugin_message

    gboolean
    gst_is_missing_plugin_message (GstMessage * msg)

Checks whether msg is a missing plugins message.

Parameters:

`msg` –

a GstMessage

Returns –

TRUE if msg is a missing-plugins message, otherwise FALSE.

### GstPbutils.prototype.is_missing_plugin_message

    function GstPbutils.prototype.is_missing_plugin_message(msg: Gst.Message): {
        // javascript wrapper for 'gst_is_missing_plugin_message'
    }

Checks whether msg is a missing plugins message.

Parameters:

`msg` (Gst.Message) –

a Gst.Message

Returns (Number) –

true if msg is a missing-plugins message, otherwise false.

### GstPbutils.is_missing_plugin_message

    def GstPbutils.is_missing_plugin_message (msg):
        #python wrapper for 'gst_is_missing_plugin_message'

Checks whether msg is a missing plugins message.

Parameters:

`msg` (Gst.Message) –

a Gst.Message

Returns (bool) –

True if msg is a missing-plugins message, otherwise False.

### gst_missing_decoder_installer_detail_new

    gchar *
    gst_missing_decoder_installer_detail_new (const GstCaps * decode_caps)

Returns an opaque string containing all the details about the missing element to be passed to an external installer called via gst_install_plugins_async or gst_install_plugins_sync.

This function is mainly for applications that call external plugin installation mechanisms using one of the two above-mentioned functions in the case where the application knows exactly what kind of plugin it is missing.

Parameters:

`decode_caps` –

the (fixed) caps for which a decoder element is needed

Returns –

a newly-allocated detail string, or NULL on error. Free string with g_free when not needed any longer.

### GstPbutils.prototype.missing_decoder_installer_detail_new

    function GstPbutils.prototype.missing_decoder_installer_detail_new(decode_caps: Gst.Caps): {
        // javascript wrapper for 'gst_missing_decoder_installer_detail_new'
    }

Returns an opaque string containing all the details about the missing element to be passed to an external installer called via GstPbutils.prototype.install_plugins_async or GstPbutils.prototype.install_plugins_sync.

This function is mainly for applications that call external plugin installation mechanisms using one of the two above-mentioned functions in the case where the application knows exactly what kind of plugin it is missing.

Parameters:

`decode_caps` (Gst.Caps) –

the (fixed) caps for which a decoder element is needed

Returns (String) –

a newly-allocated detail string, or NULL on error. Free string with GLib.prototype.free when not needed any longer.

### GstPbutils.missing_decoder_installer_detail_new

    def GstPbutils.missing_decoder_installer_detail_new (decode_caps):
        #python wrapper for 'gst_missing_decoder_installer_detail_new'

Returns an opaque string containing all the details about the missing element to be passed to an external installer called via GstPbutils.install_plugins_async or GstPbutils.install_plugins_sync.

This function is mainly for applications that call external plugin installation mechanisms using one of the two above-mentioned functions in the case where the application knows exactly what kind of plugin it is missing.

Parameters:

`decode_caps` (Gst.Caps) –

the (fixed) caps for which a decoder element is needed

Returns (str) –

a newly-allocated detail string, or NULL on error. Free string with GLib.free when not needed any longer.

### gst_missing_decoder_message_new

    GstMessage *
    gst_missing_decoder_message_new (GstElement * element,
                                     const GstCaps * decode_caps)

Creates a missing-plugin message for element to notify the application that a decoder element for a particular set of (fixed) caps is missing. This function is mainly for use in plugins.

Parameters:

`element` –

the GstElement posting the message

`decode_caps` –

the (fixed) caps for which a decoder element is needed

Returns ( [transfer: full]) –

a new GstMessage, or NULL on error

### GstPbutils.prototype.missing_decoder_message_new

    function GstPbutils.prototype.missing_decoder_message_new(element: Gst.Element, decode_caps: Gst.Caps): {
        // javascript wrapper for 'gst_missing_decoder_message_new'
    }

Creates a missing-plugin message for element to notify the application that a decoder element for a particular set of (fixed) caps is missing. This function is mainly for use in plugins.

Parameters:

`element` (Gst.Element) –

the Gst.Element posting the message

`decode_caps` (Gst.Caps) –

the (fixed) caps for which a decoder element is needed

Returns (Gst.Message) –

a new Gst.Message, or NULL on error

### GstPbutils.missing_decoder_message_new

    def GstPbutils.missing_decoder_message_new (element, decode_caps):
        #python wrapper for 'gst_missing_decoder_message_new'

Creates a missing-plugin message for element to notify the application that a decoder element for a particular set of (fixed) caps is missing. This function is mainly for use in plugins.

Parameters:

`element` (Gst.Element) –

the Gst.Element posting the message

`decode_caps` (Gst.Caps) –

the (fixed) caps for which a decoder element is needed

Returns (Gst.Message) –

a new Gst.Message, or NULL on error

### gst_missing_element_installer_detail_new

    gchar *
    gst_missing_element_installer_detail_new (const gchar * factory_name)

Returns an opaque string containing all the details about the missing element to be passed to an external installer called via gst_install_plugins_async or gst_install_plugins_sync.

This function is mainly for applications that call external plugin installation mechanisms using one of the two above-mentioned functions in the case where the application knows exactly what kind of plugin it is missing.

Parameters:

`factory_name` –

the name of the missing element (element factory), e.g. "videoscale" or "cdparanoiasrc"

Returns –

a newly-allocated detail string, or NULL on error. Free string with g_free when not needed any longer.

### GstPbutils.prototype.missing_element_installer_detail_new

    function GstPbutils.prototype.missing_element_installer_detail_new(factory_name: String): {
        // javascript wrapper for 'gst_missing_element_installer_detail_new'
    }

Returns an opaque string containing all the details about the missing element to be passed to an external installer called via GstPbutils.prototype.install_plugins_async or GstPbutils.prototype.install_plugins_sync.

This function is mainly for applications that call external plugin installation mechanisms using one of the two above-mentioned functions in the case where the application knows exactly what kind of plugin it is missing.

Parameters:

`factory_name` (String) –

the name of the missing element (element factory), e.g. "videoscale" or "cdparanoiasrc"

Returns (String) –

a newly-allocated detail string, or NULL on error. Free string with GLib.prototype.free when not needed any longer.

### GstPbutils.missing_element_installer_detail_new

    def GstPbutils.missing_element_installer_detail_new (factory_name):
        #python wrapper for 'gst_missing_element_installer_detail_new'

Returns an opaque string containing all the details about the missing element to be passed to an external installer called via GstPbutils.install_plugins_async or GstPbutils.install_plugins_sync.

This function is mainly for applications that call external plugin installation mechanisms using one of the two above-mentioned functions in the case where the application knows exactly what kind of plugin it is missing.

Parameters:

`factory_name` (str) –

the name of the missing element (element factory), e.g. "videoscale" or "cdparanoiasrc"

Returns (str) –

a newly-allocated detail string, or NULL on error. Free string with GLib.free when not needed any longer.

### gst_missing_element_message_new

    GstMessage *
    gst_missing_element_message_new (GstElement * element,
                                     const gchar * factory_name)

Creates a missing-plugin message for element to notify the application that a certain required element is missing. This function is mainly for use in plugins.

Parameters:

`element` –

the GstElement posting the message

`factory_name` –

the name of the missing element (element factory), e.g. "videoscale" or "cdparanoiasrc"

Returns ( [transfer: full]) –

a new GstMessage, or NULL on error

### GstPbutils.prototype.missing_element_message_new

    function GstPbutils.prototype.missing_element_message_new(element: Gst.Element, factory_name: String): {
        // javascript wrapper for 'gst_missing_element_message_new'
    }

Creates a missing-plugin message for element to notify the application that a certain required element is missing. This function is mainly for use in plugins.

Parameters:

`element` (Gst.Element) –

the Gst.Element posting the message

`factory_name` (String) –

the name of the missing element (element factory), e.g. "videoscale" or "cdparanoiasrc"

Returns (Gst.Message) –

a new Gst.Message, or NULL on error

### GstPbutils.missing_element_message_new

    def GstPbutils.missing_element_message_new (element, factory_name):
        #python wrapper for 'gst_missing_element_message_new'

Creates a missing-plugin message for element to notify the application that a certain required element is missing. This function is mainly for use in plugins.

Parameters:

`element` (Gst.Element) –

the Gst.Element posting the message

`factory_name` (str) –

the name of the missing element (element factory), e.g. "videoscale" or "cdparanoiasrc"

Returns (Gst.Message) –

a new Gst.Message, or NULL on error

### gst_missing_encoder_installer_detail_new

    gchar *
    gst_missing_encoder_installer_detail_new (const GstCaps * encode_caps)

Returns an opaque string containing all the details about the missing element to be passed to an external installer called via gst_install_plugins_async or gst_install_plugins_sync.

This function is mainly for applications that call external plugin installation mechanisms using one of the two above-mentioned functions in the case where the application knows exactly what kind of plugin it is missing.

Parameters:

`encode_caps` –

the (fixed) caps for which an encoder element is needed

Returns –

a newly-allocated detail string, or NULL on error. Free string with g_free when not needed any longer.

### GstPbutils.prototype.missing_encoder_installer_detail_new

    function GstPbutils.prototype.missing_encoder_installer_detail_new(encode_caps: Gst.Caps): {
        // javascript wrapper for 'gst_missing_encoder_installer_detail_new'
    }

Returns an opaque string containing all the details about the missing element to be passed to an external installer called via GstPbutils.prototype.install_plugins_async or GstPbutils.prototype.install_plugins_sync.

This function is mainly for applications that call external plugin installation mechanisms using one of the two above-mentioned functions in the case where the application knows exactly what kind of plugin it is missing.

Parameters:

`encode_caps` (Gst.Caps) –

the (fixed) caps for which an encoder element is needed

Returns (String) –

a newly-allocated detail string, or NULL on error. Free string with GLib.prototype.free when not needed any longer.

### GstPbutils.missing_encoder_installer_detail_new

    def GstPbutils.missing_encoder_installer_detail_new (encode_caps):
        #python wrapper for 'gst_missing_encoder_installer_detail_new'

Returns an opaque string containing all the details about the missing element to be passed to an external installer called via GstPbutils.install_plugins_async or GstPbutils.install_plugins_sync.

This function is mainly for applications that call external plugin installation mechanisms using one of the two above-mentioned functions in the case where the application knows exactly what kind of plugin it is missing.

Parameters:

`encode_caps` (Gst.Caps) –

the (fixed) caps for which an encoder element is needed

Returns (str) –

a newly-allocated detail string, or NULL on error. Free string with GLib.free when not needed any longer.

### gst_missing_encoder_message_new

    GstMessage *
    gst_missing_encoder_message_new (GstElement * element,
                                     const GstCaps * encode_caps)

Creates a missing-plugin message for element to notify the application that an encoder element for a particular set of (fixed) caps is missing. This function is mainly for use in plugins.

Parameters:

`element` –

the GstElement posting the message

`encode_caps` –

the (fixed) caps for which an encoder element is needed

Returns ( [transfer: full]) –

a new GstMessage, or NULL on error

### GstPbutils.prototype.missing_encoder_message_new

    function GstPbutils.prototype.missing_encoder_message_new(element: Gst.Element, encode_caps: Gst.Caps): {
        // javascript wrapper for 'gst_missing_encoder_message_new'
    }

Creates a missing-plugin message for element to notify the application that an encoder element for a particular set of (fixed) caps is missing. This function is mainly for use in plugins.

Parameters:

`element` (Gst.Element) –

the Gst.Element posting the message

`encode_caps` (Gst.Caps) –

the (fixed) caps for which an encoder element is needed

Returns (Gst.Message) –

a new Gst.Message, or NULL on error

### GstPbutils.missing_encoder_message_new

    def GstPbutils.missing_encoder_message_new (element, encode_caps):
        #python wrapper for 'gst_missing_encoder_message_new'

Creates a missing-plugin message for element to notify the application that an encoder element for a particular set of (fixed) caps is missing. This function is mainly for use in plugins.

Parameters:

`element` (Gst.Element) –

the Gst.Element posting the message

`encode_caps` (Gst.Caps) –

the (fixed) caps for which an encoder element is needed

Returns (Gst.Message) –

a new Gst.Message, or NULL on error

### gst_missing_plugin_message_get_description

    gchar *
    gst_missing_plugin_message_get_description (GstMessage * msg)

Returns a localised string describing the missing feature, for use in error dialogs and the like. Should never return NULL unless msg is not a valid missing-plugin message.

This function is mainly for applications that need a human-readable string describing a missing plugin, given a previously collected missing-plugin message

Parameters:

`msg` –

a missing-plugin GstMessage of type GST_MESSAGE_ELEMENT

Returns –

a newly-allocated description string, or NULL on error. Free string with g_free when not needed any longer.

### GstPbutils.prototype.missing_plugin_message_get_description

    function GstPbutils.prototype.missing_plugin_message_get_description(msg: Gst.Message): {
        // javascript wrapper for 'gst_missing_plugin_message_get_description'
    }

Returns a localised string describing the missing feature, for use in error dialogs and the like. Should never return NULL unless msg is not a valid missing-plugin message.

This function is mainly for applications that need a human-readable string describing a missing plugin, given a previously collected missing-plugin message

Parameters:

`msg` (Gst.Message) –

a missing-plugin Gst.Message of type Gst.MessageType.ELEMENT

Returns (String) –

a newly-allocated description string, or NULL on error. Free string with GLib.prototype.free when not needed any longer.

### GstPbutils.missing_plugin_message_get_description

    def GstPbutils.missing_plugin_message_get_description (msg):
        #python wrapper for 'gst_missing_plugin_message_get_description'

Returns a localised string describing the missing feature, for use in error dialogs and the like. Should never return NULL unless msg is not a valid missing-plugin message.

This function is mainly for applications that need a human-readable string describing a missing plugin, given a previously collected missing-plugin message

Parameters:

`msg` (Gst.Message) –

a missing-plugin Gst.Message of type Gst.MessageType.ELEMENT

Returns (str) –

a newly-allocated description string, or NULL on error. Free string with GLib.free when not needed any longer.

### gst_missing_plugin_message_get_installer_detail

    gchar *
    gst_missing_plugin_message_get_installer_detail (GstMessage * msg)

Returns an opaque string containing all the details about the missing element to be passed to an external installer called via gst_install_plugins_async or gst_install_plugins_sync.

This function is mainly for applications that call external plugin installation mechanisms using one of the two above-mentioned functions.

Parameters:

`msg` –

a missing-plugin GstMessage of type GST_MESSAGE_ELEMENT

Returns –

a newly-allocated detail string, or NULL on error. Free string with g_free when not needed any longer.

### GstPbutils.prototype.missing_plugin_message_get_installer_detail

    function GstPbutils.prototype.missing_plugin_message_get_installer_detail(msg: Gst.Message): {
        // javascript wrapper for 'gst_missing_plugin_message_get_installer_detail'
    }

Returns an opaque string containing all the details about the missing element to be passed to an external installer called via GstPbutils.prototype.install_plugins_async or GstPbutils.prototype.install_plugins_sync.

This function is mainly for applications that call external plugin installation mechanisms using one of the two above-mentioned functions.

Parameters:

`msg` (Gst.Message) –

a missing-plugin Gst.Message of type Gst.MessageType.ELEMENT

Returns (String) –

a newly-allocated detail string, or NULL on error. Free string with GLib.prototype.free when not needed any longer.

### GstPbutils.missing_plugin_message_get_installer_detail

    def GstPbutils.missing_plugin_message_get_installer_detail (msg):
        #python wrapper for 'gst_missing_plugin_message_get_installer_detail'

Returns an opaque string containing all the details about the missing element to be passed to an external installer called via GstPbutils.install_plugins_async or GstPbutils.install_plugins_sync.

This function is mainly for applications that call external plugin installation mechanisms using one of the two above-mentioned functions.

Parameters:

`msg` (Gst.Message) –

a missing-plugin Gst.Message of type Gst.MessageType.ELEMENT

Returns (str) –

a newly-allocated detail string, or NULL on error. Free string with GLib.free when not needed any longer.

### gst_missing_uri_sink_installer_detail_new

    gchar *
    gst_missing_uri_sink_installer_detail_new (const gchar * protocol)

Returns an opaque string containing all the details about the missing element to be passed to an external installer called via gst_install_plugins_async or gst_install_plugins_sync.

This function is mainly for applications that call external plugin installation mechanisms using one of the two above-mentioned functions in the case where the application knows exactly what kind of plugin it is missing.

Parameters:

`protocol` –

the URI protocol the missing source needs to implement, e.g. "http" or "mms"

Returns –

a newly-allocated detail string, or NULL on error. Free string with g_free when not needed any longer.

### GstPbutils.prototype.missing_uri_sink_installer_detail_new

    function GstPbutils.prototype.missing_uri_sink_installer_detail_new(protocol: String): {
        // javascript wrapper for 'gst_missing_uri_sink_installer_detail_new'
    }

Returns an opaque string containing all the details about the missing element to be passed to an external installer called via GstPbutils.prototype.install_plugins_async or GstPbutils.prototype.install_plugins_sync.

This function is mainly for applications that call external plugin installation mechanisms using one of the two above-mentioned functions in the case where the application knows exactly what kind of plugin it is missing.

Parameters:

`protocol` (String) –

the URI protocol the missing source needs to implement, e.g. "http" or "mms"

Returns (String) –

a newly-allocated detail string, or NULL on error. Free string with GLib.prototype.free when not needed any longer.

### GstPbutils.missing_uri_sink_installer_detail_new

    def GstPbutils.missing_uri_sink_installer_detail_new (protocol):
        #python wrapper for 'gst_missing_uri_sink_installer_detail_new'

Returns an opaque string containing all the details about the missing element to be passed to an external installer called via GstPbutils.install_plugins_async or GstPbutils.install_plugins_sync.

This function is mainly for applications that call external plugin installation mechanisms using one of the two above-mentioned functions in the case where the application knows exactly what kind of plugin it is missing.

Parameters:

`protocol` (str) –

the URI protocol the missing source needs to implement, e.g. "http" or "mms"

Returns (str) –

a newly-allocated detail string, or NULL on error. Free string with GLib.free when not needed any longer.

### gst_missing_uri_sink_message_new

    GstMessage *
    gst_missing_uri_sink_message_new (GstElement * element,
                                      const gchar * protocol)

Creates a missing-plugin message for element to notify the application that a sink element for a particular URI protocol is missing. This function is mainly for use in plugins.

Parameters:

`element` –

the GstElement posting the message

`protocol` –

the URI protocol the missing sink needs to implement, e.g. "http" or "smb"

Returns ( [transfer: full]) –

a new GstMessage, or NULL on error

### GstPbutils.prototype.missing_uri_sink_message_new

    function GstPbutils.prototype.missing_uri_sink_message_new(element: Gst.Element, protocol: String): {
        // javascript wrapper for 'gst_missing_uri_sink_message_new'
    }

Creates a missing-plugin message for element to notify the application that a sink element for a particular URI protocol is missing. This function is mainly for use in plugins.

Parameters:

`element` (Gst.Element) –

the Gst.Element posting the message

`protocol` (String) –

the URI protocol the missing sink needs to implement, e.g. "http" or "smb"

Returns (Gst.Message) –

a new Gst.Message, or NULL on error

### GstPbutils.missing_uri_sink_message_new

    def GstPbutils.missing_uri_sink_message_new (element, protocol):
        #python wrapper for 'gst_missing_uri_sink_message_new'

Creates a missing-plugin message for element to notify the application that a sink element for a particular URI protocol is missing. This function is mainly for use in plugins.

Parameters:

`element` (Gst.Element) –

the Gst.Element posting the message

`protocol` (str) –

the URI protocol the missing sink needs to implement, e.g. "http" or "smb"

Returns (Gst.Message) –

a new Gst.Message, or NULL on error

### gst_missing_uri_source_installer_detail_new

    gchar *
    gst_missing_uri_source_installer_detail_new (const gchar * protocol)

Returns an opaque string containing all the details about the missing element to be passed to an external installer called via gst_install_plugins_async or gst_install_plugins_sync.

This function is mainly for applications that call external plugin installation mechanisms using one of the two above-mentioned functions in the case where the application knows exactly what kind of plugin it is missing.

Parameters:

`protocol` –

the URI protocol the missing source needs to implement, e.g. "http" or "mms"

Returns –

a newly-allocated detail string, or NULL on error. Free string with g_free when not needed any longer.

### GstPbutils.prototype.missing_uri_source_installer_detail_new

    function GstPbutils.prototype.missing_uri_source_installer_detail_new(protocol: String): {
        // javascript wrapper for 'gst_missing_uri_source_installer_detail_new'
    }

Returns an opaque string containing all the details about the missing element to be passed to an external installer called via GstPbutils.prototype.install_plugins_async or GstPbutils.prototype.install_plugins_sync.

This function is mainly for applications that call external plugin installation mechanisms using one of the two above-mentioned functions in the case where the application knows exactly what kind of plugin it is missing.

Parameters:

`protocol` (String) –

the URI protocol the missing source needs to implement, e.g. "http" or "mms"

Returns (String) –

a newly-allocated detail string, or NULL on error. Free string with GLib.prototype.free when not needed any longer.

### GstPbutils.missing_uri_source_installer_detail_new

    def GstPbutils.missing_uri_source_installer_detail_new (protocol):
        #python wrapper for 'gst_missing_uri_source_installer_detail_new'

Returns an opaque string containing all the details about the missing element to be passed to an external installer called via GstPbutils.install_plugins_async or GstPbutils.install_plugins_sync.

This function is mainly for applications that call external plugin installation mechanisms using one of the two above-mentioned functions in the case where the application knows exactly what kind of plugin it is missing.

Parameters:

`protocol` (str) –

the URI protocol the missing source needs to implement, e.g. "http" or "mms"

Returns (str) –

a newly-allocated detail string, or NULL on error. Free string with GLib.free when not needed any longer.

### gst_missing_uri_source_message_new

    GstMessage *
    gst_missing_uri_source_message_new (GstElement * element,
                                        const gchar * protocol)

Creates a missing-plugin message for element to notify the application that a source element for a particular URI protocol is missing. This function is mainly for use in plugins.

Parameters:

`element` –

the GstElement posting the message

`protocol` –

the URI protocol the missing source needs to implement, e.g. "http" or "mms"

Returns ( [transfer: full]) –

a new GstMessage, or NULL on error

### GstPbutils.prototype.missing_uri_source_message_new

    function GstPbutils.prototype.missing_uri_source_message_new(element: Gst.Element, protocol: String): {
        // javascript wrapper for 'gst_missing_uri_source_message_new'
    }

Creates a missing-plugin message for element to notify the application that a source element for a particular URI protocol is missing. This function is mainly for use in plugins.

Parameters:

`element` (Gst.Element) –

the Gst.Element posting the message

`protocol` (String) –

the URI protocol the missing source needs to implement, e.g. "http" or "mms"

Returns (Gst.Message) –

a new Gst.Message, or NULL on error

### GstPbutils.missing_uri_source_message_new

    def GstPbutils.missing_uri_source_message_new (element, protocol):
        #python wrapper for 'gst_missing_uri_source_message_new'

Creates a missing-plugin message for element to notify the application that a source element for a particular URI protocol is missing. This function is mainly for use in plugins.

Parameters:

`element` (Gst.Element) –

the Gst.Element posting the message

`protocol` (str) –

the URI protocol the missing source needs to implement, e.g. "http" or "mms"

Returns (Gst.Message) –

a new Gst.Message, or NULL on error

The results of the search are