RTSP Layer

Collaboration diagram for RTSP Layer:
Real Time Streaming Protocol (RTSP) implementation - rfc 2326. More...


Modules

 RTSP Public Interface
 RTSP controller and management public interface.
 RTSP State Machine
 RTSP Response Handlers
 RTSP Requests Senders
 RTSP Packets Handling
 RTSP Sessions Management
 RTSP Transport

Data Structures

struct  command
 Struct used for internal comunication. More...
struct  rtsp_buffer
 RTSP Packet buffer. More...
struct  rtsp_thread
 Main structure for the RTSP module. More...

Defines

#define SETUP_TKN   "SETUP"
#define REDIRECT_TKN   "REDIRECT"
#define PLAY_TKN   "PLAY"
#define PAUSE_TKN   "PAUSE"
#define SESSION_TKN   "SESSION"
#define RECORD_TKN   "RECORD"
#define EXT_METHOD_TKN   "EXT-"
#define HTTP_GET   "GET"
#define HELLO_TKN   "OPTIONS"
#define GET_TKN   "DESCRIBE"
#define GET_PARAM_TKN   "GET_PARAMETER"
#define SET_PARAM_TKN   "SET_PARAMETER"
#define CLOSE_TKN   "TEARDOWN"
#define RTSP_SETUP_RESPONSE   100
#define RTSP_GET_RESPONSE   101
#define RTSP_REDIRECT_RESPONSE   102
#define RTSP_PLAY_RESPONSE   103
#define RTSP_PAUSE_RESPONSE   104
#define RTSP_SESSION_RESPONSE   105
#define NEMESI_RTSP_HELLO_RESPONSE   106
#define RTSP_RECORD_RESPONSE   107
#define RTSP_CLOSE_RESPONSE   108
#define RTSP_GET_PARAM_RESPONSE   109
#define RTSP_SET_PARAM_RESPONSE   110
#define RTSP_EXTENSION_RESPONSE   111
#define DESCRIPTION_NONE_FORMAT   0
#define DESCRIPTION_SDP_FORMAT   1
#define DESCRIPTION_MH_FORMAT   2
#define RTSP_FOUND   302
#define RTSP_IS_SUCCESS(x)   ((x>=200 /*RTSP_SUCCESS*/) && (x<300 /*RTSP_REDIRECT*/))? 1 : 0
#define RTSP_IS_REDIRECT(x)   ((x>=300 /*RTSP_REDIRECT*/) && (x<400 /*RTSP_CLIENT_ERROR*/))? 1 : 0
#define RTSP_IS_CLIENT_ERROR(x)   ((x>=400 /*RTSP_CLIENT_ERROR*/) && (x<500 /*RTSP_SERVER_ERROR*/))? 1 : 0
#define RTSP_IS_SERVER_ERROR(x)   (x>=500 /*RTSP_SERVER_ERROR*/)? 1 : 0
#define RTSP_BUFFERSIZE   163840

Typedefs

typedef struct
nms_rtsp_interleaved_s 
nms_rtsp_interleaved

Variables

int nms_rtsp_hints::prebuffer_size
sock_type nms_rtsp_hints::pref_rtsp_proto
sock_type nms_rtsp_hints::pref_rtp_proto
rtp_session * rtsp_medium_s::rtp_sess
struct rtsp_medium_srtsp_medium_s::next
char * rtsp_medium_s::filename
int rtsp_session_s::CSeq
char * rtsp_session_s::pathname
char * rtsp_session_s::content_base
sdp_session_infortsp_session_s::info
rtsp_mediumrtsp_session_s::media_queue
struct rtsp_session_srtsp_session_s::next
char * rtsp_session_s::body

Detailed Description

Real Time Streaming Protocol (RTSP) implementation - rfc 2326.

RTSP Layer

The RTSP module requests the media streams and handles the service handshake. Once this phase is complete it behaves like a remote controller for the requested multimedia stream.


Variable Documentation

char* rtsp_session_s::body [inherited]

Contains the raw describe response. It should be NEVER accessed directly. All the data is available through rtsp_session_info.

Definition at line 124 of file rtsp.h.

Referenced by rtsp_reinit().

char* rtsp_session_s::content_base [inherited]

Not NULL if a Content-Base field is found in the response to the DESCRIBE method. In this case the field pathname and all the rtsp_medium of the session are relative to content_base path.

Definition at line 110 of file rtsp.h.

Referenced by rtsp_reinit().

int rtsp_session_s::CSeq [inherited]

Last sent RTSP packet sequence number

Definition at line 105 of file rtsp.h.

char* rtsp_medium_s::filename [inherited]

Medium identifier. Used for the ``per medium'' methods (SETUP, TEARDOWN).

Definition at line 80 of file rtsp.h.

Referenced by rtsp_info_print().

sdp_session_info* rtsp_session_s::info [inherited]

Session informations

Definition at line 116 of file rtsp.h.

Referenced by rtsp_info_print(), and rtsp_reinit().

rtsp_medium* rtsp_session_s::media_queue [inherited]

Media queue

Definition at line 118 of file rtsp.h.

Referenced by rtsp_info_print(), and rtsp_reinit().

struct rtsp_session_s* rtsp_session_s::next [read, inherited]

Next session

Definition at line 119 of file rtsp.h.

Referenced by rtsp_info_print(), and rtsp_reinit().

struct rtsp_medium_s* rtsp_medium_s::next [read, inherited]

Next medium.

Definition at line 79 of file rtsp.h.

Referenced by rtsp_info_print(), and rtsp_reinit().

char* rtsp_session_s::pathname [inherited]

RTSP session identifier. Used for the ``per session'' methods (PLAY, PAUSE, RECORD)

Definition at line 107 of file rtsp.h.

Referenced by rtsp_info_print().

rtp_session* rtsp_medium_s::rtp_sess [inherited]

RTP session whom the medium belongs

Definition at line 77 of file rtsp.h.

Referenced by rtsp_reinit().


Generated on Tue Feb 3 03:10:03 2009 for libnemesi by  doxygen 1.5.4