Created by the British Broadcasting Corporation.
Represents compressed sequence-parameter data used in an AccessUnit.
#include <mvdata_byteio.h>
Public Member Functions | |
MvDataByteIO (PictureParams &pparams, PicturePredParams &picpredparams) | |
Constructor. | |
MvDataByteIO (ByteIO &byte_io, PictureParams &pparams, PicturePredParams &picpredparams) | |
Constructor. | |
virtual | ~MvDataByteIO () |
Destructor. | |
void | CollateByteStats (DiracByteStats &dirac_byte_stats) |
Gathers byte stats on the motion vector data. | |
void | Output () |
Outputs motion vector data Dirac byte-format. | |
void | Input () |
Inputs motion vector information. | |
virtual const std::string | GetBytes () |
Get string containing coded bytes. | |
MvDataElementByteIO * | SplitModeData () |
Return pointer to the superblock splitting modes ByteIO stream. | |
MvDataElementByteIO * | PredModeData () |
Return pointer to the superblock splitting modes ByteIO stream. | |
MvDataElementByteIO * | MV1HorizData () |
Return pointer to the block MVs reference 1 ByteIO stream. | |
MvDataElementByteIO * | MV1VertData () |
Return pointer to the block MVs reference 1 ByteIO stream. | |
MvDataElementByteIO * | MV2HorizData () |
Return pointer to the block MV reference 2 ByteIO stream. | |
MvDataElementByteIO * | MV2VertData () |
Return pointer to the block MV reference 2 ByteIO stream. | |
MvDataElementByteIO * | YDCData () |
Return pointer to the block Y DC values ByteIO stream. | |
MvDataElementByteIO * | UDCData () |
Return pointer to the block U DC values ByteIO stream. | |
MvDataElementByteIO * | VDCData () |
Return pointer to the block V DC values ByteIO stream. | |
int | GetSize () const |
Return the size. | |
![]() | |
ByteIO (bool new_stream=true) | |
Default constructor. | |
ByteIO (const ByteIO &stream_data) | |
Constructor. | |
virtual | ~ByteIO () |
Destructor. | |
int | GetReadBytePosition () const |
Get position of read stream pointer. | |
void | SetByteParams (const ByteIO &byte_io) |
Copies stream source/destination info. | |
void | ByteAlignOutput () |
Sync input for byte-alignment. | |
void | WriteUint (unsigned int value) |
Ouputs an unsigned integer in interleaved exp Golomb format. | |
void | SetBitsLeft (int left_bits) |
Sets input size in bits. | |
int | BitsLeft (void) |
Sets input size in bits. |
Private Member Functions | |
void | InputBlockParams () |
Inputs block parameters. | |
void | InputMVPrecision () |
Inputs Motion vector precision data. | |
void | InputGlobalMotionParams () |
Inputs global motion parameters. | |
void | InputFramePredictionMode () |
Inputs picture prediction mode. | |
void | InputPictureWeights () |
Inputs Picture Weights. | |
void | OutputBlockParams () |
Outputs block parameters. | |
void | OutputMVPrecision () |
Outputs Motion vector precision data. | |
void | OutputGlobalMotionParams () |
Outputs global motion parameters. | |
void | OutputFramePredictionMode () |
Outputs picture prediction mode. | |
void | OutputPictureWeights () |
Outputs Picture Weights. |
Private Attributes | |
PictureParams & | m_pparams |
Sequence paramters for intput/output. | |
PicturePredParams & | m_picpredparams |
Codec params - EncParams for Output and DecParams for input. | |
MvDataElementByteIO | m_splitmode_data |
block data containing split modes | |
MvDataElementByteIO | m_predmode_data |
block data containing prediction modes | |
MvDataElementByteIO | m_mv1hblock_data |
block data containing horizontal MV components for reference 1 | |
MvDataElementByteIO | m_mv1vblock_data |
block data containing vertical MV components for reference 1 | |
MvDataElementByteIO | m_mv2hblock_data |
block data containing horizontal MV components for reference 2 | |
MvDataElementByteIO | m_mv2vblock_data |
block data containing vertical MV components for reference 2 | |
MvDataElementByteIO | m_ydcblock_data |
block data containing Y DC data | |
MvDataElementByteIO | m_udcblock_data |
block data containing U DC data | |
MvDataElementByteIO | m_vdcblock_data |
block data containing V DC data |
Additional Inherited Members | |
![]() | |
bool | CanRead () const |
bool | GetBit (unsigned char &c, int pos) const |
void | SetBit (unsigned char &c, int pos) const |
void | SetBits (unsigned char &c, unsigned char bits) const |
void | ByteAlignInput () |
Sync input for byte-alignment. | |
bool | ReadBool () |
Reads boolean value. | |
bool | ReadBoolB () |
Reads boolean value - bounded i/o. | |
int | ReadBit () |
Reads next bit. | |
int | ReadBitB () |
Reads next bit - bounded i/o. | |
unsigned int | ReadNBits (int count) |
Reads next 'count' bits. | |
void | InputBytes (char *data, int count) |
Reads from stream. | |
void | FlushInputB () |
Flushes the bounde input. | |
int | ReadSint () |
Reads a signed integer in interleaved exp-Golomb format *return Signed integer read. | |
int | ReadSintB () |
Reads a signed integer in interleaved exp-Golomb format from bounded input *return Signed integer read. | |
unsigned int | ReadUint () |
Reads an unsigned integer in interleaved exp Golomb format. | |
unsigned int | ReadUintB () |
Reads an unsigned integer in interleaved exp Golomb format from bounded input. | |
unsigned int | ReadUintLit (const int byte_size) |
Reads a fixed length unsigned integer from the stream in big endian. | |
unsigned char | InputUnByte () |
Reads a byte from the stream. | |
std::string | InputUnString (const int count) |
Reads a series of bytes from a stream. | |
void | WriteBit (const bool &bit) |
Outputs a bit. | |
int | WriteNBits (unsigned int val) |
Outputs an unsigned integer. | |
void | WriteNBits (unsigned int val, int count) |
Outputs an n bit integer. | |
void | OutputBytes (const std::string &bytes) |
Outputs a series of bytes. | |
void | OutputCurrentByte () |
Outputs current byte contents. | |
void | WriteSint (int val) |
Outputs an integer in Golomb signed integer format. | |
void | WriteUintLit (const unsigned int &value, const int &length) |
Output unsigned int value in big endian format. | |
void | RemoveRedundantBytes (const int count) |
Removes portion of byte-stream no longer required. | |
void | SeekGet (const int offset, std::ios_base::seekdir dir) |
![]() | |
std::stringstream * | mp_stream |
Input/output steam. |
dirac::MvDataByteIO::MvDataByteIO | ( | PictureParams & | pparams, |
PicturePredParams & | picpredparams | ||
) |
dirac::MvDataByteIO::MvDataByteIO | ( | ByteIO & | byte_io, |
PictureParams & | pparams, | ||
PicturePredParams & | picpredparams | ||
) |
|
virtual |
|
virtual |
dirac_byte_stats | Stat container |
Reimplemented from dirac::ByteIO.
|
virtual |
Reimplemented from dirac::ByteIO.
|
virtual |
Reimplemented from dirac::ByteIO.
void dirac::MvDataByteIO::Input | ( | ) |
|
private |
|
private |
|
private |
|
private |
|
private |
|
inline |
References m_mv1hblock_data.
|
inline |
References m_mv1vblock_data.
|
inline |
References m_mv2hblock_data.
|
inline |
References m_mv2vblock_data.
void dirac::MvDataByteIO::Output | ( | ) |
|
private |
|
private |
|
private |
|
private |
|
private |
|
inline |
References m_predmode_data.
|
inline |
References m_splitmode_data.
|
inline |
References m_udcblock_data.
|
inline |
References m_vdcblock_data.
|
inline |
References m_ydcblock_data.
|
private |
Referenced by MV1HorizData().
|
private |
Referenced by MV1VertData().
|
private |
Referenced by MV2HorizData().
|
private |
Referenced by MV2VertData().
|
private |
|
private |
|
private |
Referenced by PredModeData().
|
private |
Referenced by SplitModeData().
|
private |
Referenced by UDCData().
|
private |
Referenced by VDCData().
|
private |
Referenced by YDCData().
© 2004 British Broadcasting Corporation.
Dirac code licensed under the Mozilla Public License (MPL) Version 1.1.
HTML documentation generated by Dimitri van Heesch's
excellent Doxygen tool.