GstRTSPClient: GStreamer RTSP Server Reference Manual

## GstRTSPClient GstRTSPClient |

## Functions

GstRTSPClient * | gst_rtsp_client_new ()
void | gst_rtsp_client_close ()
GstRTSPSessionPool * | gst_rtsp_client_get_session_pool ()
void | gst_rtsp_client_set_session_pool ()
GstRTSPMountPoints * | gst_rtsp_client_get_mount_points ()
void | gst_rtsp_client_set_mount_points ()
GstRTSPAuth * | gst_rtsp_client_get_auth ()
void | gst_rtsp_client_set_auth ()
GstRTSPThreadPool * | gst_rtsp_client_get_thread_pool ()
void | gst_rtsp_client_set_thread_pool ()
GstRTSPConnection * | gst_rtsp_client_get_connection ()
gboolean | gst_rtsp_client_set_connection ()
guint | gst_rtsp_client_attach ()
gboolean | (*GstRTSPClientSendFunc) ()
void | gst_rtsp_client_set_send_func ()
GstRTSPResult | gst_rtsp_client_handle_message ()
GstRTSPResult | gst_rtsp_client_send_message ()
GstRTSPFilterResult | (*GstRTSPClientSessionFilterFunc) ()
GList * | gst_rtsp_client_session_filter ()

## Properties

gboolean | drop-backlog | Read / Write
GstRTSPMountPoints * | mount-points | Read / Write
GstRTSPSessionPool * | session-pool | Read / Write

## Signals

void | announce-request | Run Last
gchar* | check-requirements | Run Last
void | closed | Run Last
void | describe-request | Run Last
void | get-parameter-request | Run Last
void | handle-response | Run Last
void | new-session | Run Last
void | options-request | Run Last
void | pause-request | Run Last
void | play-request | Run Last
void | record-request | Run Last
void | send-message | Run Last
void | set-parameter-request | Run Last
void | setup-request | Run Last
void | teardown-request | Run Last

## Types and Values

struct | GstRTSPClient
struct | GstRTSPClientClass

## Object Hierarchy

        GObject
        ╰── GstRTSPClient

## Description

## Functions

### gst_rtsp_client_new ()

    GstRTSPClient *
    gst_rtsp_client_new (void);

### gst_rtsp_client_close ()

    void
    gst_rtsp_client_close (GstRTSPClient *client);

### gst_rtsp_client_get_session_pool ()

    GstRTSPSessionPool *
    gst_rtsp_client_get_session_pool (GstRTSPClient *client);

### gst_rtsp_client_set_session_pool ()

    void
    gst_rtsp_client_set_session_pool (GstRTSPClient *client,
                                      GstRTSPSessionPool *pool);

### gst_rtsp_client_get_mount_points ()

    GstRTSPMountPoints *
    gst_rtsp_client_get_mount_points (GstRTSPClient *client);

### gst_rtsp_client_set_mount_points ()

    void
    gst_rtsp_client_set_mount_points (GstRTSPClient *client,
                                      GstRTSPMountPoints *mounts);

### gst_rtsp_client_get_auth ()

    GstRTSPAuth *
    gst_rtsp_client_get_auth (GstRTSPClient *client);

### gst_rtsp_client_set_auth ()

    void
    gst_rtsp_client_set_auth (GstRTSPClient *client,
                              GstRTSPAuth *auth);

### gst_rtsp_client_get_thread_pool ()

    GstRTSPThreadPool *
    gst_rtsp_client_get_thread_pool (GstRTSPClient *client);

### gst_rtsp_client_set_thread_pool ()

    void
    gst_rtsp_client_set_thread_pool (GstRTSPClient *client,
                                     GstRTSPThreadPool *pool);

### gst_rtsp_client_get_connection ()

    GstRTSPConnection *
    gst_rtsp_client_get_connection (GstRTSPClient *client);

### gst_rtsp_client_set_connection ()

    gboolean
    gst_rtsp_client_set_connection (GstRTSPClient *client,
                                    GstRTSPConnection *conn);

### gst_rtsp_client_attach ()

    guint
    gst_rtsp_client_attach (GstRTSPClient *client,
                            GMainContext *context);

### GstRTSPClientSendFunc ()

    gboolean
    (*GstRTSPClientSendFunc) (GstRTSPClient *client,
                              GstRTSPMessage *message,
                              gboolean close,
                              gpointer user_data);

### gst_rtsp_client_set_send_func ()

    void
    gst_rtsp_client_set_send_func (GstRTSPClient *client,
                                   GstRTSPClientSendFunc func,
                                   gpointer user_data,
                                   GDestroyNotify notify);

### gst_rtsp_client_handle_message ()

    GstRTSPResult
    gst_rtsp_client_handle_message (GstRTSPClient *client,
                                    GstRTSPMessage *message);

### gst_rtsp_client_send_message ()

    GstRTSPResult
    gst_rtsp_client_send_message (GstRTSPClient *client,
                                  GstRTSPSession *session,
                                  GstRTSPMessage *message);

### GstRTSPClientSessionFilterFunc ()

    GstRTSPFilterResult
    (*GstRTSPClientSessionFilterFunc) (GstRTSPClient *client,
                                       GstRTSPSession *sess,
                                       gpointer user_data);

### gst_rtsp_client_session_filter ()

    GList *
    gst_rtsp_client_session_filter (GstRTSPClient *client,
                                    GstRTSPClientSessionFilterFunc func,
                                    gpointer user_data);

## Types and Values

### struct GstRTSPClient

    struct GstRTSPClient;

### struct GstRTSPClientClass

    struct GstRTSPClientClass {
      GObjectClass  parent_class;

      GstSDPMessage * (*create_sdp) (GstRTSPClient *client, GstRTSPMedia *media);
      gboolean        (*configure_client_media)     (GstRTSPClient * client,
                                                     GstRTSPMedia * media, GstRTSPStream * stream,
                                                     GstRTSPContext * ctx);
      gboolean        (*configure_client_transport) (GstRTSPClient * client,
                                                     GstRTSPContext * ctx,
                                                     GstRTSPTransport * ct);
      GstRTSPResult   (*params_set) (GstRTSPClient *client, GstRTSPContext *ctx);
      GstRTSPResult   (*params_get) (GstRTSPClient *client, GstRTSPContext *ctx);
      gchar *         (*make_path_from_uri) (GstRTSPClient *client, const GstRTSPUrl *uri);

      /* signals */
      void     (*closed)                  (GstRTSPClient *client);
      void     (*new_session)             (GstRTSPClient *client, GstRTSPSession *session);
      void     (*options_request)         (GstRTSPClient *client, GstRTSPContext *ctx);
      void     (*describe_request)        (GstRTSPClient *client, GstRTSPContext *ctx);
      void     (*setup_request)           (GstRTSPClient *client, GstRTSPContext *ctx);
      void     (*play_request)            (GstRTSPClient *client, GstRTSPContext *ctx);
      void     (*pause_request)           (GstRTSPClient *client, GstRTSPContext *ctx);
      void     (*teardown_request)        (GstRTSPClient *client, GstRTSPContext *ctx);
      void     (*set_parameter_request)   (GstRTSPClient *client, GstRTSPContext *ctx);
      void     (*get_parameter_request)   (GstRTSPClient *client, GstRTSPContext *ctx);
      void     (*handle_response)         (GstRTSPClient *client, GstRTSPContext *ctx);

      void     (*tunnel_http_response)    (GstRTSPClient * client, GstRTSPMessage * request,
                                           GstRTSPMessage * response);
      void     (*send_message)            (GstRTSPClient * client, GstRTSPContext *ctx,
                                           GstRTSPMessage * response);

      gboolean (*handle_sdp)              (GstRTSPClient *client, GstRTSPContext *ctx, GstRTSPMedia *media, GstSDPMessage *sdp);

      void     (*announce_request)        (GstRTSPClient *client, GstRTSPContext *ctx);
      void     (*record_request)          (GstRTSPClient *client, GstRTSPContext *ctx);
      gchar*   (*check_requirements)      (GstRTSPClient *client, GstRTSPContext *ctx, gchar ** arr);
    };

## Property Details

### The `“drop-backlog”` property

      “drop-backlog”             gboolean

Drop data when the backlog queue is full.

Flags: Read / Write

Default value: TRUE

### The `“mount-points”` property

      “mount-points”             GstRTSPMountPoints *

The mount points to use for client session.

Flags: Read / Write

### The `“session-pool”` property

      “session-pool”             GstRTSPSessionPool *

The session pool to use for client session.

Flags: Read / Write

## Signal Details

### The `“announce-request”` signal

    void
    user_function (GstRTSPClient  *gstrtspclient,
                   GstRTSPContext *arg1,
                   gpointer        user_data)

Flags: Run Last

### The `“check-requirements”` signal

    gchar*
    user_function (GstRTSPClient  *gstrtspclient,
                   GstRTSPContext *arg1,
                   GStrv           arg2,
                   gpointer        user_data)

Flags: Run Last

### The `“closed”` signal

    void
    user_function (GstRTSPClient *gstrtspclient,
                   gpointer       user_data)

Flags: Run Last

### The `“describe-request”` signal

    void
    user_function (GstRTSPClient  *gstrtspclient,
                   GstRTSPContext *arg1,
                   gpointer        user_data)

Flags: Run Last

### The `“get-parameter-request”` signal

    void
    user_function (GstRTSPClient  *gstrtspclient,
                   GstRTSPContext *arg1,
                   gpointer        user_data)

Flags: Run Last

### The `“handle-response”` signal

    void
    user_function (GstRTSPClient  *gstrtspclient,
                   GstRTSPContext *arg1,
                   gpointer        user_data)

Flags: Run Last

### The `“new-session”` signal

    void
    user_function (GstRTSPClient  *gstrtspclient,
                   GstRTSPSession *arg1,
                   gpointer        user_data)

Flags: Run Last

### The `“options-request”` signal

    void
    user_function (GstRTSPClient  *gstrtspclient,
                   GstRTSPContext *arg1,
                   gpointer        user_data)

Flags: Run Last

### The `“pause-request”` signal

    void
    user_function (GstRTSPClient  *gstrtspclient,
                   GstRTSPContext *arg1,
                   gpointer        user_data)

Flags: Run Last

### The `“play-request”` signal

    void
    user_function (GstRTSPClient  *gstrtspclient,
                   GstRTSPContext *arg1,
                   gpointer        user_data)

Flags: Run Last

### The `“record-request”` signal

    void
    user_function (GstRTSPClient  *gstrtspclient,
                   GstRTSPContext *arg1,
                   gpointer        user_data)

Flags: Run Last

### The `“send-message”` signal

    void
    user_function (GstRTSPClient  *gstrtspclient,
                   GstRTSPContext *arg1,
                   gpointer        arg2,
                   gpointer        user_data)

Flags: Run Last

### The `“set-parameter-request”` signal

    void
    user_function (GstRTSPClient  *gstrtspclient,
                   GstRTSPContext *arg1,
                   gpointer        user_data)

Flags: Run Last

### The `“setup-request”` signal

    void
    user_function (GstRTSPClient  *gstrtspclient,
                   GstRTSPContext *arg1,
                   gpointer        user_data)

Flags: Run Last

### The `“teardown-request”` signal

    void
    user_function (GstRTSPClient  *gstrtspclient,
                   GstRTSPContext *arg1,
                   gpointer        user_data)

Flags: Run Last