uridecodebin

uridecodebin — Autoplug and decode an URI to raw media

Synopsis

struct              GstURIDecodeBin;
enum                GstAutoplugSelectResult;

Object Hierarchy

  GObject
   +----GstObject
         +----GstElement
               +----GstBin
                     +----GstURIDecodeBin

Implemented Interfaces

GstURIDecodeBin implements GstChildProxy.

Properties

  "uri"                      gchar*                : Read / Write
  "connection-speed"         guint                 : Read / Write
  "caps"                     GstCaps*              : Read / Write
  "subtitle-encoding"        gchar*                : Read / Write
  "source"                   GstElement*           : Read
  "buffer-duration"          gint64                : Read / Write
  "buffer-size"              gint                  : Read / Write

Signals

  "autoplug-continue"                              : Run Last
  "autoplug-factories"                             : Run Last
  "autoplug-select"                                : Run Last
  "unknown-type"                                   : Run Last
  "drained"                                        : Run Last

Description

Decodes data from a URI into raw media.

Synopsis

Element Information

plugin

uridecodebin

author

Wim Taymans <wim.taymans@gmail.com>

class

Generic/Bin/Decoder

Element Pads

name

src%d

direction

source

presence

sometimes

details

ANY

Details

struct GstURIDecodeBin

struct GstURIDecodeBin;

uridecodebin element struct


enum GstAutoplugSelectResult

typedef enum {
  GST_AUTOPLUG_SELECT_TRY,
  GST_AUTOPLUG_SELECT_EXPOSE,
  GST_AUTOPLUG_SELECT_SKIP
} GstAutoplugSelectResult;

return values for the autoplug-select signal.

GST_AUTOPLUG_SELECT_TRY

try to autoplug the current factory

GST_AUTOPLUG_SELECT_EXPOSE

expose the pad as a raw stream

GST_AUTOPLUG_SELECT_SKIP

skip the current factory

Property Details

The "uri" property

  "uri"                      gchar*                : Read / Write

URI to decode.

Default value: NULL


The "connection-speed" property

  "connection-speed"         guint                 : Read / Write

Network connection speed in kbps (0 = unknown).

Default value: 0


The "caps" property

  "caps"                     GstCaps*              : Read / Write

The caps on which to stop decoding. (NULL = default).


The "subtitle-encoding" property

  "subtitle-encoding"        gchar*                : Read / Write

Encoding to assume if input subtitles are not in UTF-8 encoding. If not set, the GST_SUBTITLE_ENCODING environment variable will be checked for an encoding to use. If that is not set either, ISO-8859-15 will be assumed.

Default value: NULL


The "source" property

  "source"                   GstElement*           : Read

Source object used.


The "buffer-duration" property

  "buffer-duration"          gint64                : Read / Write

Buffer duration when buffering network streams.

Allowed values: >= -1

Default value: -1


The "buffer-size" property

  "buffer-size"              gint                  : Read / Write

Buffer size when buffering network streams.

Allowed values: >= -1

Default value: -1

Signal Details

The "autoplug-continue" signal

gboolean            user_function                      (GstURIDecodeBin *pad,
                                                        GstPad          *caps,
                                                        GstCaps         *Returns,
                                                        gpointer         user_data)      : Run Last

This signal is emitted whenever uridecodebin finds a new stream. It is emitted before looking for any elements that can handle that stream.

pad :

The GstPad.

caps :

The GstCaps found.

user_data :

user data set when the signal handler was connected.

Returns :

TRUE if you wish uridecodebin to look for elements that can handle the given caps. If FALSE, those caps will be considered as final and the pad will be exposed as such (see 'new-decoded-pad' signal).

The "autoplug-factories" signal

GValueArray*        user_function                      (GstURIDecodeBin *pad,
                                                        GstPad          *caps,
                                                        GstCaps         *Returns,
                                                        gpointer         user_data)      : Run Last

This function is emited when an array of possible factories for caps on pad is needed. Decodebin2 will by default return

pad :

The GstPad.

caps :

The GstCaps found.

user_data :

user data set when the signal handler was connected.

Returns :

a GValueArray* with a list of factories to try. The factories are by default tried in the returned order or based on the index returned by "autoplug-select".

The "autoplug-select" signal

GstAutoplugSelectResultuser_function                      (GstURIDecodeBin   *pad,
                                                        GstPad            *caps,
                                                        GstCaps           *factories,
                                                        GstElementFactory *Returns,
                                                        gpointer           user_data)      : Run Last

This signal is emitted once uridecodebin has found all the possible GstElementFactory that can be used to handle the given caps.

pad :

The GstPad.

caps :

The GstCaps.

factories :

A GValueArray of possible GstElementFactory to use, sorted by rank (higher ranks come first).

user_data :

user data set when the signal handler was connected.

Returns :

A gint indicating what factory index from the factories array that you wish uridecodebin to use for trying to decode the given caps. -1 to stop selection of a factory. The default handler always returns the first possible factory.

The "unknown-type" signal

void                user_function                      (GstURIDecodeBin *pad,
                                                        GstPad          *caps,
                                                        GstCaps         *arg2,
                                                        gpointer         user_data)      : Run Last

This signal is emitted when a pad for which there is no further possible decoding is added to the uridecodebin.

pad :

the new pad containing caps that cannot be resolved to a 'final' stream type.

caps :

the GstCaps of the pad that cannot be resolved.

user_data :

user data set when the signal handler was connected.

The "drained" signal

void                user_function                      (GstURIDecodeBin *arg0,
                                                        gpointer         user_data)      : Run Last

This signal is emitted when the data for the current uri is played.

user_data :

user data set when the signal handler was connected.