GPAC
Open Source Multimedia Framework. For more information, check out http://gpac.wp.mines-telecom.fr
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups
rtp.c File Reference
+ Include dependency graph for rtp.c:

Macros

#define MAX_RTP_SN   0x10000
 
#define RTP_DEFAULT_FIRSTPORT   7040
 
#define SN_CHECK_OFFSET   0x0A
 

Functions

GF_RTPChannel * gf_rtp_new ()
 
void gf_rtp_del (GF_RTPChannel *ch)
 
GF_Err gf_rtp_setup_transport (GF_RTPChannel *ch, GF_RTSPTransport *trans_info, const char *remote_address)
 
void gf_rtp_reset_buffers (GF_RTPChannel *ch)
 
void gf_rtp_enable_nat_keepalive (GF_RTPChannel *ch, u32 nat_timeout)
 
GF_Err gf_rtp_set_info_rtp (GF_RTPChannel *ch, u32 seq_num, u32 rtp_time, u32 ssrc)
 
GF_Err gf_rtp_stop (GF_RTPChannel *ch)
 
GF_Err gf_rtp_initialize (GF_RTPChannel *ch, u32 UDPBufferSize, Bool IsSource, u32 PathMTU, u32 ReorederingSize, u32 MaxReorderDelay, char *local_ip)
 
u32 gf_rtp_channel_time (GF_RTPChannel *ch)
 
u32 gf_rtp_get_report_time ()
 
void gf_rtp_get_next_report_time (GF_RTPChannel *ch)
 
u32 gf_rtp_read_rtp (GF_RTPChannel *ch, char *buffer, u32 buffer_size)
 
GF_Err gf_rtp_decode_rtp (GF_RTPChannel *ch, char *pck, u32 pck_size, GF_RTPHeader *rtp_hdr, u32 *PayloadStart)
 
Double gf_rtp_get_current_time (GF_RTPChannel *ch)
 
GF_Err gf_rtp_send_packet (GF_RTPChannel *ch, GF_RTPHeader *rtp_hdr, char *pck, u32 pck_size, Bool fast_send)
 
u32 gf_rtp_is_unicast (GF_RTPChannel *ch)
 
u32 gf_rtp_is_interleaved (GF_RTPChannel *ch)
 
u32 gf_rtp_get_clockrate (GF_RTPChannel *ch)
 
u32 gf_rtp_is_active (GF_RTPChannel *ch)
 
u8 gf_rtp_get_low_interleave_id (GF_RTPChannel *ch)
 
u8 gf_rtp_get_hight_interleave_id (GF_RTPChannel *ch)
 
GF_Err gf_rtp_set_ports (GF_RTPChannel *ch, u16 first_port)
 
GF_Err gf_rtp_setup_payload (GF_RTPChannel *ch, GF_RTPMap *map)
 
GF_RTSPTransportgf_rtp_get_transport (GF_RTPChannel *ch)
 
u32 gf_rtp_get_local_ssrc (GF_RTPChannel *ch)
 
Float gf_rtp_get_loss (GF_RTPChannel *ch)
 
u32 gf_rtp_get_tcp_bytes_sent (GF_RTPChannel *ch)
 
void gf_rtp_get_ports (GF_RTPChannel *ch, u16 *rtp_port, u16 *rtcp_port)
 
GF_RTPReordergf_rtp_reorderer_new (u32 MaxCount, u32 MaxDelay)
 
static void DelItem (GF_POItem *it)
 
void gf_rtp_reorderer_del (GF_RTPReorder *po)
 
void gf_rtp_reorderer_reset (GF_RTPReorder *po)
 
GF_Err gf_rtp_reorderer_add (GF_RTPReorder *po, const void *pck, u32 pck_size, u32 pck_seqnum)
 
void * gf_rtp_reorderer_get (GF_RTPReorder *po, u32 *pck_size)
 

Variables

static u16 NextAvailablePort = 0
 

Macro Definition Documentation

#define MAX_RTP_SN   0x10000
#define RTP_DEFAULT_FIRSTPORT   7040
#define SN_CHECK_OFFSET   0x0A

Function Documentation

GF_RTPChannel* gf_rtp_new ( )

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_rtp_del ( GF_RTPChannel *  ch)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_rtp_setup_transport ( GF_RTPChannel *  ch,
GF_RTSPTransport trans_info,
const char *  remote_address 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_rtp_reset_buffers ( GF_RTPChannel *  ch)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_rtp_enable_nat_keepalive ( GF_RTPChannel *  ch,
u32  nat_timeout 
)

+ Here is the caller graph for this function:

GF_Err gf_rtp_set_info_rtp ( GF_RTPChannel *  ch,
u32  seq_num,
u32  rtp_time,
u32  ssrc 
)

+ Here is the caller graph for this function:

GF_Err gf_rtp_stop ( GF_RTPChannel *  ch)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_rtp_initialize ( GF_RTPChannel *  ch,
u32  UDPBufferSize,
Bool  IsSource,
u32  PathMTU,
u32  ReorederingSize,
u32  MaxReorderDelay,
char *  local_ip 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u32 gf_rtp_channel_time ( GF_RTPChannel *  ch)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u32 gf_rtp_get_report_time ( )

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_rtp_get_next_report_time ( GF_RTPChannel *  ch)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u32 gf_rtp_read_rtp ( GF_RTPChannel *  ch,
char *  buffer,
u32  buffer_size 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_rtp_decode_rtp ( GF_RTPChannel *  ch,
char *  pck,
u32  pck_size,
GF_RTPHeader rtp_hdr,
u32 PayloadStart 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Double gf_rtp_get_current_time ( GF_RTPChannel *  ch)

+ Here is the caller graph for this function:

GF_Err gf_rtp_send_packet ( GF_RTPChannel *  ch,
GF_RTPHeader rtp_hdr,
char *  pck,
u32  pck_size,
Bool  fast_send 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u32 gf_rtp_is_unicast ( GF_RTPChannel *  ch)

+ Here is the caller graph for this function:

u32 gf_rtp_is_interleaved ( GF_RTPChannel *  ch)

+ Here is the caller graph for this function:

u32 gf_rtp_get_clockrate ( GF_RTPChannel *  ch)

+ Here is the caller graph for this function:

u32 gf_rtp_is_active ( GF_RTPChannel *  ch)
u8 gf_rtp_get_low_interleave_id ( GF_RTPChannel *  ch)

+ Here is the caller graph for this function:

u8 gf_rtp_get_hight_interleave_id ( GF_RTPChannel *  ch)

+ Here is the caller graph for this function:

GF_Err gf_rtp_set_ports ( GF_RTPChannel *  ch,
u16  first_port 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_rtp_setup_payload ( GF_RTPChannel *  ch,
GF_RTPMap map 
)

+ Here is the caller graph for this function:

GF_RTSPTransport* gf_rtp_get_transport ( GF_RTPChannel *  ch)

+ Here is the caller graph for this function:

u32 gf_rtp_get_local_ssrc ( GF_RTPChannel *  ch)
Float gf_rtp_get_loss ( GF_RTPChannel *  ch)

+ Here is the caller graph for this function:

u32 gf_rtp_get_tcp_bytes_sent ( GF_RTPChannel *  ch)

+ Here is the caller graph for this function:

void gf_rtp_get_ports ( GF_RTPChannel *  ch,
u16 rtp_port,
u16 rtcp_port 
)

+ Here is the caller graph for this function:

GF_RTPReorder* gf_rtp_reorderer_new ( u32  MaxCount,
u32  MaxDelay 
)

+ Here is the caller graph for this function:

static void DelItem ( GF_POItem it)
static

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_rtp_reorderer_del ( GF_RTPReorder po)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void gf_rtp_reorderer_reset ( GF_RTPReorder po)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

GF_Err gf_rtp_reorderer_add ( GF_RTPReorder po,
const void *  pck,
u32  pck_size,
u32  pck_seqnum 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void* gf_rtp_reorderer_get ( GF_RTPReorder po,
u32 pck_size 
)

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Variable Documentation

u16 NextAvailablePort = 0
static