OPAL  Version 3.18.8
OpalRTPSession::SyncSource Struct Reference

#include <rtp_session.h>

Collaboration diagram for OpalRTPSession::SyncSource:

Data Structures

struct  RxPacket
 
struct  TxPacket
 

Public Types

typedef std::map< uint32_t,
RxPacket
RxPacketMap
 
typedef std::map
< RTP_SequenceNumber, TxPacket
TxPacketMap
 
typedef std::map< PTime,
RTP_SequenceNumber
TxPacketTimes
 

Public Member Functions

 SyncSource (OpalRTPSession &session, RTP_SyncSourceId id, Direction dir, const char *cname)
 
virtual ~SyncSource ()
 
virtual SendReceiveStatus OnSendData (RTP_DataFrame &frame, RewriteMode rewrite, const PTime &now)
 
virtual SendReceiveStatus OnReceiveData (RTP_DataFrame &frame, ReceiveType rxType, const PTime &now)
 
virtual SendReceiveStatus OnReceiveRetransmit (RTP_DataFrame &frame, const PTime &now)
 
virtual void SetLastSequenceNumber (RTP_SequenceNumber sequenceNumber)
 
virtual void SaveSentData (const RTP_DataFrame &frame, const PTime &now)
 
virtual void OnRxNACK (const RTP_ControlFrame::LostPacketMask &lostPackets, const PTime &now)
 
virtual bool IsExpectingRetransmit (RTP_SequenceNumber sequenceNumber)
 
virtual SendReceiveStatus OnOutOfOrderPacket (RTP_DataFrame &frame, ReceiveType &rxType, const PTime &now)
 
virtual bool HasPendingFrames () const
 
virtual bool HandlePendingFrames (const PTime &now)
 
void CalculateRTT (const PTime &reportTime, const PTimeInterval &reportDelay, const PTime &now)
 
virtual void CalculateStatistics (const RTP_DataFrame &frame, const PTime &now)
 
virtual void GetStatistics (OpalMediaStatistics &statistics) const
 
virtual bool OnSendReceiverReport (RTP_ControlFrame::ReceiverReport *report, const PTime &now PTRACE_PARAM(, unsigned logLevel))
 
virtual bool OnSendDelayLastReceiverReport (RTP_ControlFrame::DelayLastReceiverReport::Receiver *report, const PTime &now)
 
virtual void OnRxSenderReport (const RTP_SenderReport &report, const PTime &now)
 
virtual void OnRxReceiverReport (const RTP_ReceiverReport &report, const PTime &now)
 
virtual void OnRxDelayLastReceiverReport (const RTP_DelayLastReceiverReport &dlrr, const PTime &now)
 
virtual SendReceiveStatus SendBYE ()
 
bool IsStaleReceiver (const PTime &now) const
 
bool IsRtx () const
 
bool IsNackEnabled () const
 
uint32_t ExtendSequenceNumber (RTP_SequenceNumber sequenceNumber) const
 
OpalJitterBufferGetJitterBuffer () const
 
 PTRACE_THROTTLE (m_throttleSendData, 3, 20000)
 
 PTRACE_THROTTLE (m_throttleReceiveData, 3, 20000)
 
 PTRACE_THROTTLE (m_throttleRxSR, 3, 60000, 5)
 
 PTRACE_THROTTLE (m_throttleRxRR, 3, 60000, 5)
 
 PTRACE_THROTTLE (m_throttleTxRED, 3, 60000)
 
 PTRACE_THROTTLE (m_throttleRxRED, 3, 60000)
 
 PTRACE_THROTTLE (m_throttleRxUnknownFEC, 3, 10000)
 
 PTRACE_THROTTLE (m_throttleInvalidLost, 2, 60000)
 
 P_REMOVE_VIRTUAL (SendReceiveStatus, OnSendData(RTP_DataFrame &, bool), e_AbortTransport)
 
 P_REMOVE_VIRTUAL (SendReceiveStatus, OnSendData(RTP_DataFrame &, RewriteMode), e_AbortTransport)
 
 P_REMOVE_VIRTUAL (SendReceiveStatus, OnOutOfOrderPacket(RTP_DataFrame &), e_AbortTransport)
 
 P_REMOVE_VIRTUAL (SendReceiveStatus, OnReceiveData(RTP_DataFrame &, ReceiveType), e_AbortTransport)
 

Data Fields

OpalRTPSessionm_session
 
Direction m_direction
 
RTP_SyncSourceId m_sourceIdentifier
 
RTP_SyncSourceId m_loopbackIdentifier
 
PString m_canonicalName
 
PString m_mediaStreamId
 
PString m_mediaTrackId
 
RTP_SyncSourceId m_rtxSSRC
 
RTP_DataFrame::PayloadTypes m_rtxPT
 
int m_rtxPackets
 
int m_rtxDuplicates
 
NotifierMap m_notifiers
 
RTP_SequenceNumber m_lastSequenceNumber
 
uint32_t m_firstSequenceNumber
 
uint32_t m_extendedSequenceNumber
 
unsigned m_lastFIRSequenceNumber
 
unsigned m_lastTSTOSequenceNumber
 
unsigned m_consecutiveOutOfOrderPackets
 
PTime m_consecutiveOutOfOrderEndTime
 
RTP_SequenceNumber m_nextOutOfOrderPacket
 
PTime m_endWaitOutOfOrderTime
 
PTime m_lateOutOfOrderAdaptTime
 
unsigned m_lateOutOfOrderAdaptCount
 
unsigned m_lateOutOfOrderAdaptMax
 
PTimeInterval m_lateOutOfOrderAdaptBoost
 
PTimeInterval m_lateOutOfOrderAdaptPeriod
 
RxPacketMap m_pendingRxPackets
 
TxPacketMap m_pendingTxPackets
 
TxPacketTimes m_pendingTxPacketTime
 
PTimeInterval m_pendingTxPacketAgeLimit
 
RTP_Timestamp m_reportTimestamp
 
PTime m_reportAbsoluteTime
 
bool m_synthesizeAbsTime
 
uint64_t m_absSendTimeNTP
 
uint32_t m_absSendTimeLowBits
 
RTP_DataFrame::PayloadTypes m_payloadType
 
PTime m_firstPacketTime
 
unsigned m_packets
 
uint64_t m_octets
 
unsigned m_senderReports
 
atomic< unsigned > m_NACKs
 
int m_packetsMissing
 
int m_packetsUnrecovered
 
int m_maxConsecutiveLost
 
unsigned m_packetsOutOfOrder
 
int m_lateOutOfOrder
 
int m_averagePacketTime
 
int m_maximumPacketTime
 
int m_minimumPacketTime
 
int m_currentJitter
 
int m_maximumJitter
 
unsigned m_markerCount
 
RTP_Timestamp m_lastPacketTimestamp
 
PTime m_lastPacketAbsTime
 
PTime m_lastPacketNetTime
 
unsigned m_averageTimeAccum
 
unsigned m_maximumTimeAccum
 
unsigned m_minimumTimeAccum
 
unsigned m_jitterAccum
 
unsigned m_lastRRPacketsReceived
 
uint32_t m_lastRRSequenceNumber
 
float m_rtcpDiscardRate
 
int m_rtcpJitterBufferDelay
 
uint64_t m_ntpPassThrough
 
PTime m_lastSenderReportTime
 
PTime m_lastReferencedTime
 
PTime m_referenceReportTime
 
PTime m_referenceReportNTP
 
unsigned m_statisticsCount
 
OpalJitterBufferm_jitterBuffer
 

Member Typedef Documentation

Constructor & Destructor Documentation

OpalRTPSession::SyncSource::SyncSource ( OpalRTPSession session,
RTP_SyncSourceId  id,
Direction  dir,
const char *  cname 
)
virtual OpalRTPSession::SyncSource::~SyncSource ( )
virtual

Member Function Documentation

void OpalRTPSession::SyncSource::CalculateRTT ( const PTime &  reportTime,
const PTimeInterval &  reportDelay,
const PTime &  now 
)
virtual void OpalRTPSession::SyncSource::CalculateStatistics ( const RTP_DataFrame frame,
const PTime &  now 
)
virtual
uint32_t OpalRTPSession::SyncSource::ExtendSequenceNumber ( RTP_SequenceNumber  sequenceNumber) const
OpalJitterBuffer* OpalRTPSession::SyncSource::GetJitterBuffer ( ) const
virtual void OpalRTPSession::SyncSource::GetStatistics ( OpalMediaStatistics statistics) const
virtual
virtual bool OpalRTPSession::SyncSource::HandlePendingFrames ( const PTime &  now)
virtual
virtual bool OpalRTPSession::SyncSource::HasPendingFrames ( ) const
virtual
virtual bool OpalRTPSession::SyncSource::IsExpectingRetransmit ( RTP_SequenceNumber  sequenceNumber)
virtual
bool OpalRTPSession::SyncSource::IsNackEnabled ( ) const
inline
bool OpalRTPSession::SyncSource::IsRtx ( ) const
inline
bool OpalRTPSession::SyncSource::IsStaleReceiver ( const PTime &  now) const
virtual SendReceiveStatus OpalRTPSession::SyncSource::OnOutOfOrderPacket ( RTP_DataFrame frame,
ReceiveType rxType,
const PTime &  now 
)
virtual
virtual SendReceiveStatus OpalRTPSession::SyncSource::OnReceiveData ( RTP_DataFrame frame,
ReceiveType  rxType,
const PTime &  now 
)
virtual
virtual SendReceiveStatus OpalRTPSession::SyncSource::OnReceiveRetransmit ( RTP_DataFrame frame,
const PTime &  now 
)
virtual
virtual void OpalRTPSession::SyncSource::OnRxDelayLastReceiverReport ( const RTP_DelayLastReceiverReport dlrr,
const PTime &  now 
)
virtual
virtual void OpalRTPSession::SyncSource::OnRxNACK ( const RTP_ControlFrame::LostPacketMask lostPackets,
const PTime &  now 
)
virtual
virtual void OpalRTPSession::SyncSource::OnRxReceiverReport ( const RTP_ReceiverReport report,
const PTime &  now 
)
virtual
virtual void OpalRTPSession::SyncSource::OnRxSenderReport ( const RTP_SenderReport report,
const PTime &  now 
)
virtual
virtual SendReceiveStatus OpalRTPSession::SyncSource::OnSendData ( RTP_DataFrame frame,
RewriteMode  rewrite,
const PTime &  now 
)
virtual
virtual bool OpalRTPSession::SyncSource::OnSendDelayLastReceiverReport ( RTP_ControlFrame::DelayLastReceiverReport::Receiver report,
const PTime &  now 
)
virtual
virtual bool OpalRTPSession::SyncSource::OnSendReceiverReport ( RTP_ControlFrame::ReceiverReport report,
const PTime &now   PTRACE_PARAM, unsigned logLevel 
)
virtual
OpalRTPSession::SyncSource::P_REMOVE_VIRTUAL ( SendReceiveStatus  ,
OnSendData(RTP_DataFrame &, bool)  ,
e_AbortTransport   
)
OpalRTPSession::SyncSource::P_REMOVE_VIRTUAL ( SendReceiveStatus  ,
OnSendData(RTP_DataFrame &, RewriteMode ,
e_AbortTransport   
)
OpalRTPSession::SyncSource::P_REMOVE_VIRTUAL ( SendReceiveStatus  ,
OnOutOfOrderPacket(RTP_DataFrame &)  ,
e_AbortTransport   
)
OpalRTPSession::SyncSource::P_REMOVE_VIRTUAL ( SendReceiveStatus  ,
OnReceiveData(RTP_DataFrame &, ReceiveType ,
e_AbortTransport   
)
OpalRTPSession::SyncSource::PTRACE_THROTTLE ( m_throttleSendData  ,
,
20000   
)
OpalRTPSession::SyncSource::PTRACE_THROTTLE ( m_throttleReceiveData  ,
,
20000   
)
OpalRTPSession::SyncSource::PTRACE_THROTTLE ( m_throttleRxSR  ,
,
60000  ,
 
)
OpalRTPSession::SyncSource::PTRACE_THROTTLE ( m_throttleRxRR  ,
,
60000  ,
 
)
OpalRTPSession::SyncSource::PTRACE_THROTTLE ( m_throttleTxRED  ,
,
60000   
)
OpalRTPSession::SyncSource::PTRACE_THROTTLE ( m_throttleRxRED  ,
,
60000   
)
OpalRTPSession::SyncSource::PTRACE_THROTTLE ( m_throttleRxUnknownFEC  ,
,
10000   
)
OpalRTPSession::SyncSource::PTRACE_THROTTLE ( m_throttleInvalidLost  ,
,
60000   
)
virtual void OpalRTPSession::SyncSource::SaveSentData ( const RTP_DataFrame frame,
const PTime &  now 
)
virtual
virtual SendReceiveStatus OpalRTPSession::SyncSource::SendBYE ( )
virtual
virtual void OpalRTPSession::SyncSource::SetLastSequenceNumber ( RTP_SequenceNumber  sequenceNumber)
virtual

Field Documentation

uint32_t OpalRTPSession::SyncSource::m_absSendTimeLowBits
uint64_t OpalRTPSession::SyncSource::m_absSendTimeNTP
int OpalRTPSession::SyncSource::m_averagePacketTime
unsigned OpalRTPSession::SyncSource::m_averageTimeAccum
PString OpalRTPSession::SyncSource::m_canonicalName
PTime OpalRTPSession::SyncSource::m_consecutiveOutOfOrderEndTime
unsigned OpalRTPSession::SyncSource::m_consecutiveOutOfOrderPackets
int OpalRTPSession::SyncSource::m_currentJitter
Direction OpalRTPSession::SyncSource::m_direction
PTime OpalRTPSession::SyncSource::m_endWaitOutOfOrderTime
uint32_t OpalRTPSession::SyncSource::m_extendedSequenceNumber
PTime OpalRTPSession::SyncSource::m_firstPacketTime
uint32_t OpalRTPSession::SyncSource::m_firstSequenceNumber
unsigned OpalRTPSession::SyncSource::m_jitterAccum
OpalJitterBuffer* OpalRTPSession::SyncSource::m_jitterBuffer
unsigned OpalRTPSession::SyncSource::m_lastFIRSequenceNumber
PTime OpalRTPSession::SyncSource::m_lastPacketAbsTime
PTime OpalRTPSession::SyncSource::m_lastPacketNetTime
RTP_Timestamp OpalRTPSession::SyncSource::m_lastPacketTimestamp
PTime OpalRTPSession::SyncSource::m_lastReferencedTime
unsigned OpalRTPSession::SyncSource::m_lastRRPacketsReceived
uint32_t OpalRTPSession::SyncSource::m_lastRRSequenceNumber
PTime OpalRTPSession::SyncSource::m_lastSenderReportTime
RTP_SequenceNumber OpalRTPSession::SyncSource::m_lastSequenceNumber
unsigned OpalRTPSession::SyncSource::m_lastTSTOSequenceNumber
int OpalRTPSession::SyncSource::m_lateOutOfOrder
PTimeInterval OpalRTPSession::SyncSource::m_lateOutOfOrderAdaptBoost
unsigned OpalRTPSession::SyncSource::m_lateOutOfOrderAdaptCount
unsigned OpalRTPSession::SyncSource::m_lateOutOfOrderAdaptMax
PTimeInterval OpalRTPSession::SyncSource::m_lateOutOfOrderAdaptPeriod
PTime OpalRTPSession::SyncSource::m_lateOutOfOrderAdaptTime
RTP_SyncSourceId OpalRTPSession::SyncSource::m_loopbackIdentifier
unsigned OpalRTPSession::SyncSource::m_markerCount
int OpalRTPSession::SyncSource::m_maxConsecutiveLost
int OpalRTPSession::SyncSource::m_maximumJitter
int OpalRTPSession::SyncSource::m_maximumPacketTime
unsigned OpalRTPSession::SyncSource::m_maximumTimeAccum
PString OpalRTPSession::SyncSource::m_mediaStreamId
PString OpalRTPSession::SyncSource::m_mediaTrackId
int OpalRTPSession::SyncSource::m_minimumPacketTime
unsigned OpalRTPSession::SyncSource::m_minimumTimeAccum
atomic<unsigned> OpalRTPSession::SyncSource::m_NACKs
RTP_SequenceNumber OpalRTPSession::SyncSource::m_nextOutOfOrderPacket
NotifierMap OpalRTPSession::SyncSource::m_notifiers
uint64_t OpalRTPSession::SyncSource::m_ntpPassThrough
uint64_t OpalRTPSession::SyncSource::m_octets
unsigned OpalRTPSession::SyncSource::m_packets
int OpalRTPSession::SyncSource::m_packetsMissing
unsigned OpalRTPSession::SyncSource::m_packetsOutOfOrder
int OpalRTPSession::SyncSource::m_packetsUnrecovered
RTP_DataFrame::PayloadTypes OpalRTPSession::SyncSource::m_payloadType
RxPacketMap OpalRTPSession::SyncSource::m_pendingRxPackets
PTimeInterval OpalRTPSession::SyncSource::m_pendingTxPacketAgeLimit
TxPacketMap OpalRTPSession::SyncSource::m_pendingTxPackets
TxPacketTimes OpalRTPSession::SyncSource::m_pendingTxPacketTime
PTime OpalRTPSession::SyncSource::m_referenceReportNTP
PTime OpalRTPSession::SyncSource::m_referenceReportTime
PTime OpalRTPSession::SyncSource::m_reportAbsoluteTime
RTP_Timestamp OpalRTPSession::SyncSource::m_reportTimestamp
float OpalRTPSession::SyncSource::m_rtcpDiscardRate
int OpalRTPSession::SyncSource::m_rtcpJitterBufferDelay
int OpalRTPSession::SyncSource::m_rtxDuplicates
int OpalRTPSession::SyncSource::m_rtxPackets
RTP_DataFrame::PayloadTypes OpalRTPSession::SyncSource::m_rtxPT

Referenced by IsRtx().

RTP_SyncSourceId OpalRTPSession::SyncSource::m_rtxSSRC
unsigned OpalRTPSession::SyncSource::m_senderReports
OpalRTPSession& OpalRTPSession::SyncSource::m_session

Referenced by IsNackEnabled().

RTP_SyncSourceId OpalRTPSession::SyncSource::m_sourceIdentifier
unsigned OpalRTPSession::SyncSource::m_statisticsCount
bool OpalRTPSession::SyncSource::m_synthesizeAbsTime

The documentation for this struct was generated from the following file: