|
Yate
|
RTP or UDPTL session. More...
#include <yatertp.h>
Public Member Functions | |
| virtual | ~UDPSession () |
| virtual RTPTransport * | createTransport () |
| bool | initTransport () |
| bool | initGroup (int msec=0, Thread::Priority prio=Thread::Normal, const String &affinity=String::empty()) |
| bool | remoteAddr (SocketAddr &addr, bool sniff=false) |
| bool | setBuffer (int bufLen=4096) |
| bool | setTOS (int tos) |
| Socket * | rtpSock () |
| bool | drillHole () |
| void | setTimeout (int interval) |
| RTPTransport * | transport () const |
| virtual void | transport (RTPTransport *trans) |
Public Member Functions inherited from RTPProcessor | |
| RTPProcessor (DebugEnabler *dbg=0, const char *traceId=0) | |
| virtual | ~RTPProcessor () |
| RTPGroup * | group () const |
| virtual void | rtpData (const void *data, int len) |
| virtual void | rtcpData (const void *data, int len) |
| virtual void | getStats (String &stats) const |
| virtual void | incWrongSrc () |
| unsigned int | wrongSrc () |
Public Member Functions inherited from GenObject | |
| GenObject () | |
| virtual | ~GenObject () |
| virtual bool | alive () const |
| virtual void | destruct () |
| virtual const String & | toString () const |
| virtual const String & | traceId () const |
| virtual void * | getObject (const String &name) const |
| NamedCounter * | getObjCounter () const |
| NamedCounter * | setObjCounter (NamedCounter *counter) |
Public Member Functions inherited from RTPDebug | |
| RTPDebug (DebugEnabler *dbg, const char *traceId) | |
| RTPDebug (RTPSession *session) | |
| DebugEnabler * | dbg () const |
| const String & | dbgTraceId () const |
Protected Member Functions | |
| UDPSession (DebugEnabler *dbg=0, const char *traceId=0) | |
| virtual void | timeout (bool initial) |
Protected Member Functions inherited from RTPProcessor | |
| void | group (RTPGroup *newgrp) |
| virtual void | timerTick (const Time &when)=0 |
Protected Member Functions inherited from RTPDebug | |
| void | setDebug (DebugEnabler *dbg, const char *traceId) |
Protected Attributes | |
| RTPTransport * | m_transport |
| u_int64_t | m_timeoutTime |
| u_int64_t | m_timeoutInterval |
Protected Attributes inherited from RTPProcessor | |
| unsigned int | m_wrongSrc |
Protected Attributes inherited from RTPDebug | |
| DebugEnabler * | m_dbg |
| String | m_traceId |
Additional Inherited Members | |
Static Public Member Functions inherited from GenObject | |
| static void * | getObject (const String &name, const GenObject *obj) |
| static bool | getObjCounting () |
| static void | setObjCounting (bool enable) |
| static NamedCounter * | getObjCounter (const String &name, bool create=true) |
| static ObjList & | getObjCounters () |
RTP or UDPTL session.
A base class for RTP, SRTP or UDPTL sessions
|
virtual |
Destructor - cleans up any remaining resources
|
protected |
Default constructor
| dbg | Session DebugEnabler |
| traceId | Session trace ID |
References RTPDebug::dbg(), and GenObject::traceId().
|
virtual |
Create a new RTP or UDP transport for this session. Override this method to create objects derived from RTPTransport.
Reimplemented in UDPTLSession.
|
inline |
Drill a hole in a firewall or NAT for the RTP and RTCP sockets
| bool initGroup | ( | int | msec = 0, |
| Thread::Priority | prio = Thread::Normal, | ||
| const String & | affinity = String::empty() ) |
Initialize the RTP session, attach a group if none is present
| msec | Minimum time to sleep in group loop in milliseconds |
| prio | Thread priority to run the new group |
| affinity | Comma-separated list of CPUs and/or CPU range on which the thread should run on |
References String::empty().
| bool initTransport | ( | ) |
Initialize the RTP session, attach a transport if there is none
|
inline |
Set the remote network address of the RTP transport of this session
| addr | New remote RTP transport address |
| sniff | Automatically adjust the address from the first incoming packet |
|
inline |
Get the main transport socket used by this session
|
inline |
Set the size of the operating system's buffers for the RTP and RTCP transport sockets
| bufLen | Requested length of the buffer |
| void setTimeout | ( | int | interval | ) |
Set the interval until receiver timeout is detected
| interval | Milliseconds until receiver times out, zero to disable |
|
inline |
Set the Type Of Service for the RTP transport socket
| tos | Type Of Service bits to set |
|
protectedvirtual |
Method called when the receiver timed out
| initial | True if no packet was ever received in this session |
|
inline |
Get the RTP/RTCP transport of data handled by this session.
|
virtual |
Set the UDP transport of data handled by this session
| trans | A pointer to the new RTPTransport for this session |
Reimplemented in RTPSession.