|
|
Class that handles incoming RTP and RTCP packets
| inline RTPReceiver (RTPSession* session = 0)
| RTPReceiver |
Constructor
| ~RTPReceiver ()
| ~RTPReceiver |
[virtual]
Destructor - gets rid of the jitter buffer if present
| inline u_int32_t ioPacketsLost ()
| ioPacketsLost |
[const]
Retrieve the number of lost packets in current session
Returns: Number of packets in sequence gaps
| void setDejitter (RTPDejitter* dejitter)
| setDejitter |
Set a new dejitter buffer in this receiver
Parameters:
| dejitter | New dejitter buffer to set, NULL to remove |
| inline void setDejitter (unsigned int mindelay, unsigned int maxdelay)
| setDejitter |
Allocate and set a new dejitter buffer in this receiver
Parameters:
| mindelay | Minimum length of the dejitter buffer in microseconds |
| maxdelay | Maximum length of the dejitter buffer in microseconds |
| bool rtpRecv (bool marker, int payload, unsigned int timestamp,
const void* data, int len)
| rtpRecv |
[virtual]
Process one RTP payload packet. Default behaviour is to call rtpRecvData() or rtpRecvEvent().
Parameters:
| marker | Set to true if the marker bit is set |
| 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 |
Returns: True if data was handled
| bool rtpRecvData (bool marker, unsigned int timestamp,
const void* data, int len)
| rtpRecvData |
[virtual]
Process one RTP data packet
Parameters:
| marker | Set to true if the marker bit is set |
| timestamp | Sampling instant of the packet data |
| data | Pointer to data block to process |
| len | Length of the data block in bytes |
Returns: True if data was handled
| bool rtpRecvEvent (int event, char key, int duration,
int volume, unsigned int timestamp)
| rtpRecvEvent |
[virtual]
Process one RTP event
Parameters:
| event | Received event code |
| key | Received key (for events 0-16) or zero |
| duration | Duration of the event as number of samples |
| volume | Attenuation of the tone, zero for don't care |
| timestamp | Sampling instant of the initial packet data |
Returns: True if data was handled
| void rtpNewPayload (int payload, unsigned int timestamp)
| rtpNewPayload |
[virtual]
Method called for unknown payload types just before attempting to call rtpRecvData(). This is a good opportunity to change the payload type and continue.
Parameters:
| payload | Payload number |
| timestamp | Sampling instant of the unexpected packet data |
| void rtpNewSSRC (u_int32_t newSsrc, bool marker)
| rtpNewSSRC |
[virtual]
Method called when a packet with an unexpected SSRC is received just before processing further. This is a good opportunity to change the SSRC and continue
Parameters:
| newSsrc | SSRC received in packet |
| marker | True if marker bit is set in the RTP packet |
| void stats (NamedList& stat)
| stats |
[const virtual]
Retrieve the statistical data from this receiver in a NamedList. Reset all the data.
Parameters:
| stat | NamedList to populate with the values for different counters |
| void timerTick (const Time& when)
| timerTick |
[protected virtual]
Method called periodically to finish lingering events
Parameters:
| when | Time to use as base in all computing |
Reimplemented from RTPBaseIO.
| bool rtpDecipher (unsigned char* data, int len, const void* secData, u_int32_t ssrc, u_int64_t seq)
| rtpDecipher |
[protected virtual]
Method called to decipher RTP data in-place. The default implementation calls session's RTPSecure::rtpDecipher()
Parameters:
| data | Pointer to data block to decipher |
| len | Length of data including any padding |
| secData | Pointer to security data if applicable |
| ssrc | SSRC of the packet to decipher |
| seq | Full (48 bit) seqence number of the packet including rollovers |
Returns: True is the packet was deciphered correctly or can't tell
| bool rtpCheckIntegrity (const unsigned char* data, int len, const void* authData, u_int32_t ssrc, u_int64_t seq)
| rtpCheckIntegrity |
[protected virtual]
Method called to check the integrity of the RTP packet. The default implementation calls session's RTPSecure::rtpCheckIntegrity()
Parameters:
| data | Pointer to RTP header and data |
| len | Length of header, data and padding |
| authData | Pointer to authentication data |
| ssrc | SSRC of the packet to validate |
| seq | Full (48 bit) seqence number of the packet including rollovers |
Returns: True is the packet passed integrity checks
| u_int32_t m_ioLostPkt | m_ioLostPkt |
[protected]
| Generated by: paulc on bussard on Thu Jul 24 18:41:02 2014, using kdoc 2.0a54. |