#include "global.h"
Go to the source code of this file.
Definition in file cabac.h.
int cabac_startcode_follows | ( | Slice * | currSlice, | |
int | eos_bit | |||
) |
finding end of a slice in case this is not the end of a frame
Unsure whether the "correction" below actually solves an off-by-one problem or whether it introduces one in some cases :-( Anyway, with this change the bit stream format works with CABAC again. StW, 8.7.02
Definition at line 1756 of file cabac.c.
References assignSE2partition, biari_decode_final(), slice::dp_mode, and slice::partArr.
MotionInfoContexts* create_contexts_MotionInfo | ( | void | ) |
Allocation of contexts models for the motion info used for arithmetic decoding.
Definition at line 77 of file cabac.c.
References no_mem_exit().
Referenced by malloc_slice().
TextureInfoContexts* create_contexts_TextureInfo | ( | void | ) |
Allocates of contexts models for the texture info used for arithmetic decoding.
Definition at line 96 of file cabac.c.
References no_mem_exit().
Referenced by malloc_slice().
void delete_contexts_MotionInfo | ( | MotionInfoContexts * | enco_ctx | ) |
Frees the memory of the contexts models used for arithmetic decoding of the motion info.
Definition at line 115 of file cabac.c.
Referenced by free_slice().
void delete_contexts_TextureInfo | ( | TextureInfoContexts * | enco_ctx | ) |
Frees the memory of the contexts models used for arithmetic decoding of the texture info.
Definition at line 131 of file cabac.c.
Referenced by free_slice().
void readB8_typeInfo_CABAC | ( | Macroblock * | currMB, | |
SyntaxElement * | se, | |||
DecodingEnvironmentPtr | dep_dp | |||
) |
This function is used to arithmetically decode the 8x8 block type.
Definition at line 337 of file cabac.c.
References biari_decode_symbol(), slice::mot_ctx, macroblock::p_Slice, slice::slice_type, and syntaxelement::value1.
Referenced by read_one_macroblock_b_slice(), and read_one_macroblock_p_slice().
void readCBP_CABAC | ( | Macroblock * | currMB, | |
SyntaxElement * | se, | |||
DecodingEnvironmentPtr | dep_dp | |||
) |
This function is used to arithmetically decode the coded block pattern of a given MB.
Definition at line 909 of file cabac.c.
References biari_decode_symbol(), get4x4Neighbour(), macroblock::mb_left, macroblock::mb_up, macroblock::p_Img, macroblock::p_Slice, slice::tex_ctx, syntaxelement::value1, YUV400, and YUV444.
Referenced by read_CBP_and_coeffs_from_NAL_CABAC().
void readCIPredMode_CABAC | ( | Macroblock * | currMB, | |
SyntaxElement * | se, | |||
DecodingEnvironmentPtr | dep_dp | |||
) |
This function is used to arithmetically decode the chroma intra prediction mode of a given MB.
Definition at line 1043 of file cabac.c.
References biari_decode_symbol(), macroblock::c_ipred_mode, macroblock::mb_left, macroblock::mb_up, macroblock::p_Slice, slice::tex_ctx, unary_bin_max_decode(), and syntaxelement::value1.
Referenced by read_ipred_modes().
void readDquant_CABAC | ( | Macroblock * | currMB, | |
SyntaxElement * | se, | |||
DecodingEnvironmentPtr | dep_dp | |||
) |
This function is used to arithmetically decode the delta qp of a given MB.
Definition at line 874 of file cabac.c.
References biari_decode_symbol(), slice::mot_ctx, macroblock::p_Slice, unary_bin_decode(), and syntaxelement::value1.
void readIntraPredMode_CABAC | ( | Macroblock * | currMB, | |
SyntaxElement * | se, | |||
DecodingEnvironmentPtr | dep_dp | |||
) |
This function is used to arithmetically decode a pair of intra prediction modes of a given MB.
Definition at line 765 of file cabac.c.
References biari_decode_symbol(), macroblock::p_Slice, slice::tex_ctx, and syntaxelement::value1.
Referenced by read_ipred_modes().
void readIPCM_CABAC | ( | Slice * | currSlice, | |
struct datapartition * | dP | |||
) |
Read I_PCM macroblock.
Definition at line 1896 of file cabac.c.
References Bitstream::bitstream_length, GetBits(), Bitstream::streamBuffer, and YUV400.
Referenced by read_IPCM_coeffs_from_NAL().
void readMB_skip_flagInfo_CABAC | ( | Macroblock * | currMB, | |
SyntaxElement * | se, | |||
DecodingEnvironmentPtr | dep_dp | |||
) |
This function is used to arithmetically decode the macroblock type info of a given MB.
Definition at line 421 of file cabac.c.
References biari_decode_symbol(), macroblock::mb_left, macroblock::mb_up, slice::mot_ctx, macroblock::p_Slice, slice::slice_type, syntaxelement::value1, and syntaxelement::value2.
Referenced by read_one_macroblock_b_slice(), and read_one_macroblock_p_slice().
void readMB_transform_size_flag_CABAC | ( | Macroblock * | currMB, | |
SyntaxElement * | se, | |||
DecodingEnvironmentPtr | dep_dp | |||
) |
This function is used to arithmetically decode the macroblock intra_pred_size flag info of a given MB.
Definition at line 470 of file cabac.c.
References biari_decode_symbol(), macroblock::mb_left, macroblock::mb_up, macroblock::p_Slice, slice::tex_ctx, and syntaxelement::value1.
Referenced by read_CBP_and_coeffs_from_NAL_CABAC(), read_CBP_and_coeffs_from_NAL_CAVLC(), read_one_macroblock_b_slice(), read_one_macroblock_i_slice(), and read_one_macroblock_p_slice().
void readMB_typeInfo_CABAC | ( | Macroblock * | currMB, | |
SyntaxElement * | se, | |||
DecodingEnvironmentPtr | dep_dp | |||
) |
This function is used to arithmetically decode the macroblock type info of a given MB.
Definition at line 499 of file cabac.c.
References biari_decode_final(), biari_decode_symbol(), syntaxelement::context, macroblock::mb_left, macroblock::mb_up, slice::mot_ctx, macroblock::p_Slice, slice::slice_type, and syntaxelement::value1.
Referenced by read_one_macroblock_b_slice(), read_one_macroblock_i_slice(), and read_one_macroblock_p_slice().
void readMVD_CABAC | ( | Macroblock * | currMB, | |
SyntaxElement * | se, | |||
DecodingEnvironmentPtr | dep_dp | |||
) |
This function is used to arithmetically decode the motion vector data of a B-frame MB.
Definition at line 252 of file cabac.c.
References biari_decode_symbol(), biari_decode_symbol_eq_prob(), syntaxelement::context, get4x4Neighbour(), slice::mot_ctx, macroblock::p_Img, macroblock::p_Slice, unary_exp_golomb_mv_decode(), syntaxelement::value1, and syntaxelement::value2.
Referenced by read_motion_info_from_NAL_b_slice(), and read_motion_info_from_NAL_p_slice().
void readRefFrame_CABAC | ( | Macroblock * | currMB, | |
SyntaxElement * | se, | |||
DecodingEnvironmentPtr | dep_dp | |||
) |
This function is used to arithmetically decode the reference parameter of a given MB.
Definition at line 799 of file cabac.c.
References biari_decode_symbol(), syntaxelement::context, get4x4Neighbour(), slice::mot_ctx, storable_picture::motion, macroblock::p_Img, macroblock::p_Slice, pic_motion_params::ref_idx, unary_bin_decode(), syntaxelement::value1, and syntaxelement::value2.
Referenced by prepareListforRefIdx().
void readRunLevel_CABAC | ( | Macroblock * | currMB, | |
SyntaxElement * | se, | |||
DecodingEnvironmentPtr | dep_dp | |||
) |
Read Block-Transform Coefficients.
Definition at line 1602 of file cabac.c.
References syntaxelement::context, macroblock::p_Img, macroblock::p_Slice, read_and_store_CBP_block_bit_444(), read_and_store_CBP_block_bit_normal(), read_significance_map(), read_significant_coefficients(), slice::tex_ctx, syntaxelement::value1, syntaxelement::value2, and YUV444.
Referenced by read_CBP_and_coeffs_from_NAL_CABAC(), read_CBP_and_coeffs_from_NAL_CAVLC(), readCompCoeff4x4SMB_CABAC(), and readCompCoeff8x8_CABAC().
int readSyntaxElement_CABAC | ( | SyntaxElement * | se, | |
ImageParameters * | p_Img, | |||
DataPartition * | this_dataPart | |||
) |
arithmetic decoding
Definition at line 1658 of file cabac.c.
References arideco_bits_read(), syntaxelement::len, and syntaxelement::reading.