OpalVideoTranscoder Class Reference

#include <vidcodec.h>

Inheritance diagram for OpalVideoTranscoder:

OpalTranscoder OpalMediaFormatPair Opal_H261_YUV420P Opal_YUV420P_H261 OpalUncompVideoTranscoder Opal_RGB24_RGB24 Opal_RGB32_RGB32 List of all members.

Public Member Functions

Construction
 OpalVideoTranscoder (const OpalMediaFormat &inputMediaFormat, const OpalMediaFormat &outputMediaFormat)
Operations
virtual BOOL UpdateOutputMediaFormat (const OpalMediaFormat &mediaFormat)
virtual BOOL ExecuteCommand (const OpalMediaCommand &command)
virtual BOOL Convert (const RTP_DataFrame &input, RTP_DataFrame &output)

Protected Attributes

unsigned frameWidth
unsigned frameHeight
unsigned videoQuality
unsigned targetBitRate
bool dynamicVideoQuality
bool adaptivePacketDelay
unsigned fillLevel
bool updatePicture

Classes

struct  FrameHeader

Detailed Description

This class defines a transcoder implementation class that will encode/decode video.

An application may create a descendent off this class and override functions as required for descibing a specific transcoder.


Constructor & Destructor Documentation

OpalVideoTranscoder::OpalVideoTranscoder ( const OpalMediaFormat inputMediaFormat,
const OpalMediaFormat outputMediaFormat 
)

Create a new video transcoder implementation.

Parameters:
inputMediaFormat  Input media format
outputMediaFormat  Output media format


Member Function Documentation

virtual BOOL OpalVideoTranscoder::Convert ( const RTP_DataFrame input,
RTP_DataFrame 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 into the RTP_DataFrame provided.

This is a dummy function as nearly all video conversion will does not have a one to one input to output frames ratio, so the ConvertFrames() function is used instead.

Returns FALSE if the conversion fails.

Parameters:
input  Input data
output  Output data

Implements OpalTranscoder.

virtual BOOL OpalVideoTranscoder::ExecuteCommand ( const OpalMediaCommand command  )  [virtual]

Execute the command specified to the transcoder. The commands are highly context sensitive, for example VideoFastUpdate would only apply to a video transcoder.

The default behaviour checks for a OpalVideoUpdatePicture and sets the updatePicture member variable if that is the command.

Parameters:
command  Command to execute.

Reimplemented from OpalTranscoder.

virtual BOOL OpalVideoTranscoder::UpdateOutputMediaFormat ( const OpalMediaFormat mediaFormat  )  [virtual]

Update the output media format. This can be used to adjust the parameters of a codec at run time. Note you cannot change the basic media format, eg change GSM0610 to G.711, only options for that format, eg 6k3 mode to 5k3 mode in G.723.1.

The default behaviour updates the outputMediaFormat member variable and sets the outputMediaFormatUpdated flag.

Parameters:
mediaFormat  New media format

Reimplemented from OpalTranscoder.


Member Data Documentation

bool OpalVideoTranscoder::adaptivePacketDelay [protected]

bool OpalVideoTranscoder::dynamicVideoQuality [protected]

unsigned OpalVideoTranscoder::fillLevel [protected]

unsigned OpalVideoTranscoder::frameHeight [protected]

unsigned OpalVideoTranscoder::frameWidth [protected]

unsigned OpalVideoTranscoder::targetBitRate [protected]

bool OpalVideoTranscoder::updatePicture [protected]

unsigned OpalVideoTranscoder::videoQuality [protected]


The documentation for this class was generated from the following file:
Generated on Mon Sep 25 16:21:52 2006 for OPAL by  doxygen 1.4.7