|
Yate
|
Dejitter buffer for incoming data packets. More...
#include <yatertp.h>
Public Member Functions | |
| RTPDejitter (RTPReceiver *receiver, unsigned int mindelay, unsigned int maxdelay, DebugEnabler *dbg=0, const char *traceId=0) | |
| virtual | ~RTPDejitter () |
| virtual bool | rtpRecv (bool marker, int payload, unsigned int timestamp, const void *data, int len) |
| void | clear () |
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 | |
| virtual void | timerTick (const Time &when) |
Protected Member Functions inherited from RTPProcessor | |
| void | group (RTPGroup *newgrp) |
Protected Member Functions inherited from RTPDebug | |
| void | setDebug (DebugEnabler *dbg, const char *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 () |
Protected Attributes inherited from RTPProcessor | |
| unsigned int | m_wrongSrc |
Protected Attributes inherited from RTPDebug | |
| DebugEnabler * | m_dbg |
| String | m_traceId |
Dejitter buffer for incoming data packets.
A dejitter buffer that can be inserted in the receive data path to absorb variations in packet arrival time. Incoming packets are stored and forwarded at fixed intervals.
| RTPDejitter | ( | RTPReceiver * | receiver, |
| unsigned int | mindelay, | ||
| unsigned int | maxdelay, | ||
| DebugEnabler * | dbg = 0, | ||
| const char * | traceId = 0 ) |
Constructor of a new jitter attenuator
| receiver | RTP receiver which gets the delayed packets |
| mindelay | Minimum length of the dejitter buffer in microseconds |
| maxdelay | Maximum length of the dejitter buffer in microseconds |
| dbg | Dejitter DebugEnabler |
| traceId | Dejitter trace ID |
References RTPDebug::dbg(), and GenObject::traceId().
|
virtual |
Destructor - drops the packets and shows statistics
| void clear | ( | ) |
Clear the delayed packets queue and all variables
|
virtual |
Process and store one RTP data packet
| marker | True if the marker bit is set in data packet |
| payload | Payload number |
| timestamp | Sampling instant of the packet data |
| data | Pointer to data block to process |
| len | Length of the data block in bytes |
|
protectedvirtual |
Method called periodically to keep the data flowing
| when | Time to use as base in all computing |
Implements RTPProcessor.