GstRTSPSessionPool: GStreamer RTSP Server Reference Manual

## GstRTSPSessionPool GstRTSPSessionPool |

## Functions

GstRTSPSessionPool * | gst_rtsp_session_pool_new ()
guint | gst_rtsp_session_pool_get_max_sessions ()
void | gst_rtsp_session_pool_set_max_sessions ()
guint | gst_rtsp_session_pool_get_n_sessions ()
GstRTSPSession * | gst_rtsp_session_pool_create ()
GstRTSPSession * | gst_rtsp_session_pool_find ()
gboolean | gst_rtsp_session_pool_remove ()
guint | gst_rtsp_session_pool_cleanup ()
gboolean | (*GstRTSPSessionPoolFunc) ()
GSource * | gst_rtsp_session_pool_create_watch ()
GstRTSPFilterResult | (*GstRTSPSessionPoolFilterFunc) ()
GList * | gst_rtsp_session_pool_filter ()

## Properties

guint | max-sessions | Read / Write

## Signals

void | session-removed | Run Last

## Types and Values

struct | GstRTSPSessionPool
struct | GstRTSPSessionPoolClass

## Object Hierarchy

        GObject
        ╰── GstRTSPSessionPool

## Description

## Functions

### gst_rtsp_session_pool_new ()

    GstRTSPSessionPool *
    gst_rtsp_session_pool_new (void);

### gst_rtsp_session_pool_get_max_sessions ()

    guint
    gst_rtsp_session_pool_get_max_sessions
                                   (GstRTSPSessionPool *pool);

### gst_rtsp_session_pool_set_max_sessions ()

    void
    gst_rtsp_session_pool_set_max_sessions
                                   (GstRTSPSessionPool *pool,
                                    guint max);

### gst_rtsp_session_pool_get_n_sessions ()

    guint
    gst_rtsp_session_pool_get_n_sessions (GstRTSPSessionPool *pool);

### gst_rtsp_session_pool_create ()

    GstRTSPSession *
    gst_rtsp_session_pool_create (GstRTSPSessionPool *pool);

### gst_rtsp_session_pool_find ()

    GstRTSPSession *
    gst_rtsp_session_pool_find (GstRTSPSessionPool *pool,
                                const gchar *sessionid);

### gst_rtsp_session_pool_remove ()

    gboolean
    gst_rtsp_session_pool_remove (GstRTSPSessionPool *pool,
                                  GstRTSPSession *sess);

### gst_rtsp_session_pool_cleanup ()

    guint
    gst_rtsp_session_pool_cleanup (GstRTSPSessionPool *pool);

### GstRTSPSessionPoolFunc ()

    gboolean
    (*GstRTSPSessionPoolFunc) (GstRTSPSessionPool *pool,
                               gpointer user_data);

### gst_rtsp_session_pool_create_watch ()

    GSource *
    gst_rtsp_session_pool_create_watch (GstRTSPSessionPool *pool);

### GstRTSPSessionPoolFilterFunc ()

    GstRTSPFilterResult
    (*GstRTSPSessionPoolFilterFunc) (GstRTSPSessionPool *pool,
                                     GstRTSPSession *session,
                                     gpointer user_data);

### gst_rtsp_session_pool_filter ()

    GList *
    gst_rtsp_session_pool_filter (GstRTSPSessionPool *pool,
                                  GstRTSPSessionPoolFilterFunc func,
                                  gpointer user_data);

## Types and Values

### struct GstRTSPSessionPool

    struct GstRTSPSessionPool;

### struct GstRTSPSessionPoolClass

    struct GstRTSPSessionPoolClass {
      GObjectClass  parent_class;

      gchar *          (*create_session_id)   (GstRTSPSessionPool *pool);
      GstRTSPSession * (*create_session)      (GstRTSPSessionPool *pool, const gchar *id);

      /* signals */
      void             (*session_removed)     (GstRTSPSessionPool *pool,
                                               GstRTSPSession *session);
    };

## Property Details

### The `“max-sessions”` property

      “max-sessions”             guint

the maximum amount of sessions (0 = unlimited).

Flags: Read / Write

Default value: 0

## Signal Details

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

    void
    user_function (GstRTSPSessionPool *gstrtspsessionpool,
                   GstRTSPSession     *arg1,
                   gpointer            user_data)

Flags: Run Last