UniMRCP  1.7.0
Data Structures | Typedefs | Functions
rtsp_server.h File Reference

RTSP Server. More...

#include "apt_task.h"
#include "rtsp_message.h"
Include dependency graph for rtsp_server.h:

Go to the source code of this file.

Data Structures

struct  rtsp_server_vtable_t
 

Typedefs

typedef typedefAPT_BEGIN_EXTERN_C struct rtsp_server_t rtsp_server_t
 
typedef struct rtsp_server_session_t rtsp_server_session_t
 
typedef struct rtsp_server_vtable_t rtsp_server_vtable_t
 

Functions

rtsp_server_trtsp_server_create (const char *id, const char *listen_ip, apr_port_t listen_port, apr_size_t max_connection_count, apr_size_t connection_timeout, void *obj, const rtsp_server_vtable_t *handler, apr_pool_t *pool)
 
apt_bool_t rtsp_server_destroy (rtsp_server_t *server)
 
apt_bool_t rtsp_server_start (rtsp_server_t *server)
 
apt_bool_t rtsp_server_terminate (rtsp_server_t *server)
 
apt_task_trtsp_server_task_get (const rtsp_server_t *server)
 
void * rtsp_server_object_get (const rtsp_server_t *server)
 
apt_bool_t rtsp_server_session_respond (rtsp_server_t *server, rtsp_server_session_t *session, rtsp_message_t *message)
 
apt_bool_t rtsp_server_session_terminate (rtsp_server_t *server, rtsp_server_session_t *session)
 
apt_bool_t rtsp_server_session_release (rtsp_server_t *server, rtsp_server_session_t *session)
 
void * rtsp_server_session_object_get (const rtsp_server_session_t *session)
 
void rtsp_server_session_object_set (rtsp_server_session_t *session, void *obj)
 
const apt_str_trtsp_server_session_id_get (const rtsp_server_session_t *session)
 
const rtsp_message_trtsp_server_session_request_get (const rtsp_server_session_t *session)
 
const char * rtsp_server_session_destination_get (const rtsp_server_session_t *session)
 

Detailed Description

RTSP Server.

Typedef Documentation

◆ rtsp_server_session_t

Opaque RTSP server session declaration

◆ rtsp_server_t

typedef typedefAPT_BEGIN_EXTERN_C struct rtsp_server_t rtsp_server_t

Opaque RTSP server declaration

◆ rtsp_server_vtable_t

RTSP server vtable declaration

Function Documentation

◆ rtsp_server_create()

rtsp_server_t* rtsp_server_create ( const char *  id,
const char *  listen_ip,
apr_port_t  listen_port,
apr_size_t  max_connection_count,
apr_size_t  connection_timeout,
void *  obj,
const rtsp_server_vtable_t handler,
apr_pool_t *  pool 
)

Create RTSP server.

Parameters
idthe identifier of the server
listen_ipthe listen IP address
listen_portthe listen port
max_connection_countthe number of max RTSP connections
connection_timeoutthe inactivity timeout for an RTSP connection [sec]
objthe external object to send events to
handlerthe request handler
poolthe pool to allocate memory from

◆ rtsp_server_destroy()

apt_bool_t rtsp_server_destroy ( rtsp_server_t server)

Destroy RTSP server.

Parameters
serverthe server to destroy

◆ rtsp_server_object_get()

void* rtsp_server_object_get ( const rtsp_server_t server)

Get external object.

Parameters
serverthe server to get object from

◆ rtsp_server_session_destination_get()

const char* rtsp_server_session_destination_get ( const rtsp_server_session_t session)

Get the session destination (client) IP address.

Parameters
sessionthe session to get IP address from

◆ rtsp_server_session_id_get()

const apt_str_t* rtsp_server_session_id_get ( const rtsp_server_session_t session)

Get the session identifier.

Parameters
sessionthe session to get identifier from

◆ rtsp_server_session_object_get()

void* rtsp_server_session_object_get ( const rtsp_server_session_t session)

Get object associated with the session.

Parameters
sessionthe session to get object from

◆ rtsp_server_session_object_set()

void rtsp_server_session_object_set ( rtsp_server_session_t session,
void *  obj 
)

Set object associated with the session.

Parameters
sessionthe session to set object for
objthe object to set

◆ rtsp_server_session_release()

apt_bool_t rtsp_server_session_release ( rtsp_server_t server,
rtsp_server_session_t session 
)

Release RTSP session (internal release event/request).

Parameters
serverthe server to use
sessionthe session to release

◆ rtsp_server_session_request_get()

const rtsp_message_t* rtsp_server_session_request_get ( const rtsp_server_session_t session)

Get active (in-progress) session request.

Parameters
sessionthe session to get from

◆ rtsp_server_session_respond()

apt_bool_t rtsp_server_session_respond ( rtsp_server_t server,
rtsp_server_session_t session,
rtsp_message_t message 
)

Send RTSP message.

Parameters
serverthe server to use
sessionthe session to send RTSP response for
messagethe RTSP response to send

◆ rtsp_server_session_terminate()

apt_bool_t rtsp_server_session_terminate ( rtsp_server_t server,
rtsp_server_session_t session 
)

Terminate RTSP session (respond to terminate request).

Parameters
serverthe server to use
sessionthe session to terminate

◆ rtsp_server_start()

apt_bool_t rtsp_server_start ( rtsp_server_t server)

Start server and wait for incoming requests.

Parameters
serverthe server to start

◆ rtsp_server_task_get()

apt_task_t* rtsp_server_task_get ( const rtsp_server_t server)

Get task.

Parameters
serverthe server to get task from

◆ rtsp_server_terminate()

apt_bool_t rtsp_server_terminate ( rtsp_server_t server)

Terminate server.

Parameters
serverthe server to terminate