# OpalRFC4175Encoder Class Reference

`#include <rfc4175.h>`

Inheritance diagram for OpalRFC4175Encoder:

[legend]
Collaboration diagram for OpalRFC4175Encoder:
[legend]

## Public Member Functions

| OpalRFC4175Encoder (const OpalMediaFormat &inputMediaFormat, const OpalMediaFormat &outputMediaFormat)
bool | ConvertFrames (const RTP_DataFrame &input, RTP_DataFrameList &output)

## Protected Member Functions

virtual void | StartEncoding (const RTP_DataFrame &input)
virtual void | EndEncoding ()=0
void | EncodeFullFrame ()
void | EncodeScanLineSegment (PINDEX y, PINDEX offs, PINDEX width)
void | AddNewDstFrame ()
void | FinishOutputFrame ()

## Protected Attributes

DWORD | m_extendedSequenceNumber
PINDEX | m_maximumPacketSize
unsigned | m_frameHeight
unsigned | m_frameWidth
DWORD | m_srcTimestamp
RTP_DataFrameList * | m_dstFrames
std::vector< PINDEX > | m_dstScanlineCounts
PINDEX | m_dstScanLineCount
PINDEX | m_dstPacketSize
ScanLineHeader * | m_dstScanLineTable

## Constructor & Destructor Documentation

OpalRFC4175Encoder::OpalRFC4175Encoder | ( | const OpalMediaFormat & | inputMediaFormat,
|  | const OpalMediaFormat & | outputMediaFormat |
| ) |  |  |

Parameters:

  inputMediaFormat | Input media format
  outputMediaFormat | Output media format

## Member Function Documentation

void OpalRFC4175Encoder::AddNewDstFrame | ( |  | ) | `[protected]`

bool OpalRFC4175Encoder::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.

void OpalRFC4175Encoder::EncodeFullFrame | ( |  | ) | `[protected]`

void OpalRFC4175Encoder::EncodeScanLineSegment | ( | PINDEX | y,
|  | PINDEX | offs,
|  | PINDEX | width |
| ) |  |  | `[protected]`

virtual void OpalRFC4175Encoder::EndEncoding | ( |  | ) | `[protected, pure virtual]`

Implemented in Opal_YUV420P_to_RFC4175YCbCr420, and Opal_RGB24_to_RFC4175RGB.

void OpalRFC4175Encoder::FinishOutputFrame | ( |  | ) | `[protected]`

virtual void OpalRFC4175Encoder::StartEncoding | ( | const RTP_DataFrame & | input | ) | `[protected, virtual]`

Reimplemented in Opal_YUV420P_to_RFC4175YCbCr420, and Opal_RGB24_to_RFC4175RGB.

## Field Documentation

RTP_DataFrameList* OpalRFC4175Encoder::m_dstFrames `[protected]`

PINDEX OpalRFC4175Encoder::m_dstPacketSize `[protected]`

PINDEX OpalRFC4175Encoder::m_dstScanLineCount `[protected]`

std::vector<PINDEX> OpalRFC4175Encoder::m_dstScanlineCounts `[protected]`

ScanLineHeader* OpalRFC4175Encoder::m_dstScanLineTable `[protected]`

DWORD OpalRFC4175Encoder::m_extendedSequenceNumber `[protected]`

unsigned OpalRFC4175Encoder::m_frameHeight `[protected]`

unsigned OpalRFC4175Encoder::m_frameWidth `[protected]`

PINDEX OpalRFC4175Encoder::m_maximumPacketSize `[protected]`

DWORD OpalRFC4175Encoder::m_srcTimestamp `[protected]`

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

- rfc4175.h