#include <ratectl.h>
Public Member Functions | |
OpalVideoRateController () | |
virtual | ~OpalVideoRateController () |
virtual void | Open (const OpalMediaFormat &mediaFormat) |
virtual bool | SkipFrame (bool &forceIFrame)=0 |
virtual void | Push (RTP_DataFrameList &inputFrames, bool iFrame) |
virtual bool | Pop (RTP_DataFrameList &outputPackets, bool &iFrame, bool force) |
Data Fields | |
OpalBitRateCalculator | m_bitRateCalc |
Protected Attributes | |
unsigned | m_targetBitRate |
unsigned | m_outputFrameTime |
PInt64 | m_inputFrameCount |
PInt64 | m_outputFrameCount |
std::deque< PacketEntry > | m_packets |
Data Structures | |
struct | PacketEntry |
OpalVideoRateController::OpalVideoRateController | ( | ) |
virtual OpalVideoRateController::~OpalVideoRateController | ( | ) | [virtual] |
virtual void OpalVideoRateController::Open | ( | const OpalMediaFormat & | mediaFormat | ) | [virtual] |
Open the rate controller with the specific parameters
virtual bool OpalVideoRateController::Pop | ( | RTP_DataFrameList & | outputPackets, | |
bool & | iFrame, | |||
bool | force | |||
) | [virtual] |
retreive encoded frames from the rate controller queue
virtual void OpalVideoRateController::Push | ( | RTP_DataFrameList & | inputFrames, | |
bool | iFrame | |||
) | [virtual] |
push encoded frames into the rate controller queue
virtual bool OpalVideoRateController::SkipFrame | ( | bool & | forceIFrame | ) | [pure virtual] |
Determine if the next frame should be skipped. The rate controller can also indicate whether the next frame should be encoded as an I-frame, which is useful if many frames have been skipped
Bit rate calculator used by rate controller
PInt64 OpalVideoRateController::m_inputFrameCount [protected] |
PInt64 OpalVideoRateController::m_outputFrameCount [protected] |
unsigned OpalVideoRateController::m_outputFrameTime [protected] |
std::deque<PacketEntry> OpalVideoRateController::m_packets [protected] |
unsigned OpalVideoRateController::m_targetBitRate [protected] |