RTP Audio System
2.0.0
|
RTP Sender. More...
#include <rtpsender.h>
RTPSender::RTPSender | ( | const InternetFlow & | flow, |
const card32 | ssrc, | ||
EncoderInterface * | encoder, | ||
Socket * | senderSocket, | ||
const card32 | controlPPID, | ||
const card32 | dataPPID, | ||
const cardinal | maxPacketSize = 1500 , |
||
QoSManagerInterface * | qosManager = NULL |
||
) |
Constructor for new RTPSender. The new sender's thread has to be started by calling start()!
flow | Flow to remote side. |
ssrc | Sender's SSRC (see RFC 1889). |
encoder | Encoder to get packets to send from. |
senderSocket | Socket to write packets to. |
controlPPID | PPID for SCTP control transport. |
dataPPID | PPID for SCTP data transport. |
maxPacketSize | Maximum packet size. |
qosManager | QoS manager. |
Destructor.
card64 RTPSender::getBytesSent | ( | ) | [inline] |
Get number of bytes sent.
cardinal RTPSender::getMaxPacketSize | ( | ) | const [inline] |
Get maximum packet size.
card64 RTPSender::getPacketsSent | ( | ) | [inline] |
Get number of packets sent.
AbstractQoSDescription * RTPSender::getQoSDescription | ( | const card64 | offset | ) | [virtual] |
Implementation of ManagedStreamInterface's getQoSDescription().
Implements ManagedStreamInterface.
void RTPSender::init | ( | const InternetFlow & | flow, |
const card32 | ssrc, | ||
EncoderInterface * | encoder, | ||
Socket * | senderSocket, | ||
const card32 | controlPPID, | ||
const card32 | dataPPID, | ||
const cardinal | maxPacketSize = 1500 , |
||
QoSManagerInterface * | qosManager = NULL |
||
) |
Initialize new RTPSender. The new sender's thread has to be started by calling start()!
flow | Flow to remote side. |
ssrc | Sender's SSRC (see RFC 1889). |
encoder | Encoder to get packets to send from. |
senderSocket | Socket to write packets to. |
controlPPID | PPID for SCTP control transport. |
dataPPID | PPID for SCTP data transport. |
maxPacketSize | Maximum packet size. |
qosManager | QoS manager. |
void RTPSender::lock | ( | ) | [virtual] |
Implementation of ManagedStreamInterface's lock().
Implements ManagedStreamInterface.
bool RTPSender::paused | ( | ) | const [inline] |
Check, if transmission is paused.
void RTPSender::resetBytesSent | ( | ) | [inline] |
Reset number of bytes sent.
void RTPSender::resetPacketsSent | ( | ) | [inline] |
Reset number of packets sent.
cardinal RTPSender::setMaxPacketSize | ( | const cardinal | size | ) | [inline] |
Set maximum packet size.
size | Maximum packet size. |
void RTPSender::setPause | ( | const bool | on | ) | [inline] |
Set pause on or off.
on | true to set pause on; false to set pause off. |
void RTPSender::timerEvent | ( | ) | [private, virtual] |
The virtual timerEvent() method, which contains the timed thread's implementation. It has to be implemented by classes, which inherit TimedThread. This method is called regularly with the given interval.
Implements TimedThread.
bool RTPSender::transmissionErrorDetected | ( | ) | [inline] |
Check, if transmission error has been detected (e.g. destination rejects packets, no route etc.). Note: The transmission error attribute will be resetted to false by calling this method.
void RTPSender::unlock | ( | ) | [virtual] |
Implementation of ManagedStreamInterface's unlock().
Implements ManagedStreamInterface.
void RTPSender::updateFrameRate | ( | const AbstractQoSDescription * | aqd | ) | [private] |
void RTPSender::updateQuality | ( | const AbstractQoSDescription * | aqd | ) | [virtual] |
Implementation of ManagedStreamInterface's updateQuality().
Implements ManagedStreamInterface.
double RTPSender::BufferDelay[RTPConstants::RTPMaxQualityLayers] [private] |
card64 RTPSender::BytesSent [private] |
card32 RTPSender::ControlPPID [private] |
card32 RTPSender::DataPPID [private] |
EncoderInterface* RTPSender::Encoder [private] |
cardinal RTPSender::FramesPerSecond [private] |
cardinal RTPSender::MaxPacketSize [private] |
card64 RTPSender::PacketsSent [private] |
bool RTPSender::Pause [private] |
card32 RTPSender::PayloadBytesSent [private] |
card32 RTPSender::PayloadPacketsSent [private] |
QoSManagerInterface* RTPSender::QoSMgr [private] |
cardinal RTPSender::RenewCounter [private] |
Socket* RTPSender::SenderSocket [private] |
card32 RTPSender::SSRC [private] |
card64 RTPSender::TimeStamp [private] |
bool RTPSender::TransmissionError [private] |