OPAL  Version 3.14.3
OpalRFC4175Decoder Class Referenceabstract

#include <rfc4175.h>

Inheritance diagram for OpalRFC4175Decoder:
Collaboration diagram for OpalRFC4175Decoder:

Public Member Functions

 OpalRFC4175Decoder (const OpalMediaFormat &inputMediaFormat, const OpalMediaFormat &outputMediaFormat)
 
 ~OpalRFC4175Decoder ()
 
virtual PINDEX PixelsToBytes (PINDEX pixels) const =0
 
virtual PINDEX BytesToPixels (PINDEX pixels) const =0
 
bool ConvertFrames (const RTP_DataFrame &input, RTP_DataFrameList &output)
 
- Public Member Functions inherited from OpalRFC4175Transcoder
 OpalRFC4175Transcoder (const OpalMediaFormat &inputMediaFormat, const OpalMediaFormat &outputMediaFormat)
 
virtual PINDEX GetPgroupSize () const =0
 
virtual PINDEX GetColsPerPgroup () const =0
 
virtual PINDEX GetRowsPerPgroup () const =0
 
PINDEX RFC4175HeaderSize (PINDEX lines)
 
- Public Member Functions inherited from OpalVideoTranscoder
 OpalVideoTranscoder (const OpalMediaFormat &inputMediaFormat, const OpalMediaFormat &outputMediaFormat)
 
virtual bool UpdateMediaFormats (const OpalMediaFormat &inputMediaFormat, const OpalMediaFormat &outputMediaFormat)
 
virtual PINDEX GetOptimalDataFrameSize (PBoolean input) const
 
virtual PBoolean ExecuteCommand (const OpalMediaCommand &command)
 
virtual PBoolean Convert (const RTP_DataFrame &input, RTP_DataFrame &output)
 
virtual void GetStatistics (OpalMediaStatistics &statistics) const
 
virtual bool HasErrorConcealment () const
 
bool WasLastFrameIFrame () const
 
void ForceIFrame ()
 
virtual void SendIFrameRequest (unsigned sequenceNumber, unsigned timestamp)
 
virtual bool HandleIFrameRequest ()
 
- Public Member Functions inherited from OpalTranscoder
 OpalTranscoder (const OpalMediaFormat &inputMediaFormat, const OpalMediaFormat &outputMediaFormat)
 
PINDEX GetMaxOutputSize () const
 
void SetMaxOutputSize (PINDEX size)
 
void SetCommandNotifier (const PNotifier &notifier)
 
const PNotifier & GetCommandNotifier () const
 
void NotifyCommand (const OpalMediaCommand &command) const
 Notify command notifier of command. More...
 
unsigned GetSessionID () const
 Get session ID for the transcoder (from OpalMediaStream) More...
 
void SetSessionID (unsigned id)
 Set session ID for the transcoder (from OpalMediaStream) More...
 
virtual void SetInstanceID (const BYTE *instance, unsigned instanceLen)
 
RTP_DataFrame::PayloadTypes GetPayloadType (PBoolean input) const
 
virtual bool AcceptComfortNoise () const
 
virtual bool AcceptEmptyPayload () const
 
virtual bool AcceptOtherPayloads () const
 
void CopyTimestamp (RTP_DataFrame &dst, const RTP_DataFrame &src, bool inToOut) const
 
- Public Member Functions inherited from OpalMediaFormatPair
 OpalMediaFormatPair (const OpalMediaFormat &inputMediaFormat, const OpalMediaFormat &outputMediaFormat)
 
void PrintOn (ostream &strm) const
 
virtual Comparison Compare (const PObject &obj) const
 
const OpalMediaFormatGetInputFormat () const
 
const OpalMediaFormatGetOutputFormat () const
 

Protected Member Functions

void DecodeFramesAndSetFrameSize (RTP_DataFrameList &output)
 
virtual bool DecodeFrames (RTP_DataFrameList &output)=0
 

Protected Attributes

RTP_DataFrameList m_inputFrames
 
std::vector< PINDEX > m_scanlineCounts
 
PINDEX m_frameWidth
 
PINDEX m_frameHeight
 
bool m_first
 
bool m_missingPackets
 
PINDEX m_maxWidth
 
PINDEX m_maxHeight
 
DWORD m_nextSequenceNumber
 
DWORD m_lastTimeStamp
 
DWORD m_timeStampOfFrame
 
DWORD m_firstSequenceOfFrame
 

Additional Inherited Members

- Public Types inherited from OpalVideoTranscoder
typedef
PluginCodec_Video_FrameHeader 
FrameHeader
 
- Static Public Member Functions inherited from OpalVideoTranscoder
static
OpalVideoFormat::VideoFrameType 
GetVideoFrameType (const PCaselessString &rtpEncodingName, const BYTE *payloadPtr, PINDEX payloadSize, PBYTEArray &context)
 
- Static Public Member Functions inherited from OpalTranscoder
static OpalTranscoderCreate (const OpalMediaFormat &srcFormat, const OpalMediaFormat &dstFormat, const BYTE *instance=NULL, unsigned instanceLen=0)
 
static bool SelectFormats (const OpalMediaType &mediaType, const OpalMediaFormatList &srcFormats, const OpalMediaFormatList &dstFormats, const OpalMediaFormatList &allFormats, OpalMediaFormat &srcFormat, OpalMediaFormat &dstFormat)
 
static bool FindIntermediateFormat (const OpalMediaFormat &srcFormat, const OpalMediaFormat &dstFormat, OpalMediaFormat &intermediateFormat)
 
static OpalMediaFormatList GetDestinationFormats (const OpalMediaFormat &srcFormat)
 
static OpalMediaFormatList GetSourceFormats (const OpalMediaFormat &dstFormat)
 
static OpalMediaFormatList GetPossibleFormats (const OpalMediaFormatList &formats)
 

Constructor & Destructor Documentation

OpalRFC4175Decoder::OpalRFC4175Decoder ( const OpalMediaFormat inputMediaFormat,
const OpalMediaFormat outputMediaFormat 
)
Parameters
inputMediaFormatInput media format
outputMediaFormatOutput media format
OpalRFC4175Decoder::~OpalRFC4175Decoder ( )

Member Function Documentation

virtual PINDEX OpalRFC4175Decoder::BytesToPixels ( PINDEX  pixels) const
pure virtual
bool OpalRFC4175Decoder::ConvertFrames ( const RTP_DataFrame input,
RTP_DataFrameList &  output 
)
virtual

Convert the data from one format to another. This function takes the input data as a RTP_DataFrame and converts it to its output format, placing it (possibly) into multiple RTP_DataFrame objects.

The default behaviour makes sure the output list has only one element in it and calls the Convert() function.

Returns false if the conversion fails.

Reimplemented from OpalTranscoder.

virtual bool OpalRFC4175Decoder::DecodeFrames ( RTP_DataFrameList &  output)
protectedpure virtual
void OpalRFC4175Decoder::DecodeFramesAndSetFrameSize ( RTP_DataFrameList &  output)
protected
virtual PINDEX OpalRFC4175Decoder::PixelsToBytes ( PINDEX  pixels) const
pure virtual

Field Documentation

bool OpalRFC4175Decoder::m_first
protected
DWORD OpalRFC4175Decoder::m_firstSequenceOfFrame
protected
PINDEX OpalRFC4175Decoder::m_frameHeight
protected
PINDEX OpalRFC4175Decoder::m_frameWidth
protected
RTP_DataFrameList OpalRFC4175Decoder::m_inputFrames
protected
DWORD OpalRFC4175Decoder::m_lastTimeStamp
protected
PINDEX OpalRFC4175Decoder::m_maxHeight
protected
PINDEX OpalRFC4175Decoder::m_maxWidth
protected
bool OpalRFC4175Decoder::m_missingPackets
protected
DWORD OpalRFC4175Decoder::m_nextSequenceNumber
protected
std::vector<PINDEX> OpalRFC4175Decoder::m_scanlineCounts
protected
DWORD OpalRFC4175Decoder::m_timeStampOfFrame
protected

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