## GstUriHandler GstUriHandler |

## Functions

GQuark | gst_uri_error_quark ()
#define | GST_URI_TYPE_IS_VALID()
gboolean | gst_uri_protocol_is_valid ()
gboolean | gst_uri_protocol_is_supported ()
gboolean | gst_uri_is_valid ()
gboolean | gst_uri_has_protocol ()
gchar * | gst_uri_get_protocol ()
gchar * | gst_uri_get_location ()
gchar * | gst_uri_construct ()
gchar * | gst_filename_to_uri ()
GstElement * | gst_element_make_from_uri ()
GstURIType | gst_uri_handler_get_uri_type ()
const gchar * const * | gst_uri_handler_get_protocols ()
gchar * | gst_uri_handler_get_uri ()
gboolean | gst_uri_handler_set_uri ()

## Types and Values

| GstURIHandler
struct | GstURIHandlerInterface
enum | GstURIType
enum | GstURIError
#define | GST_URI_NO_PORT

## Object Hierarchy

        GInterface
        ╰── GstURIHandler

## Includes

    #include <gst/gst.h>

## Description

## Functions

### gst_uri_error_quark ()

    GQuark
    gst_uri_error_quark (void);

### GST_URI_TYPE_IS_VALID()

    #define GST_URI_TYPE_IS_VALID(type) ((type) == GST_URI_SRC || (type) == GST_URI_SINK)

### gst_uri_protocol_is_valid ()

    gboolean
    gst_uri_protocol_is_valid (const gchar *protocol);

### gst_uri_protocol_is_supported ()

    gboolean
    gst_uri_protocol_is_supported (const GstURIType type,
                                   const gchar *protocol);

### gst_uri_is_valid ()

    gboolean
    gst_uri_is_valid (const gchar *uri);

### gst_uri_has_protocol ()

    gboolean
    gst_uri_has_protocol (const gchar *uri,
                          const gchar *protocol);

### gst_uri_get_protocol ()

    gchar *
    gst_uri_get_protocol (const gchar *uri);

### gst_uri_get_location ()

    gchar *
    gst_uri_get_location (const gchar *uri);

### gst_uri_construct ()

    gchar *
    gst_uri_construct (const gchar *protocol,
                       const gchar *location);

### gst_filename_to_uri ()

    gchar *
    gst_filename_to_uri (const gchar *filename,
                         GError **error);

### gst_element_make_from_uri ()

    GstElement *
    gst_element_make_from_uri (const GstURIType type,
                               const gchar *uri,
                               const gchar *elementname,
                               GError **error);

### gst_uri_handler_get_uri_type ()

    GstURIType
    gst_uri_handler_get_uri_type (GstURIHandler *handler);

### gst_uri_handler_get_protocols ()

    const gchar * const *
    gst_uri_handler_get_protocols (GstURIHandler *handler);

### gst_uri_handler_get_uri ()

    gchar *
    gst_uri_handler_get_uri (GstURIHandler *handler);

### gst_uri_handler_set_uri ()

    gboolean
    gst_uri_handler_set_uri (GstURIHandler *handler,
                             const gchar *uri,
                             GError **error);

## Types and Values

### GstURIHandler

    typedef struct _GstURIHandler GstURIHandler;

### struct GstURIHandlerInterface

    struct GstURIHandlerInterface {
      GTypeInterface parent;

      /* vtable */
      /* querying capabilities */
      GstURIType             (* get_type)           (GType type);
      const gchar * const *  (* get_protocols)      (GType type);

      /* using the interface */
      gchar *                (* get_uri)            (GstURIHandler * handler);
      gboolean               (* set_uri)            (GstURIHandler * handler,
                                                     const gchar   * uri,
                                                     GError       ** error);
    };

### enum GstURIType

#### Members

GST_URI_UNKNOWN |  |
GST_URI_SINK |  |
GST_URI_SRC |  |

### enum GstURIError

#### Members

GST_URI_ERROR_UNSUPPORTED_PROTOCOL |  |
GST_URI_ERROR_BAD_URI |  |
GST_URI_ERROR_BAD_STATE |  |
GST_URI_ERROR_BAD_REFERENCE |  |

### GST_URI_NO_PORT

    #define GST_URI_NO_PORT 0