pjsip logo pjsip.org
Open source SIP stack and media stack for presence, im/instant messaging, and multimedia communication

HOME

SIP/media Features
High Performance SIP
Small Footprint SIP
Symbian Port

FAQ

Documentation

Licensing

Download

Development (Trac)

Projects using pjsip

Mailing List

Open Source Links


About: PJLIB, PJLIB-UTIL, PJSIP, and PJMEDIA are created by: Benny Prijono
<bennylp@pjsip.org>


 

Home --> Documentations --> PJMEDIA Reference

UDP Media Transport
[Media Transport]


Detailed Description

The UDP media transport is the standard based media transport as described by RFC 3550/3551. It can be used to facilitate RTP/RTCP unicast or multicast communication.


Enumerations

enum  pjmedia_transport_udp_options { PJMEDIA_UDP_NO_SRC_ADDR_CHECKING = 1 }

Functions

pj_status_t pjmedia_transport_udp_create (pjmedia_endpt *endpt, const char *name, int port, unsigned options, pjmedia_transport **p_tp)
pj_status_t pjmedia_transport_udp_create2 (pjmedia_endpt *endpt, const char *name, const pj_str_t *addr, int port, unsigned options, pjmedia_transport **p_tp)
pj_status_t pjmedia_transport_udp_create3 (pjmedia_endpt *endpt, int af, const char *name, const pj_str_t *addr, int port, unsigned options, pjmedia_transport **p_tp)
pj_status_t pjmedia_transport_udp_attach (pjmedia_endpt *endpt, const char *name, const pjmedia_sock_info *si, unsigned options, pjmedia_transport **p_tp)


Enumeration Type Documentation

Options that can be specified when creating UDP transport.

Enumerator:
PJMEDIA_UDP_NO_SRC_ADDR_CHECKING  Normally the UDP transport will continuously check the source address of incoming packets to see if it is different than the configured remote address, and switch the remote address to the source address of the packet if they are different after several packets are received. Specifying this option will disable this feature.


Function Documentation

pj_status_t pjmedia_transport_udp_create ( pjmedia_endpt endpt,
const char *  name,
int  port,
unsigned  options,
pjmedia_transport **  p_tp 
)

Create an RTP and RTCP sockets and bind the sockets to the specified port to create media transport.

Parameters:
endpt The media endpoint instance.
name Optional name to be assigned to the transport.
port UDP port number for the RTP socket. The RTCP port number will be set to one above RTP port.
options Options, bitmask of pjmedia_transport_udp_options.
p_tp Pointer to receive the transport instance.
Returns:
PJ_SUCCESS on success.

pj_status_t pjmedia_transport_udp_create2 ( pjmedia_endpt endpt,
const char *  name,
const pj_str_t addr,
int  port,
unsigned  options,
pjmedia_transport **  p_tp 
)

Create an RTP and RTCP sockets and bind the sockets to the specified address and port to create media transport.

Parameters:
endpt The media endpoint instance.
name Optional name to be assigned to the transport.
addr Optional local address to bind the sockets to. If this argument is NULL or empty, the sockets will be bound to all interface.
port UDP port number for the RTP socket. The RTCP port number will be set to one above RTP port.
options Options, bitmask of pjmedia_transport_udp_options.
p_tp Pointer to receive the transport instance.
Returns:
PJ_SUCCESS on success.

pj_status_t pjmedia_transport_udp_create3 ( pjmedia_endpt endpt,
int  af,
const char *  name,
const pj_str_t addr,
int  port,
unsigned  options,
pjmedia_transport **  p_tp 
)

Another variant of pjmedia_transport_udp_create() which allows the creation of IPv6 transport.

Parameters:
endpt The media endpoint instance.
af Address family, which can be pj_AF_INET() for IPv4 or pj_AF_INET6() for IPv6.
name Optional name to be assigned to the transport.
addr Optional local address to bind the sockets to. If this argument is NULL or empty, the sockets will be bound to all interface.
port UDP port number for the RTP socket. The RTCP port number will be set to one above RTP port.
options Options, bitmask of pjmedia_transport_udp_options.
p_tp Pointer to receive the transport instance.
Returns:
PJ_SUCCESS on success.

pj_status_t pjmedia_transport_udp_attach ( pjmedia_endpt endpt,
const char *  name,
const pjmedia_sock_info si,
unsigned  options,
pjmedia_transport **  p_tp 
)

Create UDP stream transport from existing sockets. Use this function when the sockets have previously been created.

Parameters:
endpt The media endpoint instance.
name Optional name to be assigned to the transport.
si Media socket info containing the RTP and RTCP sockets.
options Options, bitmask of pjmedia_transport_udp_options.
p_tp Pointer to receive the transport instance.
Returns:
PJ_SUCCESS on success.

 


PJMEDIA small footprint Open Source media stack
Copyright (C) 2006-2008 Teluu Inc.