#include "contributors.h"
#include <math.h>
#include <float.h>
#include "global.h"
#include "image.h"
#include "fmo.h"
#include "macroblock.h"
#include "mb_access.h"
#include "ratectl.h"
#include "rdoq.h"
#include "block.h"

Go to the source code of this file.
Functions | |
| int | estSyntaxElement_Level_VLC1 (SyntaxElement *se) |
| int | estSyntaxElement_Level_VLCN (SyntaxElement *se, int vlc) |
| int | cmp (const void *arg1, const void *arg2) |
| int | est_CAVLC_bits (levelDataStruct *levelData, int level_to_enc[16], int sign_to_enc[16], int nnz, int block_type) |
| void | est_RunLevel_CAVLC (levelDataStruct *levelData, int *levelTrellis, int block_type, int b8, int b4, int coeff_num, double lambda) |
| void | init_trellis_data_4x4_CAVLC (int **tblock, int block_x, int qp_per, int qp_rem, int **levelscale, int **leveloffset, const byte *p_scan, Macroblock *currMB, levelDataStruct *dataLevel, int type) |
| void | init_trellis_data_DC_CAVLC (int **tblock, int qp_per, int qp_rem, int levelscale, int leveloffset, const byte *p_scan, Macroblock *currMB, levelDataStruct *dataLevel, int type) |
| void | init_trellis_data_8x8_CAVLC (int **tblock, int block_x, int qp_per, int qp_rem, int **levelscale, int **leveloffset, const byte *p_scan, Macroblock *currMB, levelDataStruct levelData[4][16]) |
Variables | |
| const int | estErr4x4 [6][4][4] |
| const int | estErr8x8 [6][8][8] |
Definition in file rdoq_cavlc.c.
| int est_CAVLC_bits | ( | levelDataStruct * | levelData, | |
| int | level_to_enc[16], | |||
| int | sign_to_enc[16], | |||
| int | nnz, | |||
| int | block_type | |||
| ) |
estimate CAVLC bits
Definition at line 96 of file rdoq_cavlc.c.
References estSyntaxElement_Level_VLC1(), estSyntaxElement_Level_VLCN(), syntaxelement::len, ImageParameters::num_cdc_coeff, syntaxelement::value1, syntaxelement::value2, and ImageParameters::yuv_format.
Referenced by est_RunLevel_CAVLC().

| void est_RunLevel_CAVLC | ( | levelDataStruct * | levelData, | |
| int * | levelTrellis, | |||
| int | block_type, | |||
| int | b8, | |||
| int | b4, | |||
| int | coeff_num, | |||
| double | lambda | |||
| ) |
estimate run and level for CAVLC
Definition at line 389 of file rdoq_cavlc.c.
References ImageParameters::current_mb_nr, est_CAVLC_bits(), ImageParameters::mb_data, ImageParameters::nz_coeff, predict_nnz(), predict_nnz_chroma(), ImageParameters::subblock_x, and ImageParameters::subblock_y.
Referenced by rdoq_4x4_CAVLC(), rdoq_8x8_CAVLC(), rdoq_ac4x4_CAVLC(), rdoq_dc_CAVLC(), and rdoq_dc_cr_CAVLC().

| int estSyntaxElement_Level_VLC1 | ( | SyntaxElement * | se | ) |
estimate VLC for Coeff Level
Definition at line 33 of file rdoq_cavlc.c.
References syntaxelement::len, and syntaxelement::value1.
Referenced by est_CAVLC_bits().
| int estSyntaxElement_Level_VLCN | ( | SyntaxElement * | se, | |
| int | vlc | |||
| ) |
estimate VLC for Coeff Level
Definition at line 65 of file rdoq_cavlc.c.
References syntaxelement::len, and syntaxelement::value1.
Referenced by est_CAVLC_bits().
| void init_trellis_data_4x4_CAVLC | ( | int ** | tblock, | |
| int | block_x, | |||
| int | qp_per, | |||
| int | qp_rem, | |||
| int ** | levelscale, | |||
| int ** | leveloffset, | |||
| const byte * | p_scan, | |||
| Macroblock * | currMB, | |||
| levelDataStruct * | dataLevel, | |||
| int | type | |||
| ) |
Initialize levelData.
Definition at line 485 of file rdoq_cavlc.c.
Referenced by rdoq_4x4_CAVLC(), and rdoq_ac4x4_CAVLC().
| void init_trellis_data_8x8_CAVLC | ( | int ** | tblock, | |
| int | block_x, | |||
| int | qp_per, | |||
| int | qp_rem, | |||
| int ** | levelscale, | |||
| int ** | leveloffset, | |||
| const byte * | p_scan, | |||
| Macroblock * | currMB, | |||
| levelDataStruct | levelData[4][16] | |||
| ) |
| void init_trellis_data_DC_CAVLC | ( | int ** | tblock, | |
| int | qp_per, | |||
| int | qp_rem, | |||
| int | levelscale, | |||
| int | leveloffset, | |||
| const byte * | p_scan, | |||
| Macroblock * | currMB, | |||
| levelDataStruct * | dataLevel, | |||
| int | type | |||
| ) |
Initialize levelData for Luma DC.
Definition at line 567 of file rdoq_cavlc.c.
Referenced by rdoq_dc_CAVLC().