libgpac
Documentation of the core library of GPAC
rtsp_session.c File Reference
+ Include dependency graph for rtsp_session.c:

Macros

#define RTSP_PCK_SIZE   1000
 
#define HTTP10_RSP_OK   "HTTP/1.0 200 OK"
 
#define HTTP11_RSP_OK   "HTTP/1.1 200 OK"
 

Functions

static GF_Err gf_rtsp_write_sock (GF_RTSPSession *sess, u8 *data, u32 len)
 
static GF_Err gf_rstp_flush_buffer (GF_RTSPSession *sess)
 
static GF_Err gf_rtsp_http_tunnel_setup (GF_RTSPSession *sess)
 
GF_Err RTSP_UnpackURL (char *sURL, char Server[1024], u16 *Port, char Service[1024], Bool *useTCP, char User[1024], char Pass[1024])
 
GF_EXPORT GF_RTSPSession * gf_rtsp_session_new (char *sURL, u16 DefaultPort)
 
GF_EXPORT void gf_rtsp_session_set_netcap_id (GF_RTSPSession *sess, const char *netcap_id)
 
GF_EXPORT void gf_rtsp_reset_aggregation (GF_RTSPSession *sess)
 
void RemoveTCPChannels (GF_RTSPSession *sess)
 
GF_EXPORT u32 gf_rtsp_session_reset (GF_RTSPSession *sess, Bool ResetConnection)
 
GF_EXPORT void gf_rtsp_session_del (GF_RTSPSession *sess)
 
GF_EXPORT u32 gf_rtsp_get_session_state (GF_RTSPSession *sess)
 
GF_EXPORT Bool gf_rtsp_is_my_session (GF_RTSPSession *sess, char *url)
 
GF_EXPORT const char * gf_rtsp_get_server_name (GF_RTSPSession *sess)
 
GF_EXPORT u16 gf_rtsp_get_session_port (GF_RTSPSession *sess)
 
GF_EXPORT Bool gf_rtsp_use_tls (GF_RTSPSession *sess)
 
GF_Err gf_rtsp_check_connection (GF_RTSPSession *sess)
 
GF_Err gf_rtsp_send_data (GF_RTSPSession *sess, u8 *buffer, u32 Size)
 
static GF_TCPChanGetTCPChannel (GF_RTSPSession *sess, u8 rtpID, u8 rtcpID, Bool RemoveIt)
 
GF_Err gf_rtsp_do_deinterleave (GF_RTSPSession *sess)
 
GF_EXPORT GF_Err gf_rtsp_session_read (GF_RTSPSession *sess)
 
GF_EXPORT u32 gf_rtsp_unregister_interleave (GF_RTSPSession *sess, u8 LowInterID)
 
GF_EXPORT GF_Err gf_rtsp_register_interleave (GF_RTSPSession *sess, void *the_ch, u8 LowInterID, u8 HighInterID)
 
GF_EXPORT GF_Err gf_rtsp_set_interleave_callback (GF_RTSPSession *sess, gf_rtsp_interleave_callback SignalData)
 
GF_EXPORT GF_Err gf_rtsp_set_buffer_size (GF_RTSPSession *sess, u32 BufferSize)
 
static GF_Err rstp_do_write_sock (GF_RTSPSession *sess, GF_Socket *sock, const u8 *buffer, u32 size, u32 *written)
 
GF_EXPORT GF_RTSPSession * gf_rtsp_session_new_server (GF_Socket *rtsp_listener, Bool allow_http_tunnel, void *ssl_ctx)
 
GF_EXPORT char * gf_rtsp_generate_session_id (GF_RTSPSession *sess)
 
GF_EXPORT GF_Err gf_rtsp_get_session_ip (GF_RTSPSession *sess, char buffer[GF_MAX_IP_NAME_LEN])
 
GF_EXPORT GF_Err gf_rtsp_get_remote_address (GF_RTSPSession *sess, char *buf)
 
GF_EXPORT GF_Err gf_rtsp_session_write_interleaved (GF_RTSPSession *sess, u32 idx, u8 *pck, u32 pck_size)
 
const char * gf_rtsp_get_session_cookie (GF_RTSPSession *sess)
 
GF_Err gf_rtsp_merge_tunnel (GF_RTSPSession *sess, GF_RTSPSession *post_sess)
 
const char * gf_rtsp_get_user (GF_RTSPSession *sess)
 
const char * gf_rtsp_get_password (GF_RTSPSession *sess)
 

Variables

static Bool HTTP_RandInit = GF_TRUE
 
static u32 SessionID_RandInit = 0
 

Macro Definition Documentation

◆ RTSP_PCK_SIZE

#define RTSP_PCK_SIZE   1000

◆ HTTP10_RSP_OK

#define HTTP10_RSP_OK   "HTTP/1.0 200 OK"

◆ HTTP11_RSP_OK

#define HTTP11_RSP_OK   "HTTP/1.1 200 OK"

Function Documentation

◆ gf_rtsp_write_sock()

static GF_Err gf_rtsp_write_sock ( GF_RTSPSession *  sess,
u8 data,
u32  len 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_rstp_flush_buffer()

static GF_Err gf_rstp_flush_buffer ( GF_RTSPSession *  sess)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_rtsp_http_tunnel_setup()

static GF_Err gf_rtsp_http_tunnel_setup ( GF_RTSPSession *  sess)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ RTSP_UnpackURL()

GF_Err RTSP_UnpackURL ( char *  sURL,
char  Server[1024],
u16 Port,
char  Service[1024],
Bool useTCP,
char  User[1024],
char  Pass[1024] 
)
+ Here is the caller graph for this function:

◆ RemoveTCPChannels()

void RemoveTCPChannels ( GF_RTSPSession *  sess)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_rtsp_send_data()

GF_Err gf_rtsp_send_data ( GF_RTSPSession *  sess,
u8 buffer,
u32  Size 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetTCPChannel()

static GF_TCPChan* GetTCPChannel ( GF_RTSPSession *  sess,
u8  rtpID,
u8  rtcpID,
Bool  RemoveIt 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_rtsp_do_deinterleave()

GF_Err gf_rtsp_do_deinterleave ( GF_RTSPSession *  sess)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ rstp_do_write_sock()

static GF_Err rstp_do_write_sock ( GF_RTSPSession *  sess,
GF_Socket *  sock,
const u8 buffer,
u32  size,
u32 written 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Variable Documentation

◆ HTTP_RandInit

Bool HTTP_RandInit = GF_TRUE
static

◆ SessionID_RandInit

u32 SessionID_RandInit = 0
static