# GstDiscoverer

The GstDiscoverer is a utility object which allows to get as much information as possible from one or many URIs.

It provides two APIs, allowing usage in blocking or non-blocking mode.

The blocking mode just requires calling gst_discoverer_discover_uri with the URI one wishes to discover.

The non-blocking mode requires a running GMainLoop iterating a GMainContext, where one connects to the various signals, appends the URIs to be processed (through gst_discoverer_discover_uri_async) and then asks for the discovery to begin (through gst_discoverer_start). By default this will use the GLib default main context unless you have set a custom context using g_main_context_push_thread_default.

All the information is returned in a GstDiscovererInfo structure.

## GstDiscoverer

    GObject
        ╰──GstDiscoverer

The GstDiscoverer structure.

### Members

`parent` (GObject) –
No description available

### Class structure

#### GstDiscovererClass

##### Fields

`parentclass` (GObjectClass) –
No description available
`_reserved` (gpointer *) –
No description available

### GstPbutils.DiscovererClass

##### Attributes

`parentclass` (GObject.ObjectClass) –
No description available
`_reserved` ([ Object ]) –
No description available

### GstPbutils.DiscovererClass

##### Attributes

`parentclass` (GObject.ObjectClass) –
No description available
`_reserved` ([ object ]) –
No description available

## GstPbutils.Discoverer

    GObject.Object
        ╰──GstPbutils.Discoverer

The GstPbutils.Discoverer structure.

### Members

`parent` (GObject.Object) –
No description available

## GstPbutils.Discoverer

    GObject.Object
        ╰──GstPbutils.Discoverer

The GstPbutils.Discoverer structure.

### Members

`parent` (GObject.Object) –
No description available

### Constructors

#### gst_discoverer_new

    GstDiscoverer *
    gst_discoverer_new (GstClockTime timeout,
                        GError ** error)

Creates a new GstDiscoverer with the provided timeout.

Parameters:

`timeout` –

timeout per file, in nanoseconds. Allowed are values between one second (#GST_SECOND) and one hour (3600 * GST_SECOND)

`error` –
No description available
Returns ( [transfer: full]) –

The new GstDiscoverer. If an error occurred when creating the discoverer, err will be set accordingly and NULL will be returned. If err is set, the caller must free it when no longer needed using g_error_free.

#### GstPbutils.Discoverer.prototype.new

    function GstPbutils.Discoverer.prototype.new(timeout: Number): {
        // javascript wrapper for 'gst_discoverer_new'
    }

Creates a new GstPbutils.Discoverer with the provided timeout.

Parameters:

`timeout` (Number) –

timeout per file, in nanoseconds. Allowed are values between one second (#GST_SECOND) and one hour (3600 * Gst.SECOND)

Returns (GstPbutils.Discoverer) –

The new GstPbutils.Discoverer. If an error occurred when creating the discoverer, err will be set accordingly and null will be returned. If err is set, the caller must free it when no longer needed using GLib.Error.prototype.free.

#### GstPbutils.Discoverer.new

    @raises(GLib.GError)
    def GstPbutils.Discoverer.new (timeout):
        #python wrapper for 'gst_discoverer_new'

Creates a new GstPbutils.Discoverer with the provided timeout.

Parameters:

`timeout` (int) –

timeout per file, in nanoseconds. Allowed are values between one second (#GST_SECOND) and one hour (3600 * Gst.SECOND)

Returns (GstPbutils.Discoverer) –

The new GstPbutils.Discoverer. If an error occurred when creating the discoverer, err will be set accordingly and None will be returned. If err is set, the caller must free it when no longer needed using GLib.Error.free.

### Methods

#### gst_discoverer_discover_uri

    GstDiscovererInfo *
    gst_discoverer_discover_uri (GstDiscoverer * discoverer,
                                 const gchar * uri,
                                 GError ** error)

Synchronously discovers the given uri.

A copy of uri will be made internally, so the caller can safely g_free afterwards.

Parameters:

`discoverer` –

A GstDiscoverer

`uri` –

The URI to run on.

`error` –
No description available
Returns ( [transfer: full]) –

the result of the scanning. Can be NULL if an error occurred.

#### GstPbutils.Discoverer.prototype.discover_uri

    function GstPbutils.Discoverer.prototype.discover_uri(uri: String): {
        // javascript wrapper for 'gst_discoverer_discover_uri'
    }

Synchronously discovers the given uri.

A copy of uri will be made internally, so the caller can safely GLib.prototype.free afterwards.

Parameters:

`discoverer` (GstPbutils.Discoverer) –

A GstPbutils.Discoverer

`uri` (String) –

The URI to run on.

Returns (GstPbutils.DiscovererInfo) –

the result of the scanning. Can be null if an error occurred.

#### GstPbutils.Discoverer.discover_uri

    @raises(GLib.GError)
    def GstPbutils.Discoverer.discover_uri (self, uri):
        #python wrapper for 'gst_discoverer_discover_uri'

Synchronously discovers the given uri.

A copy of uri will be made internally, so the caller can safely GLib.free afterwards.

Parameters:

`discoverer` (GstPbutils.Discoverer) –

A GstPbutils.Discoverer

`uri` (str) –

The URI to run on.

Returns (GstPbutils.DiscovererInfo) –

the result of the scanning. Can be None if an error occurred.

#### gst_discoverer_discover_uri_async

    gboolean
    gst_discoverer_discover_uri_async (GstDiscoverer * discoverer,
                                       const gchar * uri)

Appends the given uri to the list of URIs to discoverer. The actual discovery of the uri will only take place if gst_discoverer_start has been called.

A copy of uri will be made internally, so the caller can safely g_free afterwards.

Parameters:

`discoverer` –

A GstDiscoverer

`uri` –

the URI to add.

Returns –

TRUE if the uri was successfully appended to the list of pending uris, else FALSE

#### GstPbutils.Discoverer.prototype.discover_uri_async

    function GstPbutils.Discoverer.prototype.discover_uri_async(uri: String): {
        // javascript wrapper for 'gst_discoverer_discover_uri_async'
    }

Appends the given uri to the list of URIs to discoverer. The actual discovery of the uri will only take place if GstPbutils.Discoverer.prototype.start has been called.

A copy of uri will be made internally, so the caller can safely GLib.prototype.free afterwards.

Parameters:

`discoverer` (GstPbutils.Discoverer) –

A GstPbutils.Discoverer

`uri` (String) –

the URI to add.

Returns (Number) –

true if the uri was successfully appended to the list of pending uris, else false

#### GstPbutils.Discoverer.discover_uri_async

    def GstPbutils.Discoverer.discover_uri_async (self, uri):
        #python wrapper for 'gst_discoverer_discover_uri_async'

Appends the given uri to the list of URIs to discoverer. The actual discovery of the uri will only take place if GstPbutils.Discoverer.start has been called.

A copy of uri will be made internally, so the caller can safely GLib.free afterwards.

Parameters:

`discoverer` (GstPbutils.Discoverer) –

A GstPbutils.Discoverer

`uri` (str) –

the URI to add.

Returns (bool) –

True if the uri was successfully appended to the list of pending uris, else False

#### gst_discoverer_start

    gst_discoverer_start (GstDiscoverer * discoverer)

Allow asynchronous discovering of URIs to take place. A GMainLoop must be available for GstDiscoverer to properly work in asynchronous mode.

Parameters:

`discoverer` –

A GstDiscoverer

#### GstPbutils.Discoverer.prototype.start

    function GstPbutils.Discoverer.prototype.start(): {
        // javascript wrapper for 'gst_discoverer_start'
    }

Allow asynchronous discovering of URIs to take place. A GMainLoop (not introspectable) must be available for GstPbutils.Discoverer to properly work in asynchronous mode.

Parameters:

`discoverer` (GstPbutils.Discoverer) –

A GstPbutils.Discoverer

#### GstPbutils.Discoverer.start

    def GstPbutils.Discoverer.start (self):
        #python wrapper for 'gst_discoverer_start'

Allow asynchronous discovering of URIs to take place. A GMainLoop (not introspectable) must be available for GstPbutils.Discoverer to properly work in asynchronous mode.

Parameters:

`discoverer` (GstPbutils.Discoverer) –

A GstPbutils.Discoverer

#### gst_discoverer_stop

    gst_discoverer_stop (GstDiscoverer * discoverer)

Stop the discovery of any pending URIs and clears the list of pending URIS (if any).

Parameters:

`discoverer` –

A GstDiscoverer

#### GstPbutils.Discoverer.prototype.stop

    function GstPbutils.Discoverer.prototype.stop(): {
        // javascript wrapper for 'gst_discoverer_stop'
    }

Stop the discovery of any pending URIs and clears the list of pending URIS (if any).

Parameters:

`discoverer` (GstPbutils.Discoverer) –

A GstPbutils.Discoverer

#### GstPbutils.Discoverer.stop

    def GstPbutils.Discoverer.stop (self):
        #python wrapper for 'gst_discoverer_stop'

Stop the discovery of any pending URIs and clears the list of pending URIS (if any).

Parameters:

`discoverer` (GstPbutils.Discoverer) –

A GstPbutils.Discoverer

### Signals

#### discovered

    discovered_callback (GstDiscoverer * self,
                         GstDiscovererInfo * info,
                         GError * error,
                         gpointer user_data)

Will be emitted in async mode when all information on a URI could be discovered, or an error occurred.

When an error occurs, info might still contain some partial information, depending on the circumstances of the error.

Parameters:

`self` –
No description available
`info` –

the results GstDiscovererInfo

`error` ( [allow-none][type GLib.Error]) –

GError, which will be non-NULL if an error occurred during discovery. You must not free this GError, it will be freed by the discoverer.

`user_data` –
No description available

Flags: Run Last

#### discovered

    function discovered_callback(self: GstPbutils.Discoverer, info: GstPbutils.DiscovererInfo, error: GError (not introspectable), user_data: Object): {
        // javascript callback for the 'discovered' signal
    }

Will be emitted in async mode when all information on a URI could be discovered, or an error occurred.

When an error occurs, info might still contain some partial information, depending on the circumstances of the error.

Parameters:

`self` (GstPbutils.Discoverer) –
No description available
`info` (GstPbutils.DiscovererInfo) –

the results GstPbutils.DiscovererInfo

`error` (GError (not introspectable)) –

GError (not introspectable), which will be non-NULL if an error occurred during discovery. You must not free this GError (not introspectable), it will be freed by the discoverer.

`user_data` (Object) –
No description available

Flags: Run Last

#### discovered

    def discovered_callback (self, info, error, *user_data):
        #python callback for the 'discovered' signal

Will be emitted in async mode when all information on a URI could be discovered, or an error occurred.

When an error occurs, info might still contain some partial information, depending on the circumstances of the error.

Parameters:

`self` (GstPbutils.Discoverer) –
No description available
`info` (GstPbutils.DiscovererInfo) –

the results GstPbutils.DiscovererInfo

`error` (GError (not introspectable)) –

GError (not introspectable), which will be non-NULL if an error occurred during discovery. You must not free this GError (not introspectable), it will be freed by the discoverer.

`user_data` (variadic) –
No description available

Flags: Run Last

#### finished

    finished_callback (GstDiscoverer * self,
                       gpointer user_data)

Will be emitted in async mode when all pending URIs have been processed.

Parameters:

`self` –
No description available
`user_data` –
No description available

Flags: Run Last

#### finished

    function finished_callback(self: GstPbutils.Discoverer, user_data: Object): {
        // javascript callback for the 'finished' signal
    }

Will be emitted in async mode when all pending URIs have been processed.

Parameters:

`self` (GstPbutils.Discoverer) –
No description available
`user_data` (Object) –
No description available

Flags: Run Last

#### finished

    def finished_callback (self, *user_data):
        #python callback for the 'finished' signal

Will be emitted in async mode when all pending URIs have been processed.

Parameters:

`self` (GstPbutils.Discoverer) –
No description available
`user_data` (variadic) –
No description available

Flags: Run Last

#### load-serialized-info

    GstDiscovererInfo *
    load_serialized_info_callback (GstDiscoverer * self,
                                   gchar * uri,
                                   gpointer user_data)

Retrieves information about a URI from and external source of information, like a cache file. This is used by the discoverer to speed up the discovery.

Parameters:

`self` –
No description available
`uri` –

THe URI to load the serialized info for

`user_data` –
No description available
Returns ( [nullable][transfer: full]) –

The GstDiscovererInfo representing uri, or NULL if no information

Flags: Run Last

Since : 1.24

#### load-serialized-info

    function load_serialized_info_callback(self: GstPbutils.Discoverer, uri: String, user_data: Object): {
        // javascript callback for the 'load-serialized-info' signal
    }

Retrieves information about a URI from and external source of information, like a cache file. This is used by the discoverer to speed up the discovery.

Parameters:

`self` (GstPbutils.Discoverer) –
No description available
`uri` (String) –

THe URI to load the serialized info for

`user_data` (Object) –
No description available
Returns (GstPbutils.DiscovererInfo) –

The GstPbutils.DiscovererInfo representing uri, or null if no information

Flags: Run Last

Since : 1.24

#### load-serialized-info

    def load_serialized_info_callback (self, uri, *user_data):
        #python callback for the 'load-serialized-info' signal

Retrieves information about a URI from and external source of information, like a cache file. This is used by the discoverer to speed up the discovery.

Parameters:

`self` (GstPbutils.Discoverer) –
No description available
`uri` (str) –

THe URI to load the serialized info for

`user_data` (variadic) –
No description available
Returns (GstPbutils.DiscovererInfo) –

The GstPbutils.DiscovererInfo representing uri, or None if no information

Flags: Run Last

Since : 1.24

#### source-setup

    source_setup_callback (GstDiscoverer * self,
                           GstElement * source,
                           gpointer user_data)

This signal is emitted after the source element has been created for, so the URI being discovered, so it can be configured by setting additional properties (e.g. set a proxy server for an http source, or set the device and read speed for an audio cd source).

This signal is usually emitted from the context of a GStreamer streaming thread.

Parameters:

`self` –
No description available
`source` –

source element

`user_data` –
No description available

Flags: Run Last

#### source-setup

    function source_setup_callback(self: GstPbutils.Discoverer, source: Gst.Element, user_data: Object): {
        // javascript callback for the 'source-setup' signal
    }

This signal is emitted after the source element has been created for, so the URI being discovered, so it can be configured by setting additional properties (e.g. set a proxy server for an http source, or set the device and read speed for an audio cd source).

This signal is usually emitted from the context of a GStreamer streaming thread.

Parameters:

`self` (GstPbutils.Discoverer) –
No description available
`source` (Gst.Element) –

source element

`user_data` (Object) –
No description available

Flags: Run Last

#### source-setup

    def source_setup_callback (self, source, *user_data):
        #python callback for the 'source-setup' signal

This signal is emitted after the source element has been created for, so the URI being discovered, so it can be configured by setting additional properties (e.g. set a proxy server for an http source, or set the device and read speed for an audio cd source).

This signal is usually emitted from the context of a GStreamer streaming thread.

Parameters:

`self` (GstPbutils.Discoverer) –
No description available
`source` (Gst.Element) –

source element

`user_data` (variadic) –
No description available

Flags: Run Last

#### starting

    starting_callback (GstDiscoverer * self,
                       gpointer user_data)

Will be emitted when the discover starts analyzing the pending URIs

Parameters:

`self` –
No description available
`user_data` –
No description available

Flags: Run Last

#### starting

    function starting_callback(self: GstPbutils.Discoverer, user_data: Object): {
        // javascript callback for the 'starting' signal
    }

Will be emitted when the discover starts analyzing the pending URIs

Parameters:

`self` (GstPbutils.Discoverer) –
No description available
`user_data` (Object) –
No description available

Flags: Run Last

#### starting

    def starting_callback (self, *user_data):
        #python callback for the 'starting' signal

Will be emitted when the discover starts analyzing the pending URIs

Parameters:

`self` (GstPbutils.Discoverer) –
No description available
`user_data` (variadic) –
No description available

Flags: Run Last

### Properties

#### timeout

    “timeout” guint64

The duration (in nanoseconds) after which the discovery of an individual URI will timeout.

If the discovery of a URI times out, the GST_DISCOVERER_TIMEOUT will be set on the result flags.

Flags : Read / Write / Construct

#### timeout

    “timeout” Number

The duration (in nanoseconds) after which the discovery of an individual URI will timeout.

If the discovery of a URI times out, the GstPbutils.DiscovererResult.TIMEOUT will be set on the result flags.

Flags : Read / Write / Construct

#### timeout

    “self.props.timeout” int

The duration (in nanoseconds) after which the discovery of an individual URI will timeout.

If the discovery of a URI times out, the GstPbutils.DiscovererResult.TIMEOUT will be set on the result flags.

Flags : Read / Write / Construct

#### use-cache

    “use-cache” gboolean

Flags : Read / Write / Construct

#### use-cache

    “use-cache” Number

Flags : Read / Write / Construct

#### use_cache

    “self.props.use_cache” bool

Flags : Read / Write / Construct

### Virtual Methods

#### discovered

    discovered (GstDiscoverer * discoverer,
                GstDiscovererInfo * info,
                const GError * err)

Parameters:

`discoverer` –
No description available
`info` –
No description available
`err` –
No description available

#### vfunc_discovered

    function vfunc_discovered(discoverer: GstPbutils.Discoverer, info: GstPbutils.DiscovererInfo, err: GError (not introspectable)): {
        // javascript implementation of the 'discovered' virtual method
    }

Parameters:

`discoverer` (GstPbutils.Discoverer) –
No description available
`info` (GstPbutils.DiscovererInfo) –
No description available
`err` (GError (not introspectable)) –
No description available

#### do_discovered

    def do_discovered (discoverer, info, err):
        #python implementation of the 'discovered' virtual method

Parameters:

`discoverer` (GstPbutils.Discoverer) –
No description available
`info` (GstPbutils.DiscovererInfo) –
No description available
`err` (GError (not introspectable)) –
No description available

#### finished

    finished (GstDiscoverer * discoverer)

Parameters:

`discoverer` –
No description available

#### vfunc_finished

    function vfunc_finished(discoverer: GstPbutils.Discoverer): {
        // javascript implementation of the 'finished' virtual method
    }

Parameters:

`discoverer` (GstPbutils.Discoverer) –
No description available

#### do_finished

    def do_finished (discoverer):
        #python implementation of the 'finished' virtual method

Parameters:

`discoverer` (GstPbutils.Discoverer) –
No description available

#### load_serialize_info

    GstDiscovererInfo *
    load_serialize_info (GstDiscoverer * dc,
                         gchar * uri)

Loads the serialized info from the given uri.

Parameters:

`dc` –

the GstDiscoverer

`uri` –

the uri to load the info from

Returns ( [transfer: full]) –

the GstDiscovererInfo or NULL if it could not be loaded

Since : 1.24

#### vfunc_load_serialize_info

    function vfunc_load_serialize_info(dc: GstPbutils.Discoverer, uri: String): {
        // javascript implementation of the 'load_serialize_info' virtual method
    }

Loads the serialized info from the given uri.

Parameters:

`dc` (GstPbutils.Discoverer) –

the GstPbutils.Discoverer

`uri` (String) –

the uri to load the info from

Returns (GstPbutils.DiscovererInfo) –

the GstPbutils.DiscovererInfo or null if it could not be loaded

Since : 1.24

#### do_load_serialize_info

    def do_load_serialize_info (dc, uri):
        #python implementation of the 'load_serialize_info' virtual method

Loads the serialized info from the given uri.

Parameters:

`dc` (GstPbutils.Discoverer) –

the GstPbutils.Discoverer

`uri` (str) –

the uri to load the info from

Returns (GstPbutils.DiscovererInfo) –

the GstPbutils.DiscovererInfo or None if it could not be loaded

Since : 1.24

#### source_setup

    source_setup (GstDiscoverer * discoverer,
                  GstElement * source)

Parameters:

`discoverer` –
No description available
`source` –
No description available

#### vfunc_source_setup

    function vfunc_source_setup(discoverer: GstPbutils.Discoverer, source: Gst.Element): {
        // javascript implementation of the 'source_setup' virtual method
    }

Parameters:

`discoverer` (GstPbutils.Discoverer) –
No description available
`source` (Gst.Element) –
No description available

#### do_source_setup

    def do_source_setup (discoverer, source):
        #python implementation of the 'source_setup' virtual method

Parameters:

`discoverer` (GstPbutils.Discoverer) –
No description available
`source` (Gst.Element) –
No description available

#### starting

    starting (GstDiscoverer * discoverer)

Parameters:

`discoverer` –
No description available

#### vfunc_starting

    function vfunc_starting(discoverer: GstPbutils.Discoverer): {
        // javascript implementation of the 'starting' virtual method
    }

Parameters:

`discoverer` (GstPbutils.Discoverer) –
No description available

#### do_starting

    def do_starting (discoverer):
        #python implementation of the 'starting' virtual method

Parameters:

`discoverer` (GstPbutils.Discoverer) –
No description available

## GstDiscovererAudioInfo

    GObject
        ╰──GstDiscovererStreamInfo
            ╰──GstDiscovererAudioInfo

GstDiscovererStreamInfo specific to audio streams.

## GstPbutils.DiscovererAudioInfo

    GObject.Object
        ╰──GstPbutils.DiscovererStreamInfo
            ╰──GstPbutils.DiscovererAudioInfo

GstPbutils.DiscovererStreamInfo specific to audio streams.

## GstPbutils.DiscovererAudioInfo

    GObject.Object
        ╰──GstPbutils.DiscovererStreamInfo
            ╰──GstPbutils.DiscovererAudioInfo

GstPbutils.DiscovererStreamInfo specific to audio streams.

### Methods

#### gst_discoverer_audio_info_get_bitrate

    guint
    gst_discoverer_audio_info_get_bitrate (const GstDiscovererAudioInfo * info)

Parameters:

`info` –

a GstDiscovererAudioInfo

Returns –

the average or nominal bitrate of the stream in bits/second.

#### GstPbutils.DiscovererAudioInfo.prototype.get_bitrate

    function GstPbutils.DiscovererAudioInfo.prototype.get_bitrate(): {
        // javascript wrapper for 'gst_discoverer_audio_info_get_bitrate'
    }

Parameters:

`info` (GstPbutils.DiscovererAudioInfo) –

a GstPbutils.DiscovererAudioInfo

Returns (Number) –

the average or nominal bitrate of the stream in bits/second.

#### GstPbutils.DiscovererAudioInfo.get_bitrate

    def GstPbutils.DiscovererAudioInfo.get_bitrate (self):
        #python wrapper for 'gst_discoverer_audio_info_get_bitrate'

Parameters:

`info` (GstPbutils.DiscovererAudioInfo) –

a GstPbutils.DiscovererAudioInfo

Returns (int) –

the average or nominal bitrate of the stream in bits/second.

#### gst_discoverer_audio_info_get_channel_mask

    guint64
    gst_discoverer_audio_info_get_channel_mask (const GstDiscovererAudioInfo * info)

Parameters:

`info` –

a GstDiscovererAudioInfo

Returns –

the channel-mask of the stream, refer to gst_audio_channel_positions_from_mask for more information.

Since : 1.14

#### GstPbutils.DiscovererAudioInfo.prototype.get_channel_mask

    function GstPbutils.DiscovererAudioInfo.prototype.get_channel_mask(): {
        // javascript wrapper for 'gst_discoverer_audio_info_get_channel_mask'
    }

Parameters:

`info` (GstPbutils.DiscovererAudioInfo) –

a GstPbutils.DiscovererAudioInfo

Returns (Number) –

the channel-mask of the stream, refer to GstAudio.prototype.audio_channel_positions_from_mask for more information.

Since : 1.14

#### GstPbutils.DiscovererAudioInfo.get_channel_mask

    def GstPbutils.DiscovererAudioInfo.get_channel_mask (self):
        #python wrapper for 'gst_discoverer_audio_info_get_channel_mask'

Parameters:

`info` (GstPbutils.DiscovererAudioInfo) –

a GstPbutils.DiscovererAudioInfo

Returns (int) –

the channel-mask of the stream, refer to GstAudio.audio_channel_positions_from_mask for more information.

Since : 1.14

#### gst_discoverer_audio_info_get_channels

    guint
    gst_discoverer_audio_info_get_channels (const GstDiscovererAudioInfo * info)

Parameters:

`info` –

a GstDiscovererAudioInfo

Returns –

the number of channels in the stream.

#### GstPbutils.DiscovererAudioInfo.prototype.get_channels

    function GstPbutils.DiscovererAudioInfo.prototype.get_channels(): {
        // javascript wrapper for 'gst_discoverer_audio_info_get_channels'
    }

Parameters:

`info` (GstPbutils.DiscovererAudioInfo) –

a GstPbutils.DiscovererAudioInfo

Returns (Number) –

the number of channels in the stream.

#### GstPbutils.DiscovererAudioInfo.get_channels

    def GstPbutils.DiscovererAudioInfo.get_channels (self):
        #python wrapper for 'gst_discoverer_audio_info_get_channels'

Parameters:

`info` (GstPbutils.DiscovererAudioInfo) –

a GstPbutils.DiscovererAudioInfo

Returns (int) –

the number of channels in the stream.

#### gst_discoverer_audio_info_get_depth

    guint
    gst_discoverer_audio_info_get_depth (const GstDiscovererAudioInfo * info)

Parameters:

`info` –

a GstDiscovererAudioInfo

Returns –

the number of bits used per sample in each channel.

#### GstPbutils.DiscovererAudioInfo.prototype.get_depth

    function GstPbutils.DiscovererAudioInfo.prototype.get_depth(): {
        // javascript wrapper for 'gst_discoverer_audio_info_get_depth'
    }

Parameters:

`info` (GstPbutils.DiscovererAudioInfo) –

a GstPbutils.DiscovererAudioInfo

Returns (Number) –

the number of bits used per sample in each channel.

#### GstPbutils.DiscovererAudioInfo.get_depth

    def GstPbutils.DiscovererAudioInfo.get_depth (self):
        #python wrapper for 'gst_discoverer_audio_info_get_depth'

Parameters:

`info` (GstPbutils.DiscovererAudioInfo) –

a GstPbutils.DiscovererAudioInfo

Returns (int) –

the number of bits used per sample in each channel.

#### gst_discoverer_audio_info_get_language

    const gchar *
    gst_discoverer_audio_info_get_language (const GstDiscovererAudioInfo * info)

Parameters:

`info` –

a GstDiscovererAudioInfo

Returns ( [nullable]) –

the language of the stream, or NULL if unknown.

#### GstPbutils.DiscovererAudioInfo.prototype.get_language

    function GstPbutils.DiscovererAudioInfo.prototype.get_language(): {
        // javascript wrapper for 'gst_discoverer_audio_info_get_language'
    }

Parameters:

`info` (GstPbutils.DiscovererAudioInfo) –

a GstPbutils.DiscovererAudioInfo

Returns (String) –

the language of the stream, or NULL if unknown.

#### GstPbutils.DiscovererAudioInfo.get_language

    def GstPbutils.DiscovererAudioInfo.get_language (self):
        #python wrapper for 'gst_discoverer_audio_info_get_language'

Parameters:

`info` (GstPbutils.DiscovererAudioInfo) –

a GstPbutils.DiscovererAudioInfo

Returns (str) –

the language of the stream, or NULL if unknown.

#### gst_discoverer_audio_info_get_max_bitrate

    guint
    gst_discoverer_audio_info_get_max_bitrate (const GstDiscovererAudioInfo * info)

Parameters:

`info` –

a GstDiscovererAudioInfo

Returns –

the maximum bitrate of the stream in bits/second.

#### GstPbutils.DiscovererAudioInfo.prototype.get_max_bitrate

    function GstPbutils.DiscovererAudioInfo.prototype.get_max_bitrate(): {
        // javascript wrapper for 'gst_discoverer_audio_info_get_max_bitrate'
    }

Parameters:

`info` (GstPbutils.DiscovererAudioInfo) –

a GstPbutils.DiscovererAudioInfo

Returns (Number) –

the maximum bitrate of the stream in bits/second.

#### GstPbutils.DiscovererAudioInfo.get_max_bitrate

    def GstPbutils.DiscovererAudioInfo.get_max_bitrate (self):
        #python wrapper for 'gst_discoverer_audio_info_get_max_bitrate'

Parameters:

`info` (GstPbutils.DiscovererAudioInfo) –

a GstPbutils.DiscovererAudioInfo

Returns (int) –

the maximum bitrate of the stream in bits/second.

#### gst_discoverer_audio_info_get_sample_rate

    guint
    gst_discoverer_audio_info_get_sample_rate (const GstDiscovererAudioInfo * info)

Parameters:

`info` –

a GstDiscovererAudioInfo

Returns –

the sample rate of the stream in Hertz.

#### GstPbutils.DiscovererAudioInfo.prototype.get_sample_rate

    function GstPbutils.DiscovererAudioInfo.prototype.get_sample_rate(): {
        // javascript wrapper for 'gst_discoverer_audio_info_get_sample_rate'
    }

Parameters:

`info` (GstPbutils.DiscovererAudioInfo) –

a GstPbutils.DiscovererAudioInfo

Returns (Number) –

the sample rate of the stream in Hertz.

#### GstPbutils.DiscovererAudioInfo.get_sample_rate

    def GstPbutils.DiscovererAudioInfo.get_sample_rate (self):
        #python wrapper for 'gst_discoverer_audio_info_get_sample_rate'

Parameters:

`info` (GstPbutils.DiscovererAudioInfo) –

a GstPbutils.DiscovererAudioInfo

Returns (int) –

the sample rate of the stream in Hertz.

## GstDiscovererContainerInfo

    GObject
        ╰──GstDiscovererStreamInfo
            ╰──GstDiscovererContainerInfo

GstDiscovererStreamInfo specific to container streams.

## GstPbutils.DiscovererContainerInfo

    GObject.Object
        ╰──GstPbutils.DiscovererStreamInfo
            ╰──GstPbutils.DiscovererContainerInfo

GstPbutils.DiscovererStreamInfo specific to container streams.

## GstPbutils.DiscovererContainerInfo

    GObject.Object
        ╰──GstPbutils.DiscovererStreamInfo
            ╰──GstPbutils.DiscovererContainerInfo

GstPbutils.DiscovererStreamInfo specific to container streams.

### Methods

#### gst_discoverer_container_info_get_streams

    GList *
    gst_discoverer_container_info_get_streams (GstDiscovererContainerInfo * info)

Parameters:

`info` –

a GstDiscovererStreamInfo

Returns ( [transfer: full][element-type GstPbutils.DiscovererStreamInfo]) –

the list of GstDiscovererStreamInfo this container stream offers. Free with gst_discoverer_stream_info_list_free after usage.

#### GstPbutils.DiscovererContainerInfo.prototype.get_streams

    function GstPbutils.DiscovererContainerInfo.prototype.get_streams(): {
        // javascript wrapper for 'gst_discoverer_container_info_get_streams'
    }

Parameters:

`info` (GstPbutils.DiscovererContainerInfo) –

a GstPbutils.DiscovererStreamInfo

Returns ([ GstPbutils.DiscovererStreamInfo ]) –

the list of GstPbutils.DiscovererStreamInfo this container stream offers. Free with GstPbutils.DiscovererStreamInfo.prototype.list_free after usage.

#### GstPbutils.DiscovererContainerInfo.get_streams

    def GstPbutils.DiscovererContainerInfo.get_streams (self):
        #python wrapper for 'gst_discoverer_container_info_get_streams'

Parameters:

`info` (GstPbutils.DiscovererContainerInfo) –

a GstPbutils.DiscovererStreamInfo

Returns ([ GstPbutils.DiscovererStreamInfo ]) –

the list of GstPbutils.DiscovererStreamInfo this container stream offers. Free with GstPbutils.DiscovererStreamInfo.list_free after usage.

#### gst_discoverer_container_info_get_tags

    const GstTagList *
    gst_discoverer_container_info_get_tags (const GstDiscovererContainerInfo * info)

Parameters:

`info` –

a GstDiscovererStreamInfo

Returns ( [transfer: none][nullable]) –

tags specific to the given container. If you wish to use the tags after the life-time of info, you will need to copy them.

Since : 1.20

#### GstPbutils.DiscovererContainerInfo.prototype.get_tags

    function GstPbutils.DiscovererContainerInfo.prototype.get_tags(): {
        // javascript wrapper for 'gst_discoverer_container_info_get_tags'
    }

Parameters:

`info` (GstPbutils.DiscovererContainerInfo) –

a GstPbutils.DiscovererStreamInfo

Returns (Gst.TagList) –

tags specific to the given container. If you wish to use the tags after the life-time of info, you will need to copy them.

Since : 1.20

#### GstPbutils.DiscovererContainerInfo.get_tags

    def GstPbutils.DiscovererContainerInfo.get_tags (self):
        #python wrapper for 'gst_discoverer_container_info_get_tags'

Parameters:

`info` (GstPbutils.DiscovererContainerInfo) –

a GstPbutils.DiscovererStreamInfo

Returns (Gst.TagList) –

tags specific to the given container. If you wish to use the tags after the life-time of info, you will need to copy them.

Since : 1.20

## GstDiscovererInfo

    GObject
        ╰──GstDiscovererInfo

Structure containing the information of a URI analyzed by GstDiscoverer.

## GstPbutils.DiscovererInfo

    GObject.Object
        ╰──GstPbutils.DiscovererInfo

Structure containing the information of a URI analyzed by GstPbutils.Discoverer.

## GstPbutils.DiscovererInfo

    GObject.Object
        ╰──GstPbutils.DiscovererInfo

Structure containing the information of a URI analyzed by GstPbutils.Discoverer.

### Methods

#### gst_discoverer_info_copy

    GstDiscovererInfo *
    gst_discoverer_info_copy (GstDiscovererInfo * ptr)

Parameters:

`ptr` ( [transfer: none]) –

a GstDiscovererInfo

Returns ( [transfer: full]) –

A copy of the GstDiscovererInfo

#### GstPbutils.DiscovererInfo.prototype.copy

    function GstPbutils.DiscovererInfo.prototype.copy(): {
        // javascript wrapper for 'gst_discoverer_info_copy'
    }

Parameters:

`ptr` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

Returns (GstPbutils.DiscovererInfo) –

A copy of the GstPbutils.DiscovererInfo

#### GstPbutils.DiscovererInfo.copy

    def GstPbutils.DiscovererInfo.copy (self):
        #python wrapper for 'gst_discoverer_info_copy'

Parameters:

`ptr` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

Returns (GstPbutils.DiscovererInfo) –

A copy of the GstPbutils.DiscovererInfo

#### gst_discoverer_info_get_audio_streams

    GList *
    gst_discoverer_info_get_audio_streams (GstDiscovererInfo * info)

Finds all the GstDiscovererAudioInfo contained in info

Parameters:

`info` –

a GstDiscovererInfo

Returns ( [transfer: full][element-type GstPbutils.DiscovererAudioInfo]) –

A GList of matching GstDiscovererStreamInfo. The caller should free it with gst_discoverer_stream_info_list_free.

#### GstPbutils.DiscovererInfo.prototype.get_audio_streams

    function GstPbutils.DiscovererInfo.prototype.get_audio_streams(): {
        // javascript wrapper for 'gst_discoverer_info_get_audio_streams'
    }

Finds all the GstPbutils.DiscovererAudioInfo contained in info

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

Returns ([ GstPbutils.DiscovererAudioInfo ]) –

A GLib.List of matching GstPbutils.DiscovererStreamInfo. The caller should free it with GstPbutils.DiscovererStreamInfo.prototype.list_free.

#### GstPbutils.DiscovererInfo.get_audio_streams

    def GstPbutils.DiscovererInfo.get_audio_streams (self):
        #python wrapper for 'gst_discoverer_info_get_audio_streams'

Finds all the GstPbutils.DiscovererAudioInfo contained in info

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

Returns ([ GstPbutils.DiscovererAudioInfo ]) –

A GLib.List of matching GstPbutils.DiscovererStreamInfo. The caller should free it with GstPbutils.DiscovererStreamInfo.list_free.

#### gst_discoverer_info_get_container_streams

    GList *
    gst_discoverer_info_get_container_streams (GstDiscovererInfo * info)

Finds all the GstDiscovererContainerInfo contained in info

Parameters:

`info` –

a GstDiscovererInfo

Returns ( [transfer: full][element-type GstPbutils.DiscovererContainerInfo]) –

A GList of matching GstDiscovererStreamInfo. The caller should free it with gst_discoverer_stream_info_list_free.

#### GstPbutils.DiscovererInfo.prototype.get_container_streams

    function GstPbutils.DiscovererInfo.prototype.get_container_streams(): {
        // javascript wrapper for 'gst_discoverer_info_get_container_streams'
    }

Finds all the GstPbutils.DiscovererContainerInfo contained in info

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

Returns ([ GstPbutils.DiscovererContainerInfo ]) –

A GLib.List of matching GstPbutils.DiscovererStreamInfo. The caller should free it with GstPbutils.DiscovererStreamInfo.prototype.list_free.

#### GstPbutils.DiscovererInfo.get_container_streams

    def GstPbutils.DiscovererInfo.get_container_streams (self):
        #python wrapper for 'gst_discoverer_info_get_container_streams'

Finds all the GstPbutils.DiscovererContainerInfo contained in info

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

Returns ([ GstPbutils.DiscovererContainerInfo ]) –

A GLib.List of matching GstPbutils.DiscovererStreamInfo. The caller should free it with GstPbutils.DiscovererStreamInfo.list_free.

#### gst_discoverer_info_get_duration

    GstClockTime
    gst_discoverer_info_get_duration (const GstDiscovererInfo * info)

Parameters:

`info` –

a GstDiscovererInfo

Returns –

the duration of the URI in GstClockTime (nanoseconds).

#### GstPbutils.DiscovererInfo.prototype.get_duration

    function GstPbutils.DiscovererInfo.prototype.get_duration(): {
        // javascript wrapper for 'gst_discoverer_info_get_duration'
    }

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

Returns (Number) –

the duration of the URI in Number (nanoseconds).

#### GstPbutils.DiscovererInfo.get_duration

    def GstPbutils.DiscovererInfo.get_duration (self):
        #python wrapper for 'gst_discoverer_info_get_duration'

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

Returns (int) –

the duration of the URI in int (nanoseconds).

#### gst_discoverer_info_get_live

    gboolean
    gst_discoverer_info_get_live (const GstDiscovererInfo * info)

Parameters:

`info` –

a GstDiscovererInfo

Returns –

whether the URI is live.

Since : 1.14

#### GstPbutils.DiscovererInfo.prototype.get_live

    function GstPbutils.DiscovererInfo.prototype.get_live(): {
        // javascript wrapper for 'gst_discoverer_info_get_live'
    }

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

Returns (Number) –

whether the URI is live.

Since : 1.14

#### GstPbutils.DiscovererInfo.get_live

    def GstPbutils.DiscovererInfo.get_live (self):
        #python wrapper for 'gst_discoverer_info_get_live'

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

Returns (bool) –

whether the URI is live.

Since : 1.14

#### gst_discoverer_info_get_misc

    const GstStructure *
    gst_discoverer_info_get_misc (const GstDiscovererInfo * info)

Parameters:

`info` –

a GstDiscovererInfo

Returns ( [transfer: none][nullable]) –

Miscellaneous information stored as a GstStructure (for example: information about missing plugins). If you wish to use the GstStructure after the life-time of info, you will need to copy it.

deprecated : This functions is deprecated since version 1.4, use #gst_discoverer_info_get_missing_elements_installer_details

#### GstPbutils.DiscovererInfo.prototype.get_misc

    function GstPbutils.DiscovererInfo.prototype.get_misc(): {
        // javascript wrapper for 'gst_discoverer_info_get_misc'
    }

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

Returns (Gst.Structure) –

Miscellaneous information stored as a Gst.Structure (for example: information about missing plugins). If you wish to use the Gst.Structure after the life-time of info, you will need to copy it.

deprecated : This functions is deprecated since version 1.4, use #gst_discoverer_info_get_missing_elements_installer_details

#### GstPbutils.DiscovererInfo.get_misc

    def GstPbutils.DiscovererInfo.get_misc (self):
        #python wrapper for 'gst_discoverer_info_get_misc'

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

Returns (Gst.Structure) –

Miscellaneous information stored as a Gst.Structure (for example: information about missing plugins). If you wish to use the Gst.Structure after the life-time of info, you will need to copy it.

deprecated : This functions is deprecated since version 1.4, use #gst_discoverer_info_get_missing_elements_installer_details

#### gst_discoverer_info_get_missing_elements_installer_details

    const gchar **
    gst_discoverer_info_get_missing_elements_installer_details (const GstDiscovererInfo * info)

Get the installer details for missing elements

Parameters:

`info` –

a GstDiscovererStreamInfo to retrieve installer detail for the missing element

Returns ( [transfer: none][array zero-terminated=1]) –

An array of strings containing information about how to install the various missing elements for info to be usable. If you wish to use the strings after the life-time of info, you will need to copy them.

Since : 1.4

#### GstPbutils.DiscovererInfo.prototype.get_missing_elements_installer_details

    function GstPbutils.DiscovererInfo.prototype.get_missing_elements_installer_details(): {
        // javascript wrapper for 'gst_discoverer_info_get_missing_elements_installer_details'
    }

Get the installer details for missing elements

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererStreamInfo to retrieve installer detail for the missing element

Returns ([ String ]) –

An array of strings containing information about how to install the various missing elements for info to be usable. If you wish to use the strings after the life-time of info, you will need to copy them.

Since : 1.4

#### GstPbutils.DiscovererInfo.get_missing_elements_installer_details

    def GstPbutils.DiscovererInfo.get_missing_elements_installer_details (self):
        #python wrapper for 'gst_discoverer_info_get_missing_elements_installer_details'

Get the installer details for missing elements

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererStreamInfo to retrieve installer detail for the missing element

Returns ([ str ]) –

An array of strings containing information about how to install the various missing elements for info to be usable. If you wish to use the strings after the life-time of info, you will need to copy them.

Since : 1.4

#### gst_discoverer_info_get_result

    GstDiscovererResult
    gst_discoverer_info_get_result (const GstDiscovererInfo * info)

Parameters:

`info` –

a GstDiscovererInfo

Returns –

the result of the discovery as a GstDiscovererResult.

#### GstPbutils.DiscovererInfo.prototype.get_result

    function GstPbutils.DiscovererInfo.prototype.get_result(): {
        // javascript wrapper for 'gst_discoverer_info_get_result'
    }

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

Returns (GstPbutils.DiscovererResult) –

the result of the discovery as a GstPbutils.DiscovererResult.

#### GstPbutils.DiscovererInfo.get_result

    def GstPbutils.DiscovererInfo.get_result (self):
        #python wrapper for 'gst_discoverer_info_get_result'

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

Returns (GstPbutils.DiscovererResult) –

the result of the discovery as a GstPbutils.DiscovererResult.

#### gst_discoverer_info_get_seekable

    gboolean
    gst_discoverer_info_get_seekable (const GstDiscovererInfo * info)

Parameters:

`info` –

a GstDiscovererInfo

Returns –

the whether the URI is seekable.

#### GstPbutils.DiscovererInfo.prototype.get_seekable

    function GstPbutils.DiscovererInfo.prototype.get_seekable(): {
        // javascript wrapper for 'gst_discoverer_info_get_seekable'
    }

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

Returns (Number) –

the whether the URI is seekable.

#### GstPbutils.DiscovererInfo.get_seekable

    def GstPbutils.DiscovererInfo.get_seekable (self):
        #python wrapper for 'gst_discoverer_info_get_seekable'

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

Returns (bool) –

the whether the URI is seekable.

#### gst_discoverer_info_get_stream_info

    GstDiscovererStreamInfo *
    gst_discoverer_info_get_stream_info (GstDiscovererInfo * info)

Parameters:

`info` –

a GstDiscovererInfo

Returns ( [transfer: full][nullable]) –

the structure (or topology) of the URI as a GstDiscovererStreamInfo. This structure can be traversed to see the original hierarchy. Unref with gst_discoverer_stream_info_unref after usage.

#### GstPbutils.DiscovererInfo.prototype.get_stream_info

    function GstPbutils.DiscovererInfo.prototype.get_stream_info(): {
        // javascript wrapper for 'gst_discoverer_info_get_stream_info'
    }

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

Returns (GstPbutils.DiscovererStreamInfo) –

the structure (or topology) of the URI as a GstPbutils.DiscovererStreamInfo. This structure can be traversed to see the original hierarchy. Unref with gst_discoverer_stream_info_unref (not introspectable) after usage.

#### GstPbutils.DiscovererInfo.get_stream_info

    def GstPbutils.DiscovererInfo.get_stream_info (self):
        #python wrapper for 'gst_discoverer_info_get_stream_info'

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

Returns (GstPbutils.DiscovererStreamInfo) –

the structure (or topology) of the URI as a GstPbutils.DiscovererStreamInfo. This structure can be traversed to see the original hierarchy. Unref with gst_discoverer_stream_info_unref (not introspectable) after usage.

#### gst_discoverer_info_get_stream_list

    GList *
    gst_discoverer_info_get_stream_list (GstDiscovererInfo * info)

Parameters:

`info` –

a GstDiscovererInfo

Returns ( [transfer: full][element-type GstPbutils.DiscovererStreamInfo]) –

the list of all streams contained in the info. Free after usage with gst_discoverer_stream_info_list_free.

#### GstPbutils.DiscovererInfo.prototype.get_stream_list

    function GstPbutils.DiscovererInfo.prototype.get_stream_list(): {
        // javascript wrapper for 'gst_discoverer_info_get_stream_list'
    }

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

Returns ([ GstPbutils.DiscovererStreamInfo ]) –

the list of all streams contained in the info. Free after usage with GstPbutils.DiscovererStreamInfo.prototype.list_free.

#### GstPbutils.DiscovererInfo.get_stream_list

    def GstPbutils.DiscovererInfo.get_stream_list (self):
        #python wrapper for 'gst_discoverer_info_get_stream_list'

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

Returns ([ GstPbutils.DiscovererStreamInfo ]) –

the list of all streams contained in the info. Free after usage with GstPbutils.DiscovererStreamInfo.list_free.

#### gst_discoverer_info_get_streams

    GList *
    gst_discoverer_info_get_streams (GstDiscovererInfo * info,
                                     GType streamtype)

Finds the GstDiscovererStreamInfo contained in info that match the given streamtype.

Parameters:

`info` –

a GstDiscovererInfo

`streamtype` –

a GType derived from GstDiscovererStreamInfo

Returns ( [transfer: full][element-type GstPbutils.DiscovererStreamInfo]) –

A GList of matching GstDiscovererStreamInfo. The caller should free it with gst_discoverer_stream_info_list_free.

#### GstPbutils.DiscovererInfo.prototype.get_streams

    function GstPbutils.DiscovererInfo.prototype.get_streams(streamtype: GObject.Type): {
        // javascript wrapper for 'gst_discoverer_info_get_streams'
    }

Finds the GstPbutils.DiscovererStreamInfo contained in info that match the given streamtype.

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

`streamtype` (GObject.Type) –

a GObject.Type derived from GstPbutils.DiscovererStreamInfo

Returns ([ GstPbutils.DiscovererStreamInfo ]) –

A GLib.List of matching GstPbutils.DiscovererStreamInfo. The caller should free it with GstPbutils.DiscovererStreamInfo.prototype.list_free.

#### GstPbutils.DiscovererInfo.get_streams

    def GstPbutils.DiscovererInfo.get_streams (self, streamtype):
        #python wrapper for 'gst_discoverer_info_get_streams'

Finds the GstPbutils.DiscovererStreamInfo contained in info that match the given streamtype.

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

`streamtype` (GObject.Type) –

a GObject.Type derived from GstPbutils.DiscovererStreamInfo

Returns ([ GstPbutils.DiscovererStreamInfo ]) –

A GLib.List of matching GstPbutils.DiscovererStreamInfo. The caller should free it with GstPbutils.DiscovererStreamInfo.list_free.

#### gst_discoverer_info_get_subtitle_streams

    GList *
    gst_discoverer_info_get_subtitle_streams (GstDiscovererInfo * info)

Finds all the GstDiscovererSubtitleInfo contained in info

Parameters:

`info` –

a GstDiscovererInfo

Returns ( [transfer: full][element-type GstPbutils.DiscovererSubtitleInfo]) –

A GList of matching GstDiscovererStreamInfo. The caller should free it with gst_discoverer_stream_info_list_free.

#### GstPbutils.DiscovererInfo.prototype.get_subtitle_streams

    function GstPbutils.DiscovererInfo.prototype.get_subtitle_streams(): {
        // javascript wrapper for 'gst_discoverer_info_get_subtitle_streams'
    }

Finds all the GstPbutils.DiscovererSubtitleInfo contained in info

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

Returns ([ GstPbutils.DiscovererSubtitleInfo ]) –

A GLib.List of matching GstPbutils.DiscovererStreamInfo. The caller should free it with GstPbutils.DiscovererStreamInfo.prototype.list_free.

#### GstPbutils.DiscovererInfo.get_subtitle_streams

    def GstPbutils.DiscovererInfo.get_subtitle_streams (self):
        #python wrapper for 'gst_discoverer_info_get_subtitle_streams'

Finds all the GstPbutils.DiscovererSubtitleInfo contained in info

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

Returns ([ GstPbutils.DiscovererSubtitleInfo ]) –

A GLib.List of matching GstPbutils.DiscovererStreamInfo. The caller should free it with GstPbutils.DiscovererStreamInfo.list_free.

#### gst_discoverer_info_get_tags

    const GstTagList *
    gst_discoverer_info_get_tags (const GstDiscovererInfo * info)

Parameters:

`info` –

a GstDiscovererInfo

Returns ( [transfer: none][nullable]) –

all tags contained in the URI. If you wish to use the tags after the life-time of info, you will need to copy them.

deprecated : 1.20: Use gst_discoverer_{container,stream}_info_get_tags() instead.

#### GstPbutils.DiscovererInfo.prototype.get_tags

    function GstPbutils.DiscovererInfo.prototype.get_tags(): {
        // javascript wrapper for 'gst_discoverer_info_get_tags'
    }

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

Returns (Gst.TagList) –

all tags contained in the URI. If you wish to use the tags after the life-time of info, you will need to copy them.

deprecated : 1.20: Use gst_discoverer_{container,stream}_info_get_tags() instead.

#### GstPbutils.DiscovererInfo.get_tags

    def GstPbutils.DiscovererInfo.get_tags (self):
        #python wrapper for 'gst_discoverer_info_get_tags'

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

Returns (Gst.TagList) –

all tags contained in the URI. If you wish to use the tags after the life-time of info, you will need to copy them.

deprecated : 1.20: Use gst_discoverer_{container,stream}_info_get_tags() instead.

#### gst_discoverer_info_get_uri

    const gchar *
    gst_discoverer_info_get_uri (const GstDiscovererInfo * info)

Parameters:

`info` –

a GstDiscovererInfo

Returns ( [transfer: none]) –

the URI to which this information corresponds to. Copy it if you wish to use it after the life-time of info.

#### GstPbutils.DiscovererInfo.prototype.get_uri

    function GstPbutils.DiscovererInfo.prototype.get_uri(): {
        // javascript wrapper for 'gst_discoverer_info_get_uri'
    }

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

Returns (String) –

the URI to which this information corresponds to. Copy it if you wish to use it after the life-time of info.

#### GstPbutils.DiscovererInfo.get_uri

    def GstPbutils.DiscovererInfo.get_uri (self):
        #python wrapper for 'gst_discoverer_info_get_uri'

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

Returns (str) –

the URI to which this information corresponds to. Copy it if you wish to use it after the life-time of info.

#### gst_discoverer_info_get_video_streams

    GList *
    gst_discoverer_info_get_video_streams (GstDiscovererInfo * info)

Finds all the GstDiscovererVideoInfo contained in info

Parameters:

`info` –

a GstDiscovererInfo

Returns ( [transfer: full][element-type GstPbutils.DiscovererVideoInfo]) –

A GList of matching GstDiscovererStreamInfo. The caller should free it with gst_discoverer_stream_info_list_free.

#### GstPbutils.DiscovererInfo.prototype.get_video_streams

    function GstPbutils.DiscovererInfo.prototype.get_video_streams(): {
        // javascript wrapper for 'gst_discoverer_info_get_video_streams'
    }

Finds all the GstPbutils.DiscovererVideoInfo contained in info

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

Returns ([ GstPbutils.DiscovererVideoInfo ]) –

A GLib.List of matching GstPbutils.DiscovererStreamInfo. The caller should free it with GstPbutils.DiscovererStreamInfo.prototype.list_free.

#### GstPbutils.DiscovererInfo.get_video_streams

    def GstPbutils.DiscovererInfo.get_video_streams (self):
        #python wrapper for 'gst_discoverer_info_get_video_streams'

Finds all the GstPbutils.DiscovererVideoInfo contained in info

Parameters:

`info` (GstPbutils.DiscovererInfo) –

a GstPbutils.DiscovererInfo

Returns ([ GstPbutils.DiscovererVideoInfo ]) –

A GLib.List of matching GstPbutils.DiscovererStreamInfo. The caller should free it with GstPbutils.DiscovererStreamInfo.list_free.

#### gst_discoverer_info_to_variant

    GVariant *
    gst_discoverer_info_to_variant (GstDiscovererInfo * info,
                                    GstDiscovererSerializeFlags flags)

Serializes info to a GVariant that can be parsed again through gst_discoverer_info_from_variant.

Note that any GstToc (s) that might have been discovered will not be serialized for now.

Parameters:

`info` –

A GstDiscovererInfo

`flags` –

A combination of GstDiscovererSerializeFlags to specify what needs to be serialized.

Returns ( [transfer: full]) –

A newly-allocated GVariant representing info.

Since : 1.6

#### GstPbutils.DiscovererInfo.prototype.to_variant

    function GstPbutils.DiscovererInfo.prototype.to_variant(flags: GstPbutils.DiscovererSerializeFlags): {
        // javascript wrapper for 'gst_discoverer_info_to_variant'
    }

Serializes info to a GLib.Variant that can be parsed again through GstPbutils.DiscovererInfo.prototype.from_variant.

Note that any Gst.Toc (s) that might have been discovered will not be serialized for now.

Parameters:

`info` (GstPbutils.DiscovererInfo) –

A GstPbutils.DiscovererInfo

`flags` (GstPbutils.DiscovererSerializeFlags) –

A combination of GstPbutils.DiscovererSerializeFlags to specify what needs to be serialized.

Returns (GLib.Variant) –

A newly-allocated GLib.Variant representing info.

Since : 1.6

#### GstPbutils.DiscovererInfo.to_variant

    def GstPbutils.DiscovererInfo.to_variant (self, flags):
        #python wrapper for 'gst_discoverer_info_to_variant'

Serializes info to a GLib.Variant that can be parsed again through GstPbutils.DiscovererInfo.from_variant.

Note that any Gst.Toc (s) that might have been discovered will not be serialized for now.

Parameters:

`info` (GstPbutils.DiscovererInfo) –

A GstPbutils.DiscovererInfo

`flags` (GstPbutils.DiscovererSerializeFlags) –

A combination of GstPbutils.DiscovererSerializeFlags to specify what needs to be serialized.

Returns (GLib.Variant) –

A newly-allocated GLib.Variant representing info.

Since : 1.6

### Functions

#### gst_discoverer_info_from_variant

    GstDiscovererInfo *
    gst_discoverer_info_from_variant (GVariant * variant)

Parses a GVariant as produced by gst_discoverer_info_to_variant back to a GstDiscovererInfo.

Parameters:

`variant` –

A GVariant to deserialize into a GstDiscovererInfo.

Returns ( [transfer: full]) –

A newly-allocated GstDiscovererInfo.

Since : 1.6

#### GstPbutils.DiscovererInfo.prototype.from_variant

    function GstPbutils.DiscovererInfo.prototype.from_variant(variant: GLib.Variant): {
        // javascript wrapper for 'gst_discoverer_info_from_variant'
    }

Parses a GLib.Variant as produced by GstPbutils.DiscovererInfo.prototype.to_variant back to a GstPbutils.DiscovererInfo.

Parameters:

`variant` (GLib.Variant) –

A GLib.Variant to deserialize into a GstPbutils.DiscovererInfo.

Returns (GstPbutils.DiscovererInfo) –

A newly-allocated GstPbutils.DiscovererInfo.

Since : 1.6

#### GstPbutils.DiscovererInfo.from_variant

    def GstPbutils.DiscovererInfo.from_variant (variant):
        #python wrapper for 'gst_discoverer_info_from_variant'

Parses a GLib.Variant as produced by GstPbutils.DiscovererInfo.to_variant back to a GstPbutils.DiscovererInfo.

Parameters:

`variant` (GLib.Variant) –

A GLib.Variant to deserialize into a GstPbutils.DiscovererInfo.

Returns (GstPbutils.DiscovererInfo) –

A newly-allocated GstPbutils.DiscovererInfo.

Since : 1.6

## GstDiscovererStreamInfo

    GObject
        ╰──GstDiscovererStreamInfo
            ╰──GstDiscovererAudioInfo
            ╰──GstDiscovererContainerInfo
            ╰──GstDiscovererSubtitleInfo
            ╰──GstDiscovererVideoInfo

Base structure for information concerning a media stream. Depending on the stream type, one can find more media-specific information in GstDiscovererAudioInfo, GstDiscovererVideoInfo, and GstDiscovererContainerInfo.

The GstDiscovererStreamInfo represents the topology of the stream. Siblings can be iterated over with gst_discoverer_stream_info_get_next and gst_discoverer_stream_info_get_previous. Children (sub-streams) of a stream can be accessed using the GstDiscovererContainerInfo API.

As a simple example, if you run GstDiscoverer on an AVI file with one audio and one video stream, you will get a GstDiscovererContainerInfo corresponding to the AVI container, which in turn will have a GstDiscovererAudioInfo sub-stream and a GstDiscovererVideoInfo sub-stream for the audio and video streams respectively.

## GstPbutils.DiscovererStreamInfo

    GObject.Object
        ╰──GstPbutils.DiscovererStreamInfo
            ╰──GstPbutils.DiscovererAudioInfo
            ╰──GstPbutils.DiscovererContainerInfo
            ╰──GstPbutils.DiscovererSubtitleInfo
            ╰──GstPbutils.DiscovererVideoInfo

Base structure for information concerning a media stream. Depending on the stream type, one can find more media-specific information in GstPbutils.DiscovererAudioInfo, GstPbutils.DiscovererVideoInfo, and GstPbutils.DiscovererContainerInfo.

The GstPbutils.DiscovererStreamInfo represents the topology of the stream. Siblings can be iterated over with GstPbutils.DiscovererStreamInfo.prototype.get_next and GstPbutils.DiscovererStreamInfo.prototype.get_previous. Children (sub-streams) of a stream can be accessed using the GstPbutils.DiscovererContainerInfo API.

As a simple example, if you run GstPbutils.Discoverer on an AVI file with one audio and one video stream, you will get a GstPbutils.DiscovererContainerInfo corresponding to the AVI container, which in turn will have a GstPbutils.DiscovererAudioInfo sub-stream and a GstPbutils.DiscovererVideoInfo sub-stream for the audio and video streams respectively.

## GstPbutils.DiscovererStreamInfo

    GObject.Object
        ╰──GstPbutils.DiscovererStreamInfo
            ╰──GstPbutils.DiscovererAudioInfo
            ╰──GstPbutils.DiscovererContainerInfo
            ╰──GstPbutils.DiscovererSubtitleInfo
            ╰──GstPbutils.DiscovererVideoInfo

Base structure for information concerning a media stream. Depending on the stream type, one can find more media-specific information in GstPbutils.DiscovererAudioInfo, GstPbutils.DiscovererVideoInfo, and GstPbutils.DiscovererContainerInfo.

The GstPbutils.DiscovererStreamInfo represents the topology of the stream. Siblings can be iterated over with GstPbutils.DiscovererStreamInfo.get_next and GstPbutils.DiscovererStreamInfo.get_previous. Children (sub-streams) of a stream can be accessed using the GstPbutils.DiscovererContainerInfo API.

As a simple example, if you run GstPbutils.Discoverer on an AVI file with one audio and one video stream, you will get a GstPbutils.DiscovererContainerInfo corresponding to the AVI container, which in turn will have a GstPbutils.DiscovererAudioInfo sub-stream and a GstPbutils.DiscovererVideoInfo sub-stream for the audio and video streams respectively.

### Methods

#### gst_discoverer_stream_info_get_caps

    GstCaps *
    gst_discoverer_stream_info_get_caps (GstDiscovererStreamInfo * info)

Parameters:

`info` –

a GstDiscovererStreamInfo

Returns ( [transfer: full][nullable]) –

the GstCaps of the stream. Unref with gst_caps_unref after usage.

#### GstPbutils.DiscovererStreamInfo.prototype.get_caps

    function GstPbutils.DiscovererStreamInfo.prototype.get_caps(): {
        // javascript wrapper for 'gst_discoverer_stream_info_get_caps'
    }

Parameters:

`info` (GstPbutils.DiscovererStreamInfo) –

a GstPbutils.DiscovererStreamInfo

Returns (Gst.Caps) –

the Gst.Caps of the stream. Unref with gst_caps_unref (not introspectable) after usage.

#### GstPbutils.DiscovererStreamInfo.get_caps

    def GstPbutils.DiscovererStreamInfo.get_caps (self):
        #python wrapper for 'gst_discoverer_stream_info_get_caps'

Parameters:

`info` (GstPbutils.DiscovererStreamInfo) –

a GstPbutils.DiscovererStreamInfo

Returns (Gst.Caps) –

the Gst.Caps of the stream. Unref with gst_caps_unref (not introspectable) after usage.

#### gst_discoverer_stream_info_get_misc

    const GstStructure *
    gst_discoverer_stream_info_get_misc (GstDiscovererStreamInfo * info)

Parameters:

`info` –

a GstDiscovererStreamInfo

Returns ( [transfer: none][nullable]) –

additional information regarding the stream (for example codec version, profile, etc..). If you wish to use the GstStructure after the life-time of info you will need to copy it.

deprecated : This functions is deprecated since version 1.4, use #gst_discoverer_info_get_missing_elements_installer_details

#### GstPbutils.DiscovererStreamInfo.prototype.get_misc

    function GstPbutils.DiscovererStreamInfo.prototype.get_misc(): {
        // javascript wrapper for 'gst_discoverer_stream_info_get_misc'
    }

Parameters:

`info` (GstPbutils.DiscovererStreamInfo) –

a GstPbutils.DiscovererStreamInfo

Returns (Gst.Structure) –

additional information regarding the stream (for example codec version, profile, etc..). If you wish to use the Gst.Structure after the life-time of info you will need to copy it.

deprecated : This functions is deprecated since version 1.4, use #gst_discoverer_info_get_missing_elements_installer_details

#### GstPbutils.DiscovererStreamInfo.get_misc

    def GstPbutils.DiscovererStreamInfo.get_misc (self):
        #python wrapper for 'gst_discoverer_stream_info_get_misc'

Parameters:

`info` (GstPbutils.DiscovererStreamInfo) –

a GstPbutils.DiscovererStreamInfo

Returns (Gst.Structure) –

additional information regarding the stream (for example codec version, profile, etc..). If you wish to use the Gst.Structure after the life-time of info you will need to copy it.

deprecated : This functions is deprecated since version 1.4, use #gst_discoverer_info_get_missing_elements_installer_details

#### gst_discoverer_stream_info_get_next

    GstDiscovererStreamInfo *
    gst_discoverer_stream_info_get_next (GstDiscovererStreamInfo * info)

Parameters:

`info` –

a GstDiscovererStreamInfo

Returns ( [transfer: full][nullable]) –

the next GstDiscovererStreamInfo in a chain. NULL for final streams. Unref with gst_discoverer_stream_info_unref after usage.

#### GstPbutils.DiscovererStreamInfo.prototype.get_next

    function GstPbutils.DiscovererStreamInfo.prototype.get_next(): {
        // javascript wrapper for 'gst_discoverer_stream_info_get_next'
    }

Parameters:

`info` (GstPbutils.DiscovererStreamInfo) –

a GstPbutils.DiscovererStreamInfo

Returns (GstPbutils.DiscovererStreamInfo) –

the next GstPbutils.DiscovererStreamInfo in a chain. null for final streams. Unref with gst_discoverer_stream_info_unref (not introspectable) after usage.

#### GstPbutils.DiscovererStreamInfo.get_next

    def GstPbutils.DiscovererStreamInfo.get_next (self):
        #python wrapper for 'gst_discoverer_stream_info_get_next'

Parameters:

`info` (GstPbutils.DiscovererStreamInfo) –

a GstPbutils.DiscovererStreamInfo

Returns (GstPbutils.DiscovererStreamInfo) –

the next GstPbutils.DiscovererStreamInfo in a chain. None for final streams. Unref with gst_discoverer_stream_info_unref (not introspectable) after usage.

#### gst_discoverer_stream_info_get_previous

    GstDiscovererStreamInfo *
    gst_discoverer_stream_info_get_previous (GstDiscovererStreamInfo * info)

Parameters:

`info` –

a GstDiscovererStreamInfo

Returns ( [transfer: full][nullable]) –

the previous GstDiscovererStreamInfo in a chain. NULL for starting points. Unref with gst_discoverer_stream_info_unref after usage.

#### GstPbutils.DiscovererStreamInfo.prototype.get_previous

    function GstPbutils.DiscovererStreamInfo.prototype.get_previous(): {
        // javascript wrapper for 'gst_discoverer_stream_info_get_previous'
    }

Parameters:

`info` (GstPbutils.DiscovererStreamInfo) –

a GstPbutils.DiscovererStreamInfo

Returns (GstPbutils.DiscovererStreamInfo) –

the previous GstPbutils.DiscovererStreamInfo in a chain. null for starting points. Unref with gst_discoverer_stream_info_unref (not introspectable) after usage.

#### GstPbutils.DiscovererStreamInfo.get_previous

    def GstPbutils.DiscovererStreamInfo.get_previous (self):
        #python wrapper for 'gst_discoverer_stream_info_get_previous'

Parameters:

`info` (GstPbutils.DiscovererStreamInfo) –

a GstPbutils.DiscovererStreamInfo

Returns (GstPbutils.DiscovererStreamInfo) –

the previous GstPbutils.DiscovererStreamInfo in a chain. None for starting points. Unref with gst_discoverer_stream_info_unref (not introspectable) after usage.

#### gst_discoverer_stream_info_get_stream_id

    const gchar *
    gst_discoverer_stream_info_get_stream_id (GstDiscovererStreamInfo * info)

Parameters:

`info` –

a GstDiscovererStreamInfo

Returns ( [transfer: none][nullable]) –

the stream ID of this stream. If you wish to use the stream ID after the life-time of info you will need to copy it.

#### GstPbutils.DiscovererStreamInfo.prototype.get_stream_id

    function GstPbutils.DiscovererStreamInfo.prototype.get_stream_id(): {
        // javascript wrapper for 'gst_discoverer_stream_info_get_stream_id'
    }

Parameters:

`info` (GstPbutils.DiscovererStreamInfo) –

a GstPbutils.DiscovererStreamInfo

Returns (String) –

the stream ID of this stream. If you wish to use the stream ID after the life-time of info you will need to copy it.

#### GstPbutils.DiscovererStreamInfo.get_stream_id

    def GstPbutils.DiscovererStreamInfo.get_stream_id (self):
        #python wrapper for 'gst_discoverer_stream_info_get_stream_id'

Parameters:

`info` (GstPbutils.DiscovererStreamInfo) –

a GstPbutils.DiscovererStreamInfo

Returns (str) –

the stream ID of this stream. If you wish to use the stream ID after the life-time of info you will need to copy it.

#### gst_discoverer_stream_info_get_stream_number

    gint
    gst_discoverer_stream_info_get_stream_number (GstDiscovererStreamInfo * info)

Parameters:

`info` –

a GstDiscovererStreamInfo

Returns –

the stream number, -1 if no index could be determined. This property acts as a unique identifier as a 'int' for the stream.

Since : 1.20

#### GstPbutils.DiscovererStreamInfo.prototype.get_stream_number

    function GstPbutils.DiscovererStreamInfo.prototype.get_stream_number(): {
        // javascript wrapper for 'gst_discoverer_stream_info_get_stream_number'
    }

Parameters:

`info` (GstPbutils.DiscovererStreamInfo) –

a GstPbutils.DiscovererStreamInfo

Returns (Number) –

the stream number, -1 if no index could be determined. This property acts as a unique identifier as a 'int' for the stream.

Since : 1.20

#### GstPbutils.DiscovererStreamInfo.get_stream_number

    def GstPbutils.DiscovererStreamInfo.get_stream_number (self):
        #python wrapper for 'gst_discoverer_stream_info_get_stream_number'

Parameters:

`info` (GstPbutils.DiscovererStreamInfo) –

a GstPbutils.DiscovererStreamInfo

Returns (int) –

the stream number, -1 if no index could be determined. This property acts as a unique identifier as a 'int' for the stream.

Since : 1.20

#### gst_discoverer_stream_info_get_stream_type_nick

    const gchar *
    gst_discoverer_stream_info_get_stream_type_nick (GstDiscovererStreamInfo * info)

Parameters:

`info` –

a GstDiscovererStreamInfo

Returns –

a human readable name for the stream type of the given info (ex : "audio", "container",...).

#### GstPbutils.DiscovererStreamInfo.prototype.get_stream_type_nick

    function GstPbutils.DiscovererStreamInfo.prototype.get_stream_type_nick(): {
        // javascript wrapper for 'gst_discoverer_stream_info_get_stream_type_nick'
    }

Parameters:

`info` (GstPbutils.DiscovererStreamInfo) –

a GstPbutils.DiscovererStreamInfo

Returns (String) –

a human readable name for the stream type of the given info (ex : "audio", "container",...).

#### GstPbutils.DiscovererStreamInfo.get_stream_type_nick

    def GstPbutils.DiscovererStreamInfo.get_stream_type_nick (self):
        #python wrapper for 'gst_discoverer_stream_info_get_stream_type_nick'

Parameters:

`info` (GstPbutils.DiscovererStreamInfo) –

a GstPbutils.DiscovererStreamInfo

Returns (str) –

a human readable name for the stream type of the given info (ex : "audio", "container",...).

#### gst_discoverer_stream_info_get_tags

    const GstTagList *
    gst_discoverer_stream_info_get_tags (GstDiscovererStreamInfo * info)

Parameters:

`info` –

a GstDiscovererStreamInfo

Returns ( [transfer: none][nullable]) –

the tags contained in this stream. If you wish to use the tags after the life-time of info you will need to copy them.

#### GstPbutils.DiscovererStreamInfo.prototype.get_tags

    function GstPbutils.DiscovererStreamInfo.prototype.get_tags(): {
        // javascript wrapper for 'gst_discoverer_stream_info_get_tags'
    }

Parameters:

`info` (GstPbutils.DiscovererStreamInfo) –

a GstPbutils.DiscovererStreamInfo

Returns (Gst.TagList) –

the tags contained in this stream. If you wish to use the tags after the life-time of info you will need to copy them.

#### GstPbutils.DiscovererStreamInfo.get_tags

    def GstPbutils.DiscovererStreamInfo.get_tags (self):
        #python wrapper for 'gst_discoverer_stream_info_get_tags'

Parameters:

`info` (GstPbutils.DiscovererStreamInfo) –

a GstPbutils.DiscovererStreamInfo

Returns (Gst.TagList) –

the tags contained in this stream. If you wish to use the tags after the life-time of info you will need to copy them.

### Functions

#### gst_discoverer_stream_info_list_free

    gst_discoverer_stream_info_list_free (GList * infos)

Decrements the reference count of all contained GstDiscovererStreamInfo and fress the GList.

Parameters:

`infos` ( [element-type GstPbutils.DiscovererStreamInfo]) –

a GList of GstDiscovererStreamInfo

#### GstPbutils.DiscovererStreamInfo.prototype.list_free

    function GstPbutils.DiscovererStreamInfo.prototype.list_free(infos: [ GstPbutils.DiscovererStreamInfo ]): {
        // javascript wrapper for 'gst_discoverer_stream_info_list_free'
    }

Decrements the reference count of all contained GstPbutils.DiscovererStreamInfo and fress the GLib.List.

Parameters:

`infos` ([ GstPbutils.DiscovererStreamInfo ]) –

a GLib.List of GstPbutils.DiscovererStreamInfo

#### GstPbutils.DiscovererStreamInfo.list_free

    def GstPbutils.DiscovererStreamInfo.list_free (infos):
        #python wrapper for 'gst_discoverer_stream_info_list_free'

Decrements the reference count of all contained GstPbutils.DiscovererStreamInfo and fress the GLib.List.

Parameters:

`infos` ([ GstPbutils.DiscovererStreamInfo ]) –

a GLib.List of GstPbutils.DiscovererStreamInfo

## GstDiscovererSubtitleInfo

    GObject
        ╰──GstDiscovererStreamInfo
            ╰──GstDiscovererSubtitleInfo

GstDiscovererStreamInfo specific to subtitle streams (this includes text and image based ones).

## GstPbutils.DiscovererSubtitleInfo

    GObject.Object
        ╰──GstPbutils.DiscovererStreamInfo
            ╰──GstPbutils.DiscovererSubtitleInfo

GstPbutils.DiscovererStreamInfo specific to subtitle streams (this includes text and image based ones).

## GstPbutils.DiscovererSubtitleInfo

    GObject.Object
        ╰──GstPbutils.DiscovererStreamInfo
            ╰──GstPbutils.DiscovererSubtitleInfo

GstPbutils.DiscovererStreamInfo specific to subtitle streams (this includes text and image based ones).

### Methods

#### gst_discoverer_subtitle_info_get_language

    const gchar *
    gst_discoverer_subtitle_info_get_language (const GstDiscovererSubtitleInfo * info)

Parameters:

`info` –

a GstDiscovererSubtitleInfo

Returns ( [nullable]) –

the language of the stream, or NULL if unknown.

#### GstPbutils.DiscovererSubtitleInfo.prototype.get_language

    function GstPbutils.DiscovererSubtitleInfo.prototype.get_language(): {
        // javascript wrapper for 'gst_discoverer_subtitle_info_get_language'
    }

Parameters:

`info` (GstPbutils.DiscovererSubtitleInfo) –

a GstPbutils.DiscovererSubtitleInfo

Returns (String) –

the language of the stream, or NULL if unknown.

#### GstPbutils.DiscovererSubtitleInfo.get_language

    def GstPbutils.DiscovererSubtitleInfo.get_language (self):
        #python wrapper for 'gst_discoverer_subtitle_info_get_language'

Parameters:

`info` (GstPbutils.DiscovererSubtitleInfo) –

a GstPbutils.DiscovererSubtitleInfo

Returns (str) –

the language of the stream, or NULL if unknown.

## GstDiscovererVideoInfo

    GObject
        ╰──GstDiscovererStreamInfo
            ╰──GstDiscovererVideoInfo

GstDiscovererStreamInfo specific to video streams (this includes images).

## GstPbutils.DiscovererVideoInfo

    GObject.Object
        ╰──GstPbutils.DiscovererStreamInfo
            ╰──GstPbutils.DiscovererVideoInfo

GstPbutils.DiscovererStreamInfo specific to video streams (this includes images).

## GstPbutils.DiscovererVideoInfo

    GObject.Object
        ╰──GstPbutils.DiscovererStreamInfo
            ╰──GstPbutils.DiscovererVideoInfo

GstPbutils.DiscovererStreamInfo specific to video streams (this includes images).

### Methods

#### gst_discoverer_video_info_get_bitrate

    guint
    gst_discoverer_video_info_get_bitrate (const GstDiscovererVideoInfo * info)

Parameters:

`info` –

a GstDiscovererVideoInfo

Returns –

the average or nominal bitrate of the video stream in bits/second.

#### GstPbutils.DiscovererVideoInfo.prototype.get_bitrate

    function GstPbutils.DiscovererVideoInfo.prototype.get_bitrate(): {
        // javascript wrapper for 'gst_discoverer_video_info_get_bitrate'
    }

Parameters:

`info` (GstPbutils.DiscovererVideoInfo) –

a GstPbutils.DiscovererVideoInfo

Returns (Number) –

the average or nominal bitrate of the video stream in bits/second.

#### GstPbutils.DiscovererVideoInfo.get_bitrate

    def GstPbutils.DiscovererVideoInfo.get_bitrate (self):
        #python wrapper for 'gst_discoverer_video_info_get_bitrate'

Parameters:

`info` (GstPbutils.DiscovererVideoInfo) –

a GstPbutils.DiscovererVideoInfo

Returns (int) –

the average or nominal bitrate of the video stream in bits/second.

#### gst_discoverer_video_info_get_depth

    guint
    gst_discoverer_video_info_get_depth (const GstDiscovererVideoInfo * info)

Parameters:

`info` –

a GstDiscovererVideoInfo

Returns –

the depth in bits of the video stream.

#### GstPbutils.DiscovererVideoInfo.prototype.get_depth

    function GstPbutils.DiscovererVideoInfo.prototype.get_depth(): {
        // javascript wrapper for 'gst_discoverer_video_info_get_depth'
    }

Parameters:

`info` (GstPbutils.DiscovererVideoInfo) –

a GstPbutils.DiscovererVideoInfo

Returns (Number) –

the depth in bits of the video stream.

#### GstPbutils.DiscovererVideoInfo.get_depth

    def GstPbutils.DiscovererVideoInfo.get_depth (self):
        #python wrapper for 'gst_discoverer_video_info_get_depth'

Parameters:

`info` (GstPbutils.DiscovererVideoInfo) –

a GstPbutils.DiscovererVideoInfo

Returns (int) –

the depth in bits of the video stream.

#### gst_discoverer_video_info_get_framerate_denom

    guint
    gst_discoverer_video_info_get_framerate_denom (const GstDiscovererVideoInfo * info)

Parameters:

`info` –

a GstDiscovererVideoInfo

Returns –

the framerate of the video stream (denominator).

#### GstPbutils.DiscovererVideoInfo.prototype.get_framerate_denom

    function GstPbutils.DiscovererVideoInfo.prototype.get_framerate_denom(): {
        // javascript wrapper for 'gst_discoverer_video_info_get_framerate_denom'
    }

Parameters:

`info` (GstPbutils.DiscovererVideoInfo) –

a GstPbutils.DiscovererVideoInfo

Returns (Number) –

the framerate of the video stream (denominator).

#### GstPbutils.DiscovererVideoInfo.get_framerate_denom

    def GstPbutils.DiscovererVideoInfo.get_framerate_denom (self):
        #python wrapper for 'gst_discoverer_video_info_get_framerate_denom'

Parameters:

`info` (GstPbutils.DiscovererVideoInfo) –

a GstPbutils.DiscovererVideoInfo

Returns (int) –

the framerate of the video stream (denominator).

#### gst_discoverer_video_info_get_framerate_num

    guint
    gst_discoverer_video_info_get_framerate_num (const GstDiscovererVideoInfo * info)

Parameters:

`info` –

a GstDiscovererVideoInfo

Returns –

the framerate of the video stream (numerator).

#### GstPbutils.DiscovererVideoInfo.prototype.get_framerate_num

    function GstPbutils.DiscovererVideoInfo.prototype.get_framerate_num(): {
        // javascript wrapper for 'gst_discoverer_video_info_get_framerate_num'
    }

Parameters:

`info` (GstPbutils.DiscovererVideoInfo) –

a GstPbutils.DiscovererVideoInfo

Returns (Number) –

the framerate of the video stream (numerator).

#### GstPbutils.DiscovererVideoInfo.get_framerate_num

    def GstPbutils.DiscovererVideoInfo.get_framerate_num (self):
        #python wrapper for 'gst_discoverer_video_info_get_framerate_num'

Parameters:

`info` (GstPbutils.DiscovererVideoInfo) –

a GstPbutils.DiscovererVideoInfo

Returns (int) –

the framerate of the video stream (numerator).

#### gst_discoverer_video_info_get_height

    guint
    gst_discoverer_video_info_get_height (const GstDiscovererVideoInfo * info)

Parameters:

`info` –

a GstDiscovererVideoInfo

Returns –

the height of the video stream in pixels.

#### GstPbutils.DiscovererVideoInfo.prototype.get_height

    function GstPbutils.DiscovererVideoInfo.prototype.get_height(): {
        // javascript wrapper for 'gst_discoverer_video_info_get_height'
    }

Parameters:

`info` (GstPbutils.DiscovererVideoInfo) –

a GstPbutils.DiscovererVideoInfo

Returns (Number) –

the height of the video stream in pixels.

#### GstPbutils.DiscovererVideoInfo.get_height

    def GstPbutils.DiscovererVideoInfo.get_height (self):
        #python wrapper for 'gst_discoverer_video_info_get_height'

Parameters:

`info` (GstPbutils.DiscovererVideoInfo) –

a GstPbutils.DiscovererVideoInfo

Returns (int) –

the height of the video stream in pixels.

#### gst_discoverer_video_info_get_max_bitrate

    guint
    gst_discoverer_video_info_get_max_bitrate (const GstDiscovererVideoInfo * info)

Parameters:

`info` –

a GstDiscovererVideoInfo

Returns –

the maximum bitrate of the video stream in bits/second.

#### GstPbutils.DiscovererVideoInfo.prototype.get_max_bitrate

    function GstPbutils.DiscovererVideoInfo.prototype.get_max_bitrate(): {
        // javascript wrapper for 'gst_discoverer_video_info_get_max_bitrate'
    }

Parameters:

`info` (GstPbutils.DiscovererVideoInfo) –

a GstPbutils.DiscovererVideoInfo

Returns (Number) –

the maximum bitrate of the video stream in bits/second.

#### GstPbutils.DiscovererVideoInfo.get_max_bitrate

    def GstPbutils.DiscovererVideoInfo.get_max_bitrate (self):
        #python wrapper for 'gst_discoverer_video_info_get_max_bitrate'

Parameters:

`info` (GstPbutils.DiscovererVideoInfo) –

a GstPbutils.DiscovererVideoInfo

Returns (int) –

the maximum bitrate of the video stream in bits/second.

#### gst_discoverer_video_info_get_par_denom

    guint
    gst_discoverer_video_info_get_par_denom (const GstDiscovererVideoInfo * info)

Parameters:

`info` –

a GstDiscovererVideoInfo

Returns –

the Pixel Aspect Ratio (PAR) of the video stream (denominator).

#### GstPbutils.DiscovererVideoInfo.prototype.get_par_denom

    function GstPbutils.DiscovererVideoInfo.prototype.get_par_denom(): {
        // javascript wrapper for 'gst_discoverer_video_info_get_par_denom'
    }

Parameters:

`info` (GstPbutils.DiscovererVideoInfo) –

a GstPbutils.DiscovererVideoInfo

Returns (Number) –

the Pixel Aspect Ratio (PAR) of the video stream (denominator).

#### GstPbutils.DiscovererVideoInfo.get_par_denom

    def GstPbutils.DiscovererVideoInfo.get_par_denom (self):
        #python wrapper for 'gst_discoverer_video_info_get_par_denom'

Parameters:

`info` (GstPbutils.DiscovererVideoInfo) –

a GstPbutils.DiscovererVideoInfo

Returns (int) –

the Pixel Aspect Ratio (PAR) of the video stream (denominator).

#### gst_discoverer_video_info_get_par_num

    guint
    gst_discoverer_video_info_get_par_num (const GstDiscovererVideoInfo * info)

Parameters:

`info` –

a GstDiscovererVideoInfo

Returns –

the Pixel Aspect Ratio (PAR) of the video stream (numerator).

#### GstPbutils.DiscovererVideoInfo.prototype.get_par_num

    function GstPbutils.DiscovererVideoInfo.prototype.get_par_num(): {
        // javascript wrapper for 'gst_discoverer_video_info_get_par_num'
    }

Parameters:

`info` (GstPbutils.DiscovererVideoInfo) –

a GstPbutils.DiscovererVideoInfo

Returns (Number) –

the Pixel Aspect Ratio (PAR) of the video stream (numerator).

#### GstPbutils.DiscovererVideoInfo.get_par_num

    def GstPbutils.DiscovererVideoInfo.get_par_num (self):
        #python wrapper for 'gst_discoverer_video_info_get_par_num'

Parameters:

`info` (GstPbutils.DiscovererVideoInfo) –

a GstPbutils.DiscovererVideoInfo

Returns (int) –

the Pixel Aspect Ratio (PAR) of the video stream (numerator).

#### gst_discoverer_video_info_get_width

    guint
    gst_discoverer_video_info_get_width (const GstDiscovererVideoInfo * info)

Parameters:

`info` –

a GstDiscovererVideoInfo

Returns –

the width of the video stream in pixels.

#### GstPbutils.DiscovererVideoInfo.prototype.get_width

    function GstPbutils.DiscovererVideoInfo.prototype.get_width(): {
        // javascript wrapper for 'gst_discoverer_video_info_get_width'
    }

Parameters:

`info` (GstPbutils.DiscovererVideoInfo) –

a GstPbutils.DiscovererVideoInfo

Returns (Number) –

the width of the video stream in pixels.

#### GstPbutils.DiscovererVideoInfo.get_width

    def GstPbutils.DiscovererVideoInfo.get_width (self):
        #python wrapper for 'gst_discoverer_video_info_get_width'

Parameters:

`info` (GstPbutils.DiscovererVideoInfo) –

a GstPbutils.DiscovererVideoInfo

Returns (int) –

the width of the video stream in pixels.

#### gst_discoverer_video_info_is_image

    gboolean
    gst_discoverer_video_info_is_image (const GstDiscovererVideoInfo * info)

Parameters:

`info` –

a GstDiscovererVideoInfo

Returns –

TRUE if the video stream corresponds to an image (i.e. only contains one frame).

#### GstPbutils.DiscovererVideoInfo.prototype.is_image

    function GstPbutils.DiscovererVideoInfo.prototype.is_image(): {
        // javascript wrapper for 'gst_discoverer_video_info_is_image'
    }

Parameters:

`info` (GstPbutils.DiscovererVideoInfo) –

a GstPbutils.DiscovererVideoInfo

Returns (Number) –

true if the video stream corresponds to an image (i.e. only contains one frame).

#### GstPbutils.DiscovererVideoInfo.is_image

    def GstPbutils.DiscovererVideoInfo.is_image (self):
        #python wrapper for 'gst_discoverer_video_info_is_image'

Parameters:

`info` (GstPbutils.DiscovererVideoInfo) –

a GstPbutils.DiscovererVideoInfo

Returns (bool) –

True if the video stream corresponds to an image (i.e. only contains one frame).

#### gst_discoverer_video_info_is_interlaced

    gboolean
    gst_discoverer_video_info_is_interlaced (const GstDiscovererVideoInfo * info)

Parameters:

`info` –

a GstDiscovererVideoInfo

Returns –

TRUE if the stream is interlaced, else FALSE.

#### GstPbutils.DiscovererVideoInfo.prototype.is_interlaced

    function GstPbutils.DiscovererVideoInfo.prototype.is_interlaced(): {
        // javascript wrapper for 'gst_discoverer_video_info_is_interlaced'
    }

Parameters:

`info` (GstPbutils.DiscovererVideoInfo) –

a GstPbutils.DiscovererVideoInfo

Returns (Number) –

true if the stream is interlaced, else false.

#### GstPbutils.DiscovererVideoInfo.is_interlaced

    def GstPbutils.DiscovererVideoInfo.is_interlaced (self):
        #python wrapper for 'gst_discoverer_video_info_is_interlaced'

Parameters:

`info` (GstPbutils.DiscovererVideoInfo) –

a GstPbutils.DiscovererVideoInfo

Returns (bool) –

True if the stream is interlaced, else False.

## Enumerations

### GstDiscovererResult

Result values for the discovery process.

##### Members

`GST_DISCOVERER_OK` (0) –

The discovery was successful

`GST_DISCOVERER_URI_INVALID` (1) –

the URI is invalid

`GST_DISCOVERER_ERROR` (2) –

an error happened and the GError is set

`GST_DISCOVERER_TIMEOUT` (3) –

the discovery timed-out

`GST_DISCOVERER_BUSY` (4) –

the discoverer was already discovering a file

`GST_DISCOVERER_MISSING_PLUGINS` (5) –

Some plugins are missing for full discovery

### GstPbutils.DiscovererResult

Result values for the discovery process.

##### Members

`GstPbutils.DiscovererResult.OK` (0) –

The discovery was successful

`GstPbutils.DiscovererResult.URI_INVALID` (1) –

the URI is invalid

`GstPbutils.DiscovererResult.ERROR` (2) –

an error happened and the GError is set

`GstPbutils.DiscovererResult.TIMEOUT` (3) –

the discovery timed-out

`GstPbutils.DiscovererResult.BUSY` (4) –

the discoverer was already discovering a file

`GstPbutils.DiscovererResult.MISSING_PLUGINS` (5) –

Some plugins are missing for full discovery

### GstPbutils.DiscovererResult

Result values for the discovery process.

##### Members

`GstPbutils.DiscovererResult.OK` (0) –

The discovery was successful

`GstPbutils.DiscovererResult.URI_INVALID` (1) –

the URI is invalid

`GstPbutils.DiscovererResult.ERROR` (2) –

an error happened and the GError is set

`GstPbutils.DiscovererResult.TIMEOUT` (3) –

the discovery timed-out

`GstPbutils.DiscovererResult.BUSY` (4) –

the discoverer was already discovering a file

`GstPbutils.DiscovererResult.MISSING_PLUGINS` (5) –

Some plugins are missing for full discovery

### GstDiscovererSerializeFlags

You can use these flags to control what is serialized by gst_discoverer_info_to_variant

##### Members

`GST_DISCOVERER_SERIALIZE_BASIC` (0) –

Serialize only basic information, excluding caps, tags and miscellaneous information

`GST_DISCOVERER_SERIALIZE_CAPS` (1) –

Serialize the caps for each stream

`GST_DISCOVERER_SERIALIZE_TAGS` (2) –

Serialize the tags for each stream

`GST_DISCOVERER_SERIALIZE_MISC` (4) –

Serialize miscellaneous information for each stream

`GST_DISCOVERER_SERIALIZE_ALL` (7) –

Serialize all the available info, including caps, tags and miscellaneous information

Since : 1.6

### GstPbutils.DiscovererSerializeFlags

You can use these flags to control what is serialized by GstPbutils.DiscovererInfo.prototype.to_variant

##### Members

`GstPbutils.DiscovererSerializeFlags.BASIC` (0) –

Serialize only basic information, excluding caps, tags and miscellaneous information

`GstPbutils.DiscovererSerializeFlags.CAPS` (1) –

Serialize the caps for each stream

`GstPbutils.DiscovererSerializeFlags.TAGS` (2) –

Serialize the tags for each stream

`GstPbutils.DiscovererSerializeFlags.MISC` (4) –

Serialize miscellaneous information for each stream

`GstPbutils.DiscovererSerializeFlags.ALL` (7) –

Serialize all the available info, including caps, tags and miscellaneous information

Since : 1.6

### GstPbutils.DiscovererSerializeFlags

You can use these flags to control what is serialized by GstPbutils.DiscovererInfo.to_variant

##### Members

`GstPbutils.DiscovererSerializeFlags.BASIC` (0) –

Serialize only basic information, excluding caps, tags and miscellaneous information

`GstPbutils.DiscovererSerializeFlags.CAPS` (1) –

Serialize the caps for each stream

`GstPbutils.DiscovererSerializeFlags.TAGS` (2) –

Serialize the tags for each stream

`GstPbutils.DiscovererSerializeFlags.MISC` (4) –

Serialize miscellaneous information for each stream

`GstPbutils.DiscovererSerializeFlags.ALL` (7) –

Serialize all the available info, including caps, tags and miscellaneous information

Since : 1.6

## Constants

### GST_TYPE_DISCOVERER

    #define GST_TYPE_DISCOVERER \
      (gst_discoverer_get_type())

### GST_TYPE_DISCOVERER_AUDIO_INFO

    #define GST_TYPE_DISCOVERER_AUDIO_INFO \
      (gst_discoverer_audio_info_get_type ())

### GST_TYPE_DISCOVERER_CONTAINER_INFO

    #define GST_TYPE_DISCOVERER_CONTAINER_INFO \
      (gst_discoverer_container_info_get_type ())

### GST_TYPE_DISCOVERER_INFO

    #define GST_TYPE_DISCOVERER_INFO \
      (gst_discoverer_info_get_type ())

### GST_TYPE_DISCOVERER_STREAM_INFO

    #define GST_TYPE_DISCOVERER_STREAM_INFO \
      (gst_discoverer_stream_info_get_type ())

### GST_TYPE_DISCOVERER_SUBTITLE_INFO

    #define GST_TYPE_DISCOVERER_SUBTITLE_INFO \
      (gst_discoverer_subtitle_info_get_type ())

### GST_TYPE_DISCOVERER_VIDEO_INFO

    #define GST_TYPE_DISCOVERER_VIDEO_INFO \
      (gst_discoverer_video_info_get_type ())

## Aliases

### GstDiscovererAudioInfoClass

    typedef GObjectClass GstDiscovererAudioInfoClass

### GstDiscovererContainerInfoClass

    typedef GObjectClass GstDiscovererContainerInfoClass

### GstDiscovererInfoClass

    typedef GObjectClass GstDiscovererInfoClass

### GstDiscovererStreamInfoClass

    typedef GObjectClass GstDiscovererStreamInfoClass

### GstDiscovererSubtitleInfoClass

    typedef GObjectClass GstDiscovererSubtitleInfoClass

### GstDiscovererVideoInfoClass

    typedef GObjectClass GstDiscovererVideoInfoClass

The results of the search are