## gstrtspurl

gstrtspurl — handling RTSP urls

## Synopsis

    #include <gst/rtsp/gstrtspurl.h>

    #define             GST_RTSP_DEFAULT_PORT
                        GstRTSPUrl;
    GstRTSPResult       gst_rtsp_url_parse                  (const gchar *urlstr,
                                                             GstRTSPUrl **url);
    GstRTSPUrl*         gst_rtsp_url_copy                   (const GstRTSPUrl *url);
    void                gst_rtsp_url_free                   (GstRTSPUrl *url);
    gchar*              gst_rtsp_url_get_request_uri        (const GstRTSPUrl *url);
    GstRTSPResult       gst_rtsp_url_set_port               (GstRTSPUrl *url,
                                                             guint16 port);
    GstRTSPResult       gst_rtsp_url_get_port               (const GstRTSPUrl *url,
                                                             guint16 *port);

## Description

Provides helper functions to handle RTSP urls.

Last reviewed on 2007-07-25 (0.10.14)

## Details

### GST_RTSP_DEFAULT_PORT

    #define GST_RTSP_DEFAULT_PORT       554

The default RTSP port to connect to.

### GstRTSPUrl

    typedef struct {
      GstRTSPLowerTrans  transports;
      GstRTSPFamily      family;
      gchar             *user;
      gchar             *passwd;
      gchar             *host;
      guint16            port;
      gchar             *abspath;
      gchar             *query;
    } GstRTSPUrl;

This structure contains the result of a parsed RTSP URL

GstRTSPLowerTrans `transports`; | the transports allowed
GstRTSPFamily `family`; | the family
gchar *`user`; | the user
gchar *`passwd`; | the password
gchar *`host`; | the host
guint16 `port`; | the port
gchar *`abspath`; | the absolute path
gchar *`query`; | additional query parameters

### gst_rtsp_url_parse ()

    GstRTSPResult       gst_rtsp_url_parse                  (const gchar *urlstr,
                                                             GstRTSPUrl **url);

Parse the RTSP `urlstr` into a newly allocated GstRTSPUrl. Free after usage with `gst_rtsp_url_free()`.

`urlstr` : | the url string to parse
`url` : | location to hold the result.
Returns : | a GstRTSPResult.

### gst_rtsp_url_copy ()

    GstRTSPUrl*         gst_rtsp_url_copy                   (const GstRTSPUrl *url);

Make a copy of `url`.

`url` : | a GstRTSPUrl
Returns : | a copy of `url`. Free with `gst_rtsp_url_free()` after usage.

Since 0.10.22

### gst_rtsp_url_free ()

    void                gst_rtsp_url_free                   (GstRTSPUrl *url);

Free the memory used by `url`.

`url` : | a GstRTSPUrl

### gst_rtsp_url_get_request_uri ()

    gchar*              gst_rtsp_url_get_request_uri        (const GstRTSPUrl *url);

Get a newly allocated string describing the request URI for `url`.

`url` : | a GstRTSPUrl
Returns : | a string with the request URI. `g_free()` after usage.

### gst_rtsp_url_set_port ()

    GstRTSPResult       gst_rtsp_url_set_port               (GstRTSPUrl *url,
                                                             guint16 port);

Set the port number in `url` to `port`.

`url` : | a GstRTSPUrl
`port` : | the port
Returns : | GST_RTSP_OK.

### gst_rtsp_url_get_port ()

    GstRTSPResult       gst_rtsp_url_get_port               (const GstRTSPUrl *url,
                                                             guint16 *port);

Get the port number of `url`.

`url` : | a GstRTSPUrl
`port` : | location to hold the port
Returns : | GST_RTSP_OK.