Go to the source code of this file.
Functions | |
int | Mode_Decision_for_Intra8x8Macroblock (Macroblock *currMB, double lambda, double *min_cost) |
int | Mode_Decision_for_8x8IntraBlocks_JM_Low (Macroblock *currMB, int b8, double lambda, double *min_cost) |
int | Mode_Decision_for_8x8IntraBlocks_JM_High (Macroblock *currMB, int b8, double lambda, double *min_cost) |
int | Mode_Decision_for_8x8IntraBlocks_JM_Low444 (Macroblock *currMB, int b8, double lambda, double *min_cost) |
int | Mode_Decision_for_8x8IntraBlocks_JM_High444 (Macroblock *currMB, int b8, double lambda, double *min_cost) |
double | rdcost_for_8x8_intra_blocks (Macroblock *currMB, int *c_nz, int b8, int ipmode, double lambda, double min_rdcost, int mostProbableMode) |
double | rdcost_for_8x8_intra_blocks_444 (Macroblock *currMB, int *c_nz, int b8, int ipmode, double lambda, double min_rdcost, int mostProbableMode) |
void | compute_satd8x8_cost (ImageParameters *p_Img, imgpel **cur_img, imgpel **mpr8x8, int pic_opix_x, int *cost, int min_cost) |
void | compute_sse8x8_cost (ImageParameters *p_Img, imgpel **cur_img, imgpel **mpr8x8, int pic_opix_x, int *cost, int min_cost) |
void | compute_sad8x8_cost (ImageParameters *p_Img, imgpel **cur_img, imgpel **mpr8x8, int pic_opix_x, int *cost, int min_cost) |
void | compute_comp8x8_cost (ImageParameters *p_Img, imgpel **cur_img, imgpel **mpr8x8, int pic_opix_x, int *cost, int min_cost) |
int | dct_8x8 (Macroblock *currMB, ColorPlane pl, int b8, int *coeff_cost, int intra) |
int | dct_8x8_cavlc (Macroblock *currMB, ColorPlane pl, int b8, int *coeff_cost, int intra) |
int | dct_8x8_ls (Macroblock *currMB, ColorPlane pl, int b8, int *coeff_cost, int intra) |
Definition in file transform8x8.h.
void compute_comp8x8_cost | ( | ImageParameters * | p_Img, | |
imgpel ** | cur_img, | |||
imgpel ** | mpr8x8, | |||
int | pic_opix_x, | |||
int * | cost, | |||
int | min_cost | |||
) |
void compute_sad8x8_cost | ( | ImageParameters * | p_Img, | |
imgpel ** | cur_img, | |||
imgpel ** | mpr8x8, | |||
int | pic_opix_x, | |||
int * | cost, | |||
int | min_cost | |||
) |
void compute_satd8x8_cost | ( | ImageParameters * | p_Img, | |
imgpel ** | cur_img, | |||
imgpel ** | mpr8x8, | |||
int | pic_opix_x, | |||
int * | cost, | |||
int | min_cost | |||
) |
SATD distortion for an 8x8 Intra block.
Definition at line 862 of file transform8x8.c.
References HadamardSAD8x8().
void compute_sse8x8_cost | ( | ImageParameters * | p_Img, | |
imgpel ** | cur_img, | |||
imgpel ** | mpr8x8, | |||
int | pic_opix_x, | |||
int * | cost, | |||
int | min_cost | |||
) |
int dct_8x8 | ( | Macroblock * | currMB, | |
ColorPlane | pl, | |||
int | b8, | |||
int * | coeff_cost, | |||
int | intra | |||
) |
The routine performs transform,quantization,inverse transform, adds the diff. to the prediction and writes the result to the decoded luma frame. Includes the RD constrained quantization also.
Definition at line 519 of file transform8x8.c.
References img_par::AdaptiveRounding, macroblock::ar_mode, img_par::ARCofAdj8x8, COEFF_COST8x8, copy_image_data_8x8(), FIELD_SCAN8x8, img_par::max_imgpel_value, storable_picture::p_curr_img, macroblock::p_Img, macroblock::p_slice, macroblock::pix_x, macroblock::pix_y, macroblock::qp_scaled, and SNGL_SCAN8x8.
int dct_8x8_cavlc | ( | Macroblock * | currMB, | |
ColorPlane | pl, | |||
int | b8, | |||
int * | coeff_cost, | |||
int | intra | |||
) |
The routine performs transform,quantization,inverse transform, adds the diff. to the prediction and writes the result to the decoded luma frame. Includes the RD constrained quantization also. Used for CAVLC.
Definition at line 601 of file transform8x8.c.
References img_par::AdaptiveRounding, macroblock::ar_mode, img_par::ARCofAdj8x8, COEFF_COST8x8, slice::cofAC, copy_image_data_8x8(), FIELD_SCAN8x8, img_par::max_imgpel_value, slice::mb_ores, slice::mb_pred, slice::mb_rres, storable_picture::p_curr_img, macroblock::p_Img, macroblock::p_slice, macroblock::pix_x, macroblock::pix_y, macroblock::qp_scaled, and SNGL_SCAN8x8.
int Mode_Decision_for_8x8IntraBlocks_JM_High | ( | Macroblock * | currMB, | |
int | b8, | |||
double | lambda, | |||
double * | min_cost | |||
) |
8x8 Intra mode decision for a macroblock - High complexity
Definition at line 220 of file rd_intra_jm.c.
References img_par::AdaptiveRounding, img_par::ARCofAdj8x8, macroblock::block_x, macroblock::block_y, slice::cofAC, copy_image_data_8x8(), get4x4Neighbour(), get_intrapred_8x8(), storable_picture::imgY, macroblock::intra_pred_modes8x8, img_par::ipredmode, img_par::ipredmode8x8, slice::mb_ores, slice::mb_pred, slice::mpr_8x8, macroblock::opix_y, macroblock::p_Img, macroblock::p_slice, img_par::pCurImg, macroblock::pix_x, macroblock::pix_y, set_intrapred_8x8(), and inp_par_enc::UseConstrainedIntraPred.
Referenced by init_rdopt().
int Mode_Decision_for_8x8IntraBlocks_JM_High444 | ( | Macroblock * | currMB, | |
int | b8, | |||
double | lambda, | |||
double * | min_cost | |||
) |
8x8 Intra mode decision for a macroblock - High complexity
Definition at line 204 of file transform8x8_H444.c.
References img_par::AdaptiveRounding, img_par::ARCofAdj8x8, macroblock::block_x, macroblock::block_y, slice::cofAC, copy_image_data_8x8(), get4x4Neighbour(), get_intrapred_8x8(), storable_picture::imgUV, storable_picture::imgY, macroblock::intra_pred_modes8x8, img_par::ipredmode, img_par::ipredmode8x8, slice::mb_ores, slice::mb_pred, slice::mpr_8x8, macroblock::opix_y, macroblock::p_Img, macroblock::p_slice, macroblock::pix_x, macroblock::pix_y, select_plane(), set_intrapred_8x8(), and inp_par_enc::UseConstrainedIntraPred.
Referenced by init_rdopt().
int Mode_Decision_for_8x8IntraBlocks_JM_Low | ( | Macroblock * | currMB, | |
int | b8, | |||
double | lambda, | |||
double * | min_cost | |||
) |
8x8 Intra mode decision for a macroblock - Low complexity
Definition at line 157 of file rd_intra_jm_low.c.
References macroblock::block_x, macroblock::block_y, get4x4Neighbour(), get_intrapred_8x8(), macroblock::intra_pred_modes8x8, img_par::ipredmode, img_par::ipredmode8x8, slice::mb_ores, slice::mb_pred, slice::mpr_8x8, macroblock::opix_y, macroblock::p_Img, macroblock::p_slice, img_par::pCurImg, macroblock::pix_x, macroblock::pix_y, set_intrapred_8x8(), and inp_par_enc::UseConstrainedIntraPred.
Referenced by init_rdopt().
int Mode_Decision_for_8x8IntraBlocks_JM_Low444 | ( | Macroblock * | currMB, | |
int | b8, | |||
double | lambda, | |||
double * | min_cost | |||
) |
8x8 Intra mode decision for a macroblock - Low complexity
Definition at line 48 of file transform8x8_H444.c.
References macroblock::block_x, macroblock::block_y, get4x4Neighbour(), get_intrapred_8x8(), macroblock::intra_pred_modes8x8, img_par::ipredmode, img_par::ipredmode8x8, slice::mb_ores, slice::mb_pred, slice::mpr_8x8, macroblock::opix_y, macroblock::p_Img, macroblock::p_slice, img_par::pCurImg, macroblock::pix_x, macroblock::pix_y, select_plane(), set_intrapred_8x8(), and inp_par_enc::UseConstrainedIntraPred.
Referenced by init_rdopt().
int Mode_Decision_for_Intra8x8Macroblock | ( | Macroblock * | currMB, | |
double | lambda, | |||
double * | min_cost | |||
) |
8x8 Intra mode decision for a macroblock
Definition at line 228 of file transform8x8.c.
References macroblock::p_slice.
Referenced by encode_one_macroblock_low(), and RDCost_for_macroblocks().
double rdcost_for_8x8_intra_blocks | ( | Macroblock * | currMB, | |
int * | c_nz, | |||
int | b8, | |||
int | ipmode, | |||
double | lambda, | |||
double | min_rdcost, | |||
int | mostProbableMode | |||
) |
R-D Cost for an 8x8 Intra block.
Definition at line 287 of file transform8x8.c.
References assignSE2partition, compute_SSE8x8(), syntaxelement::context, storable_picture::imgY, syntaxelement::len, macroblock::opix_y, macroblock::p_Img, macroblock::p_slice, slice::partArr, img_par::pCurImg, macroblock::pix_x, macroblock::pix_y, slice::slice_type, syntaxelement::type, syntaxelement::value1, and writeCoeff8x8_CABAC().
Referenced by init_rdopt().
double rdcost_for_8x8_intra_blocks_444 | ( | Macroblock * | currMB, | |
int * | c_nz, | |||
int | b8, | |||
int | ipmode, | |||
double | lambda, | |||
double | min_rdcost, | |||
int | mostProbableMode | |||
) |
R-D Cost for an 8x8 Intra block.
Definition at line 367 of file transform8x8.c.
References assignSE2partition, compute_SSE8x8(), syntaxelement::context, storable_picture::imgY, syntaxelement::len, macroblock::opix_y, storable_picture::p_curr_img, macroblock::p_Img, macroblock::p_slice, slice::partArr, img_par::pCurImg, macroblock::pix_x, macroblock::pix_y, select_plane(), slice::slice_type, syntaxelement::type, syntaxelement::value1, and writeCoeff8x8_CABAC().
Referenced by init_rdopt().