EMIPLIB
|
A base class for RTP decoding objects. More...
#include <miprtpdecoder.h>
Public Member Functions | |
bool | init (bool calcStreamTime=true, MIPRTPSynchronizer *pSynchronizer=0, jrtplib::RTPSession *pRTPSess=0) |
Initializes the RTP decoder. | |
bool | setDefaultPacketDecoder (MIPRTPPacketDecoder *pDec) |
Installs a default RTP packet decoder (for all payload types). | |
bool | setPacketDecoder (uint8_t payloadType, MIPRTPPacketDecoder *pDec) |
Installs an RTP packet decoder for a specific payload type. | |
void | setMaximumJitterBuffering (MIPTime t) |
Sets the maximum amount of jitter buffering that may be done. |
This class provides some general functions for decoding RTP packets. It analyzes The RTP timestamps, recreates the output streams and introduces some jitter buffering if necessary. It requires feedback about some kind of output stream, like the one the MIPAudioMixer component generates. The component accepts MIPRTPReceiveMessage objects; a derived class must implement the message generation code, therefore it is the derived class that decides which messages can be generated.
bool MIPRTPDecoder::init | ( | bool | calcStreamTime = true , |
MIPRTPSynchronizer * | pSynchronizer = 0 , |
||
jrtplib::RTPSession * | pRTPSess = 0 |
||
) |
Using this function, the RTP decoder can be initialized.
calcStreamTime | If set to true , the decoder will calculate the position of the received packets in the output stream. For this feature to work, the decoder must receive feedback from a mixer. |
pSynchronizer | If a non-null pointer is passed, the object will be used to synchronize different streams from the same participant. |
pRTPSess | If specified, the timestamp unit returned by an MIPRTPPacketDecoder instance will be stored in the RTPSourceData instance of the corresponding SSRC. |
bool MIPRTPDecoder::setDefaultPacketDecoder | ( | MIPRTPPacketDecoder * | pDec | ) |
Installs a default RTP packet decoder. Use a null pointer to clear all entries.
void MIPRTPDecoder::setMaximumJitterBuffering | ( | MIPTime | t | ) | [inline] |
Sets the maximum amount of jitter buffering that may be done. Set it to a negative value (default setting) to allow unconstrained jitter buffering.
bool MIPRTPDecoder::setPacketDecoder | ( | uint8_t | payloadType, |
MIPRTPPacketDecoder * | pDec | ||
) |
Installs an RTP packet decoder for a specific payload type. Use a null pointer to clear this particular entry.