|
|
A base class for RTP, SRTP or UDPTL sessions
~UDPSession ()
| ~UDPSession |
[virtual]
Destructor - cleans up any remaining resources
RTPTransport* createTransport ()
| createTransport |
[virtual]
Create a new RTP or UDP transport for this session. Override this method to create objects derived from RTPTransport.
Returns: Pointer to the new transport or NULL on failure
bool initTransport ()
| initTransport |
Initialize the RTP session, attach a transport if there is none
Returns: True if initialized, false on some failure
bool initGroup (int msec = 0, Thread::Priority prio = Thread::Normal)
| initGroup |
Initialize the RTP session, attach a group if none is present
Parameters:
msec | Minimum time to sleep in group loop in milliseconds |
prio | Thread priority to run the new group |
Returns: True if initialized, false on some failure
inline bool remoteAddr (SocketAddr& addr, bool sniff = false)
| remoteAddr |
Set the remote network address of the RTP transport of this session
Parameters:
addr | New remote RTP transport address |
sniff | Automatically adjust the address from the first incoming packet |
Returns: True if address set, false if a failure occured
inline bool setBuffer (int bufLen = 4096)
| setBuffer |
Set the size of the operating system's buffers for the RTP and RTCP transport sockets
Parameters:
bufLen | Requested length of the buffer |
Returns: True if the buffer length was set
inline bool setTOS (int tos)
| setTOS |
Set the Type Of Service for the RTP transport socket
Parameters:
tos | Type Of Service bits to set |
Returns: True if operation was successfull, false if an error occured
inline Socket* rtpSock ()
| rtpSock |
Get the main transport socket used by this session
Returns: Pointer to the RTP or UDPTL socket, NULL if no transport exists
inline bool drillHole ()
| drillHole |
Drill a hole in a firewall or NAT for the RTP and RTCP sockets
Returns: True if at least a packet was sent for the RTP socket
void setTimeout (int interval)
| setTimeout |
Set the interval until receiver timeout is detected
Parameters:
interval | Milliseconds until receiver times out, zero to disable |
inline RTPTransport* transport ()
| transport |
[const]
Get the RTP/RTCP transport of data handled by this session.
Returns: A pointer to the RTPTransport of this session
void transport (RTPTransport* trans)
| transport |
[virtual]
Set the UDP transport of data handled by this session
Parameters:
trans | A pointer to the new RTPTransport for this session |
UDPSession ()
| UDPSession |
[protected]
Default constructor
void timeout (bool initial)
| timeout |
[protected virtual]
Method called when the receiver timed out
Parameters:
initial | True if no packet was ever received in this session |
RTPTransport* m_transport | m_transport |
[protected]
u_int64_t m_timeoutTime | m_timeoutTime |
[protected]
u_int64_t m_timeoutInterval | m_timeoutInterval |
[protected]
Generated by: paulc on bussard on Sun Oct 20 21:06:06 2013, using kdoc 2.0a54. |