43#ifndef CCXX_RTP_QUEUEBASE_H_
44#define CCXX_RTP_QUEUEBASE_H_
46#include <commoncpp/pointer.h>
95 {
return datablock->getPayloadType(); }
104 inline const uint8*
const
106 {
return datablock->getPayload(); }
113 {
return datablock->getPayloadSize(); }
129 {
return datablock->isMarked(); }
136 {
return datablock->getSeqNum(); }
143 {
return (uint8)datablock->getCSRCsCount(); }
152 {
return datablock->getCSRCs(); }
155 Pointer<const IncomingRTPPkt> datablock;
185 {
return localSSRC; }
196 {
return currentRTPClockRate; }
199 {
return currentPayloadType; }
202 {
return initialTime; }
212 { localSSRC = ssrc; localSSRCNetwork = htonl(ssrc); }
215 {
return localSSRCNetwork; }
227 inline virtual size_t
239 uint32 localSSRCNetwork;
241 uint32 currentRTPClockRate;
260 {
return defaultMaxSendSegmentSize;}
270 { maxSendSegmentSize = size; }
274 {
return maxSendSegmentSize; }
284 static const size_t defaultMaxSendSegmentSize;
286 size_t maxSendSegmentSize;
299 {
return defaultMaxRecvPacketSize; }
303 {
return maxRecvPacketSize; }
317 { maxRecvPacketSize = maxsize; }
321 { setMaxRecvPacketSize(getDefaultMaxRecvPacketSize()); }
328 static const size_t defaultMaxRecvPacketSize;
330 size_t maxRecvPacketSize;
Interface (envelope) to data received over RTP packets.
Definition queuebase.h:69
uint8 getContributorsCount() const
Get the number of contributing sources in the CSRC list.
Definition queuebase.h:142
PayloadType getType() const
Definition queuebase.h:94
uint16 getSeqNum() const
Get data unit sequence number.
Definition queuebase.h:135
bool isMarked() const
Is this data unit marked?.
Definition queuebase.h:128
size_t getSize() const
Definition queuebase.h:112
AppDataUnit & operator=(const AppDataUnit &source)
Assignment operator.
AppDataUnit(const AppDataUnit &src)
const uint8 *const getData() const
Get data as it is received in RTP packets (i.e.
Definition queuebase.h:105
const SyncSource & getSource() const
Definition queuebase.h:119
~AppDataUnit()
Definition queuebase.h:73
AppDataUnit(const IncomingRTPPkt &packet, const SyncSource &src)
const uint32 * getContributorsID() const
Get the array of 32-bit CSRC identifiers.
Definition queuebase.h:151
Definition queuebase.h:296
size_t getMaxRecvPacketSize() const
Definition queuebase.h:302
void setMaxRecvPacketSize(size_t maxsize)
Definition queuebase.h:316
virtual ~IncomingDataQueueBase()
Definition queuebase.h:324
IncomingDataQueueBase()
Definition queuebase.h:320
size_t getDefaultMaxRecvPacketSize() const
Definition queuebase.h:298
RTP packets received from other participants.
Definition rtppkt.h:705
Definition queuebase.h:256
size_t getMaxSendSegmentSize()
Definition queuebase.h:273
void setMaxSendSegmentSize(size_t size)
Set maximum payload segment size before fragmenting sends.
Definition queuebase.h:269
virtual ~OutgoingDataQueueBase()
Definition queuebase.h:280
size_t getDefaultMaxSendSegmentSize()
Definition queuebase.h:259
A virtual base class for RTP queue hierarchies.
Definition queuebase.h:167
uint32 getLocalSSRC() const
Definition queuebase.h:184
RTPQueueBase(uint32 *ssrc=NULL)
PayloadType getCurrentPayloadType() const
Definition queuebase.h:198
bool setPayloadFormat(const PayloadFormat &pf)
Set the payload format in use, for timing and payload type identification purposes.
Definition queuebase.h:177
uint32 getLocalSSRCNetwork() const
Definition queuebase.h:214
timeval getInitialTime() const
Definition queuebase.h:201
void setLocalSSRC(uint32 ssrc)
Definition queuebase.h:211
uint32 getCurrentRTPClockRate() const
Get the clock rate in RTP clock units (for instance, 8000 units per second for PCMU,...
Definition queuebase.h:195
virtual void renewLocalSSRC()
Definition queuebase.h:232
virtual size_t dispatchBYE(const std::string &)
A plugin point for posting of BYE messages.
Definition queuebase.h:228
virtual ~RTPQueueBase()
Definition queuebase.h:218
Synchronization source in an RTP session.
Definition sources.h:193
uint8 PayloadType
RTP payload type numeric identifier.
Definition formats.h:62
Sources of synchronization and participants related clases.