Created by the British Broadcasting Corporation.
A class specially for coding the DC subband of Intra frames. More...
#include <band_codec.h>
Public Member Functions | |
IntraDCBandCodec (SubbandByteIO *subband_byteio, size_t number_of_contexts, const SubbandList &band_list) | |
Constructor. | |
![]() | |
GenericIntraDCBandCodec (SubbandByteIO *subband_byteio, size_t number_of_contexts, const SubbandList &band_list) | |
Constructor. | |
![]() | |
GenericBandCodec (SubbandByteIO *subband_byteio, size_t number_of_contexts, const SubbandList &band_list, int band_num, const bool is_intra) | |
Constructor. | |
![]() | |
ArithCodec (ByteIO *p_byteio, size_t number_of_contexts) | |
Constructor for encoding. | |
virtual | ~ArithCodec () |
Destructor. | |
int | Compress (CoeffArray &in_data) |
Compresses the input and returns the number of bits written. | |
void | Decompress (CoeffArray &out_data, const int num_bytes) |
Decompresses the bitstream and writes into the output. | |
![]() | |
ArithCodecBase (ByteIO *p_byteio, size_t number_of_contexts) | |
Constructor. | |
virtual | ~ArithCodecBase () |
Destructor. | |
Private Member Functions | |
void | DoWorkCode (CoeffArray &in_data) |
Initialize extra data required for error-feedback DC quantization. | |
void | DoWorkDecode (CoeffArray &out_data) |
Ditto. | |
void | CodeCoeff (CoeffArray &in_data, const int xpos, const int ypos) |
Encode a single coefficient using error-feedback DC quantization. | |
void | DecodeCoeff (CoeffArray &out_data, const int xpos, const int ypos) |
Decode a single coefficient using error-feedback DC quantization. | |
IntraDCBandCodec (const IntraDCBandCodec &cpy) | |
Private, bodyless copy constructor: class should not be copied. | |
IntraDCBandCodec & | operator= (const IntraDCBandCodec &rhs) |
Private, bodyless copy operator=: class should not be assigned. | |
Private Attributes | |
CoeffArray | m_dc_pred_res |
Additional Inherited Members | |
![]() | |
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. | |
![]() | |
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. | |
A class specially for coding the DC subband of Intra frames, using intra-band prediction of coefficients. It uses the abstract ArithCodec class
|
inline |
Creates a IntraDCBandCodec object to encode subband data, based on parameters
subband_byteio | input/output for the encoded bits |
number_of_contexts | the number of contexts used in the encoding process |
band_list | the set of all the subbands |
|
private |
|
privatevirtual |
Reimplemented from dirac::GenericBandCodec< ArithCodec< CoeffArray > >.
|
privatevirtual |
Reimplemented from dirac::GenericBandCodec< ArithCodec< CoeffArray > >.
|
privatevirtual |
Reimplemented from dirac::GenericBandCodec< ArithCodec< CoeffArray > >.
|
privatevirtual |
Reimplemented from dirac::GenericBandCodec< ArithCodec< CoeffArray > >.
|
private |
|
private |
© 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.