|
Yate
|
RTP/RTCP packet sender. More...
#include <yatertp.h>
Public Member Functions | |
| RTPSender (RTPSession *session=0, bool randomTs=true) | |
| virtual | ~RTPSender () |
| bool | rtpSend (bool marker, int payload, unsigned int timestamp, const void *data, int len) |
| bool | rtpSendData (bool marker, unsigned int timestamp, const void *data, int len) |
| bool | rtpSendEvent (int event, int duration, int volume=0, unsigned int timestamp=0) |
| bool | rtpSendKey (char key, int duration, int volume=0, unsigned int timestamp=0) |
| int | padding () const |
| bool | padding (int chunk) |
| virtual void | stats (NamedList &stat) const |
Public Member Functions inherited from RTPBaseIO | |
| RTPBaseIO (RTPSession *session=0) | |
| virtual | ~RTPBaseIO () |
| int | dataPayload () const |
| bool | dataPayload (int type) |
| int | eventPayload () const |
| bool | eventPayload (int type) |
| int | silencePayload () const |
| bool | silencePayload (int type) |
| unsigned int | ssrcInit () |
| void | reset () |
| unsigned int | ssrc () const |
| void | ssrc (unsigned int src) |
| u_int16_t | seq () const |
| u_int32_t | rollover () const |
| u_int64_t | fullSeq () const |
| u_int32_t | ioPackets () const |
| u_int32_t | ioOctets () const |
| unsigned int | tsLast () const |
| RTPSession * | session () const |
| RTPSecure * | security () const |
| void | security (RTPSecure *secure) |
| void | initDebugData (bool recv, const NamedList ¶ms) |
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) |
| virtual void | rtpEncipher (unsigned char *data, int len) |
| virtual void | rtpAddIntegrity (const unsigned char *data, int len, unsigned char *authData) |
Protected Member Functions inherited from RTPBaseIO | |
| void | secLength (u_int32_t len, u_int32_t key=0) |
Protected Member Functions inherited from RTPDebug | |
| void | setDebug (DebugEnabler *dbg, const char *traceId) |
Additional Inherited Members | |
Protected Attributes inherited from RTPBaseIO | |
| RTPSession * | m_session |
| RTPSecure * | m_secure |
| bool | m_ssrcInit |
| u_int32_t | m_ssrc |
| u_int32_t | m_ts |
| u_int16_t | m_seq |
| u_int32_t | m_rollover |
| u_int16_t | m_secLen |
| u_int16_t | m_mkiLen |
| u_int32_t | m_evTs |
| int | m_evNum |
| int | m_evVol |
| unsigned int | m_evSeq |
| u_int32_t | m_ioPackets |
| u_int32_t | m_ioOctets |
| unsigned int | m_tsLast |
| int | m_debugDataLevel |
| bool | m_debugData |
| bool | m_debugEvent |
Protected Attributes inherited from RTPDebug | |
| DebugEnabler * | m_dbg |
| String | m_traceId |
RTP/RTCP packet sender.
Class that builds and sends RTP and RTCP packets
| RTPSender | ( | RTPSession * | session = 0, |
| bool | randomTs = true ) |
Constructor
| session | RTP session the sender belongs |
| randomTs | Initialize a random timestamp offset |
References RTPBaseIO::session().
|
inlinevirtual |
Do-nothing destructor
|
inline |
Get the payload padding size
| bool padding | ( | int | chunk | ) |
Set the padding to a multiple of a data chunk
| chunk | Size to pad the payload to a multiple of |
|
protectedvirtual |
Method called to add integrity information to the RTP packet. The default implementation calls session's rtpAddIntegrity()
| data | Pointer to the RTP packet to protect |
| len | Length of RTP data to be encrypted including header and padding |
| authData | Address to write the integrity data to |
|
protectedvirtual |
Method called to encipher RTP payload data in-place. The default implementation calls session's rtpEncipher()
| data | Pointer to data block to encipher |
| len | Length of payload data to be encrypted including any padding |
| bool rtpSend | ( | bool | marker, |
| int | payload, | ||
| unsigned int | timestamp, | ||
| const void * | data, | ||
| int | len ) |
Send one RTP payload packet
| marker | Set to true if the marker bit must be set |
| payload | Payload number |
| timestamp | Sampling instant of the packet data |
| data | Pointer to data block to send |
| len | Length of the data block |
| bool rtpSendData | ( | bool | marker, |
| unsigned int | timestamp, | ||
| const void * | data, | ||
| int | len ) |
Send one RTP data packet
| marker | Set to true if the marker bit must be set |
| timestamp | Sampling instant of the packet data |
| data | Pointer to data block to send |
| len | Length of the data block |
| bool rtpSendEvent | ( | int | event, |
| int | duration, | ||
| int | volume = 0, | ||
| unsigned int | timestamp = 0 ) |
Send one RTP event
| event | Event code to send |
| duration | Duration of the event as number of samples |
| volume | Attenuation of the tone, zero for don't care |
| timestamp | Sampling instant of the packet data, zero to use current |
| bool rtpSendKey | ( | char | key, |
| int | duration, | ||
| int | volume = 0, | ||
| unsigned int | timestamp = 0 ) |
Send one RTP key event
| key | Key to send |
| duration | Duration of the event as number of samples |
| volume | Attenuation of the tone, zero for don't care |
| timestamp | Sampling instant of the packet data, zero to use current |
|
virtual |
|
protectedvirtual |