OPAL  Version 3.10.10
OpalVideoRateController Class Reference

#include <ratectl.h>

Data Structures

struct  PacketEntry

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< PacketEntrym_packets

Constructor & Destructor Documentation

OpalVideoRateController::OpalVideoRateController ( )
virtual OpalVideoRateController::~OpalVideoRateController ( )
virtual

Member Function Documentation

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

Field Documentation

OpalBitRateCalculator OpalVideoRateController::m_bitRateCalc

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

The documentation for this class was generated from the following file: