Created by the British Broadcasting Corporation.
A class specially for coding the DC subband of Intra frames. More...
#include <band_vlc.h>
Public Member Functions | |
IntraDCBandVLC (SubbandByteIO *subband_byteio, const SubbandList &band_list) | |
Constructor. | |
Public Member Functions inherited from dirac::GenericIntraDCBandCodec< ArithCodecToVLCAdapter > | |
GenericIntraDCBandCodec (SubbandByteIO *subband_byteio, size_t number_of_contexts, const SubbandList &band_list) | |
Constructor. | |
Public Member Functions inherited from dirac::GenericBandCodec< ArithCodecToVLCAdapter > | |
GenericBandCodec (SubbandByteIO *subband_byteio, size_t number_of_contexts, const SubbandList &band_list, int band_num, const bool is_intra) | |
Constructor. | |
Public Member Functions inherited from dirac::ArithCodecToVLCAdapter | |
ArithCodecToVLCAdapter (SubbandByteIO *subband_byteio, size_t number_of_contexts) | |
virtual | ~ArithCodecToVLCAdapter () |
int | Compress (CoeffArray &in_data) |
void | Decompress (CoeffArray &out_data, int num_bytes) |
void | EncodeSymbol (bool val, int) |
bool | DecodeSymbol (int) |
Private Member Functions | |
void | CodeCoeff (CoeffArray &in_data, const int xpos, const int ypos) |
Encode a single coefficient using error-feedback DC quantization. | |
IntraDCBandVLC (const IntraDCBandVLC &cpy) | |
Private, bodyless copy constructor: class should not be copied. | |
IntraDCBandVLC & | operator= (const IntraDCBandVLC &rhs) |
Private, bodyless copy operator=: class should not be assigned. |
Additional Inherited Members | |
Protected Member Functions inherited from dirac::GenericIntraDCBandCodec< ArithCodecToVLCAdapter > | |
void | ClearBlock (const CodeBlock &code_block, CoeffArray &coeff_data) |
When coding a skipped block, propegate the predicted values for future non skipped blocks. | |
CoeffType | GetPrediction (const CoeffArray &data, const int xpos, const int ypos) const |
Prediction of a DC value from its previously coded neighbours. | |
void | DecodeCoeffBlock (const CodeBlock &code_block, CoeffArray &out_data) |
Decode codeblock of coefficients and perform DC prediction. | |
Protected Member Functions inherited from dirac::GenericBandCodec< ArithCodecToVLCAdapter > | |
void | CodeVal (CoeffArray &in_data, const int xpos, const int ypos, const CoeffType val) |
Code an individual quantised value and perform inverse-quantisation. | |
void | DecodeVal (CoeffArray &out_data, const int xpos, const int ypos) |
Decode an individual quantised value and perform inverse-quantisation. | |
void | CodeQuantIndexOffset (const int offset) |
Encode the offset for a code block quantiser. | |
int | DecodeQuantIndexOffset () |
Decode the offset for a code block quantiser. | |
void | SetToVal (const CodeBlock &code_block, CoeffArray &coeff_data, const CoeffType val) |
Set a code block area to a given value. | |
virtual void | DoWorkCode (CoeffArray &in_data) |
virtual void | DoWorkDecode (CoeffArray &out_data) |
virtual void | CodeCoeffBlock (const CodeBlock &code_block, CoeffArray &in_data) |
virtual void | DecodeCoeff (CoeffArray &in_data, const int xpos, const int ypos) |
int | ChooseFollowContext (const int bin_number) const |
A function for choosing the context for "follow bits". | |
int | ChooseInfoContext () const |
A function for choosing the context for "information bits". | |
int | ChooseSignContext (const CoeffArray &data, const int xpos, const int ypos) const |
A function for choosing the context for sign bits. | |
Protected Attributes inherited from dirac::GenericBandCodec< ArithCodecToVLCAdapter > | |
bool | m_is_intra |
Flag indicating whether the band comes from an intra picture. | |
int | m_bnum |
variables | |
const Subband | m_node |
the subband being coded | |
int | m_last_qf_idx |
the quantisation index of the last codeblock | |
int | m_qf |
quantisation value | |
CoeffType | m_offset |
reconstruction point | |
bool | m_nhood_nonzero |
True if neighbours non-zero. | |
Subband | m_pnode |
the parent subband | |
int | m_pxpos |
position of the parent coefficient | |
int | m_pypos |
bool | m_parent_notzero |
True if the parent of a coeff is not zero. | |
Protected Attributes inherited from dirac::ArithCodecToVLCAdapter | |
ByteIO * | m_byteio |
A class specially for coding the DC subband of Intra frames, using intra-band prediction of coefficients.
dirac::IntraDCBandVLC::IntraDCBandVLC | ( | SubbandByteIO * | subband_byteio, |
const SubbandList & | band_list ) |
Creates a IntraDCBandVLC object to encode subband data, based on parameters
subband_byteio | input/output for the encoded bits |
band_list | the set of all the subbands |
Referenced by IntraDCBandVLC(), and operator=().
|
private |
References IntraDCBandVLC().
|
privatevirtual |
Reimplemented from dirac::GenericBandCodec< ArithCodecToVLCAdapter >.
|
private |
References IntraDCBandVLC().
© 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.