OPAL  Version 3.10.4
SecureRTP_UDP Class Reference

#include <rtp.h>

Inheritance diagram for SecureRTP_UDP:
RTP_UDP RTP_Session
- Public Member Functions inherited from RTP_UDP
virtual PBoolean ModifyQOS (RTP_QOS *rtpqos)
virtual void Reopen (PBoolean isReading)
virtual int GetDataSocketHandle () const
virtual int GetControlSocketHandle () const
virtual int WaitForPDU (PUDPSocket &dataSocket, PUDPSocket &controlSocket, const PTimeInterval &timer)
virtual int Internal_WaitForPDU (PUDPSocket &dataSocket, PUDPSocket &controlSocket, const PTimeInterval &timer)
virtual SendReceiveStatus ReadDataPDU (RTP_DataFrame &frame)
virtual SendReceiveStatus Internal_ReadDataPDU (RTP_DataFrame &frame)
virtual SendReceiveStatus OnReadTimeout (RTP_DataFrame &frame)
virtual SendReceiveStatus Internal_OnReadTimeout (RTP_DataFrame &frame)
virtual SendReceiveStatus ReadControlPDU ()
virtual SendReceiveStatus ReadDataOrControlPDU (BYTE *framePtr, PINDEX frameSize, PBoolean fromDataChannel)
virtual bool WriteDataPDU (RTP_DataFrame &frame)
virtual bool WriteDataOrControlPDU (const BYTE *framePtr, PINDEX frameSize, bool toDataChannel)
virtual void SetEncoding (const PString &newEncoding)
 RTP_UDP (const Params &options)
 ~RTP_UDP ()
 Destroy the RTP.
virtual PBoolean ReadData (RTP_DataFrame &frame)
virtual PBoolean Internal_ReadData (RTP_DataFrame &frame)
virtual PBoolean WriteData (RTP_DataFrame &frame)
virtual PBoolean Internal_WriteData (RTP_DataFrame &frame)
virtual PBoolean WriteOOBData (RTP_DataFrame &frame, bool setTimeStamp=true)
virtual PBoolean WriteControl (RTP_ControlFrame &frame)
virtual bool Close (PBoolean reading)
virtual PString GetLocalHostName ()
virtual PBoolean Open (PIPSocket::Address localAddress, WORD portBase, WORD portMax, BYTE ipTypeOfService, PNatMethod *natMethod=NULL, RTP_QOS *rtpqos=NULL)
virtual PIPSocket::Address GetLocalAddress () const
virtual void SetLocalAddress (const PIPSocket::Address &addr)
PIPSocket::Address GetRemoteAddress () const
virtual WORD GetLocalDataPort () const
virtual WORD GetLocalControlPort () const
virtual WORD GetRemoteDataPort () const
virtual WORD GetRemoteControlPort () const
virtual PUDPSocket & GetDataSocket ()
virtual PUDPSocket & GetControlSocket ()
virtual PBoolean SetRemoteSocketInfo (PIPSocket::Address address, WORD port, PBoolean isDataPort)
virtual void ApplyQOS (const PIPSocket::Address &addr)
- Public Member Functions inherited from RTP_Session
virtual void SetCloseOnBYE (PBoolean v)
virtual void SendIntraFrameRequest (bool rfc2032, bool pictureLoss)
virtual void SendTemporalSpatialTradeOff (unsigned tradeOff)
void SetNextSentSequenceNumber (WORD num)
virtual PString GetEncoding () const
DWORD GetSyncSourceIn () const
void SetFailed (bool v)
bool HasFailed () const
void AddFilter (const FilterNotifier &filter)
virtual void SendBYE ()
 RTP_Session (const Params &options)
 ~RTP_Session ()
void SetJitterBufferSize (unsigned minJitterDelay, unsigned maxJitterDelay, unsigned timeUnits=0, PINDEX packetSize=2048)
unsigned GetJitterBufferSize () const
unsigned GetJitterBufferDelay () const
unsigned GetJitterTimeUnits () const
virtual PBoolean ReadBufferedData (RTP_DataFrame &frame)
virtual PBoolean SendReport ()
virtual void GetStatistics (OpalMediaStatistics &statistics, bool receiver) const
virtual SendReceiveStatus OnSendData (RTP_DataFrame &frame)
virtual SendReceiveStatus Internal_OnSendData (RTP_DataFrame &frame)
virtual SendReceiveStatus OnSendControl (RTP_ControlFrame &frame, PINDEX &len)
virtual SendReceiveStatus Internal_OnSendControl (RTP_ControlFrame &frame, PINDEX &len)
virtual SendReceiveStatus OnReceiveData (RTP_DataFrame &frame)
virtual SendReceiveStatus Internal_OnReceiveData (RTP_DataFrame &frame)
virtual SendReceiveStatus OnReceiveControl (RTP_ControlFrame &frame)
 PARRAY (ReceiverReportArray, ReceiverReport)
virtual void OnRxSenderReport (const SenderReport &sender, const ReceiverReportArray &reports)
virtual void OnRxReceiverReport (DWORD src, const ReceiverReportArray &reports)
virtual void OnReceiverReports (const ReceiverReportArray &reports)
 PARRAY (SourceDescriptionArray, SourceDescription)
virtual void OnRxSourceDescription (const SourceDescriptionArray &descriptions)
virtual void OnRxGoodbye (const PDWORDArray &sources, const PString &reason)
virtual void OnRxApplDefined (const PString &type, unsigned subtype, DWORD src, const BYTE *data, PINDEX size)
unsigned GetSessionID () const
void SetSessionID (unsigned id)
bool IsAudio () const
void SetAudio (bool aud)
PString GetCanonicalName () const
void SetCanonicalName (const PString &name)
PString GetToolName () const
void SetToolName (const PString &name)
RTP_UserDataGetUserData () const
void SetUserData (RTP_UserData *data, PBoolean autoDeleteUserData=true)
DWORD GetSyncSourceOut () const
bool AllowAnySyncSource () const
void SetAnySyncSource (bool allow)
void SetIgnorePayloadTypeChanges (PBoolean ignore)
const PTimeInterval & GetReportTimeInterval ()
void SetReportTimeInterval (const PTimeInterval &interval)
PTimeInterval GetReportTimer ()
unsigned GetTxStatisticsInterval ()
void SetTxStatisticsInterval (unsigned packets)
unsigned GetRxStatisticsInterval ()
void SetRxStatisticsInterval (unsigned packets)
void ClearStatistics ()
DWORD GetPacketsSent () const
DWORD GetOctetsSent () const
DWORD GetPacketsReceived () const
DWORD GetOctetsReceived () const
DWORD GetPacketsLost () const
DWORD GetPacketsLostByRemote () const
DWORD GetPacketsOutOfOrder () const
DWORD GetPacketsTooLate () const
DWORD GetPacketOverruns () const
DWORD GetAverageSendTime () const
DWORD GetMarkerRecvCount () const
DWORD GetMarkerSendCount () const
DWORD GetMaximumSendTime () const
DWORD GetMinimumSendTime () const
DWORD GetAverageReceiveTime () const
DWORD GetMaximumReceiveTime () const
DWORD GetMinimumReceiveTime () const
DWORD GetAvgJitterTime () const
DWORD GetMaxJitterTime () const
DWORD GetJitterTimeOnRemote () const
- Protected Attributes inherited from RTP_UDP
PIPSocket::Address localAddress
WORD localDataPort
WORD localControlPort
PIPSocket::Address remoteAddress
WORD remoteDataPort
WORD remoteControlPort
PIPSocket::Address remoteTransmitAddress
PUDPSocket * dataSocket
PUDPSocket * controlSocket
bool shutdownRead
bool shutdownWrite
bool appliedQOS
bool remoteIsNAT
bool localHasNAT
bool m_firstData
bool m_firstControl
int badTransmitCounter
PTime badTransmitStart
PTimer timerWriteDataIdle
- Protected Attributes inherited from RTP_Session
PString m_encoding
PMutex m_encodingMutex
RTP_Encodingm_encodingHandler
unsigned sessionID
bool isAudio
unsigned m_timeUnits
PString canonicalName
PString toolName
RTP_UserDatauserData
PBoolean autoDeleteUserData
JitterBufferPtr m_jitterBuffer
DWORD syncSourceOut
DWORD syncSourceIn
DWORD lastSentTimestamp
bool allowAnySyncSource
bool allowOneSyncSourceChange
PBoolean allowRemoteTransmitAddressChange
PBoolean allowSequenceChange
PTimeInterval reportTimeInterval
unsigned txStatisticsInterval
unsigned rxStatisticsInterval
WORD lastSentSequenceNumber
WORD expectedSequenceNumber
PTimeInterval lastSentPacketTime
PTimeInterval lastReceivedPacketTime
PTime lastSRTimestamp
PTime lastSRReceiveTime
PTimeInterval delaySinceLastSR
WORD lastRRSequenceNumber
bool resequenceOutOfOrderPackets
unsigned consecutiveOutOfOrderPackets
PTimeInterval outOfOrderWaitTime
PTimeInterval outOfOrderPacketTime
std::list< RTP_DataFramem_outOfOrderPackets
PMutex dataMutex
DWORD timeStampOffs
PBoolean oobTimeStampBaseEstablished
DWORD oobTimeStampOutBase
PTimeInterval oobTimeStampBase
PTime firstPacketSent
DWORD packetsSent
DWORD rtcpPacketsSent
DWORD octetsSent
PTime firstPacketReceived
DWORD packetsReceived
DWORD senderReportsReceived
DWORD octetsReceived
DWORD packetsLost
DWORD packetsLostByRemote
DWORD packetsOutOfOrder
DWORD averageSendTime
DWORD maximumSendTime
DWORD minimumSendTime
DWORD averageReceiveTime
DWORD maximumReceiveTime
DWORD minimumReceiveTime
DWORD jitterLevel
DWORD jitterLevelOnRemote
DWORD maximumJitterLevel
DWORD markerSendCount
DWORD markerRecvCount
unsigned txStatisticsCount
unsigned rxStatisticsCount
DWORD averageSendTimeAccum
DWORD maximumSendTimeAccum
DWORD minimumSendTimeAccum
DWORD averageReceiveTimeAccum
DWORD maximumReceiveTimeAccum
DWORD minimumReceiveTimeAccum
DWORD packetsLostSinceLastRR
DWORD lastTransitTime
RTP_DataFrame::PayloadTypes lastReceivedPayloadType
PBoolean ignorePayloadTypeChanges
PMutex reportMutex
PTimer reportTimer
PBoolean closeOnBye
PBoolean byeSent
bool failed
 set to true if session has received too many ICMP destination unreachable
list< FilterNotifierm_filters

Construction

OpalSecurityModesecurityParms
 SecureRTP_UDP (const Params &options)
 ~SecureRTP_UDP ()
 Destroy the RTP.
virtual void SetSecurityMode (OpalSecurityMode *srtpParms)
virtual OpalSecurityModeGetSecurityParms () const

Additional Inherited Members

- Protected Member Functions inherited from RTP_UDP
 PDECLARE_NOTIFIER (PTimer, RTP_UDP, OnWriteDataIdle)
- Protected Member Functions inherited from RTP_Session
void AddReceiverReport (RTP_ControlFrame::ReceiverReport &receiver)
PBoolean InsertReportPacket (RTP_ControlFrame &report)
void SaveOutOfOrderPacket (RTP_DataFrame &frame)

Constructor & Destructor Documentation

SecureRTP_UDP::SecureRTP_UDP ( const Params options)

Create a new RTP channel.

Parameters:
optionsParameters to construct with session.
SecureRTP_UDP::~SecureRTP_UDP ( )

Destroy the RTP.


Member Function Documentation

virtual OpalSecurityMode* SecureRTP_UDP::GetSecurityParms ( ) const
virtual
virtual void SecureRTP_UDP::SetSecurityMode ( OpalSecurityMode srtpParms)
virtual

Field Documentation

OpalSecurityMode* SecureRTP_UDP::securityParms
protected

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