00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #ifndef _QUANT4x4_H_
00017 #define _QUANT4x4_H_
00018
00019 extern void init_quant_4x4 (Slice *currSlice);
00020
00021 extern int quant_4x4_normal (Macroblock *currMB, int **tblock, struct quant_methods *q_method);
00022 extern int quant_4x4_around (Macroblock *currMB, int **tblock, struct quant_methods *q_method);
00023 extern int quant_4x4_trellis(Macroblock *currMB, int **tblock, struct quant_methods *q_method);
00024 extern int quant_dc4x4_normal (Macroblock *currMB, int **tblock, int qp, int* DCLevel, int* DCRun,
00025 LevelQuantParams *q_params_4x4, const byte (*pos_scan)[2]);
00026
00027 extern int quant_dc4x4_around (Macroblock *currMB, int **tblock, int qp, int* DCLevel, int* DCRun,
00028 LevelQuantParams *q_params_4x4, const byte (*pos_scan)[2]);
00029
00030 extern int quant_dc4x4_trellis(Macroblock *currMB, int **tblock, int qp, int* DCLevel, int* DCRun,
00031 LevelQuantParams *q_params_4x4, const byte (*pos_scan)[2]);
00032
00033 extern int quant_ac4x4_normal (Macroblock *currMB, int **tblock, struct quant_methods *q_method, int type);
00034 extern int quant_ac4x4_around (Macroblock *currMB, int **tblock, struct quant_methods *q_method, int type);
00035 extern int quant_ac4x4_trellis(Macroblock *currMB, int **tblock, struct quant_methods *q_method, int type);
00036
00037 extern void rdoq_4x4_CAVLC (Macroblock *currMB, int **tblock, struct quant_methods *q_method, int levelTrellis[16]);
00038
00039 extern void rdoq_4x4_CABAC (Macroblock *currMB, int **tblock, struct quant_methods *q_method, int levelTrellis[16]);
00040
00041 extern void rdoq_dc_CAVLC (Macroblock *currMB, int **tblock, int qp_per, int qp_rem, LevelQuantParams *q_params_4x4,
00042 const byte (*pos_scan)[2], int levelTrellis[16], int type);
00043
00044 extern void rdoq_dc_CABAC (Macroblock *currMB, int **tblock, int qp_per, int qp_rem, LevelQuantParams *q_params_4x4,
00045 const byte (*pos_scan)[2], int levelTrellis[16], int type);
00046
00047 extern void rdoq_ac4x4_CAVLC (Macroblock *currMB, int **tblock, struct quant_methods *q_method, int levelTrellis[16], int type);
00048
00049 extern void rdoq_ac4x4_CABAC (Macroblock *currMB, int **tblock , struct quant_methods *q_method, int levelTrellis[16], int type);
00050
00051
00052 #endif
00053