
Go to the source code of this file.
Data Structures | |
| struct | SearchWindow |
Functions | |
| void | get_neighbors (Macroblock *currMB, PixelPos *block_a, PixelPos *block_b, PixelPos *block_c, PixelPos *block_d, int mb_x, int mb_y, int blockshape_x) |
| void | set_access_method (int *access_method, MotionVector *blk, int min_x, int min_y, int max_x, int max_y) |
| void | SetMotionVectorPredictor (Macroblock *currMB, short pmv[2], char **refPic, short ***tmp_mv, short ref_frame, int list, int block_x, int block_y, int blockshape_x, int blockshape_y) |
| void | GetMotionVectorPredictor (Macroblock *currMB, PixelPos *block_a, PixelPos *block_b, PixelPos *block_c, short pmv[2], char **refPic, short ***tmp_mv, short ref_frame, int mb_x, int mb_y, int bx, int by) |
| void | PrepareMEParams (int apply_weights, int ChromaMEEnable, int list, int ref) |
| void | PrepareBiPredMEParams (int apply_weights, int ChromaMEEnable, int list, int list_offset, int ref) |
| void | Init_Motion_Search_Module (void) |
| void | Clear_Motion_Search_Module (void) |
Variables | |
| int * | mvbits |
| int * | byte_abs |
| SearchWindow | searchrange |
| int(* | BiPredME )(Macroblock *, imgpel *, short, int, char ***, short ****, int, int, int, MotionVector *, MotionVector *, MotionVector *, MotionVector *, int, int, int, int, int) |
| int(* | SubPelBiPredME )(imgpel *orig_pic, short ref, int list, int pic_pix_x, int pic_pix_y, int blocktype, MotionVector *pred_mv1, MotionVector *pred_mv2, MotionVector *mv1, MotionVector *mv2, int search_pos2, int search_pos4, int min_mcost, int *lambda_factor, int apply_weights) |
| int(* | SubPelME )(imgpel *orig_pic, short ref, int list, int list_offset, int pic_pix_x, int pic_pix_y, int blocktype, MotionVector *pred_mv, MotionVector *mv, int search_pos2, int search_pos4, int min_mcost, int *lambda_factor, int apply_weights) |
Definition in file mv-search.h.
| void Clear_Motion_Search_Module | ( | void | ) |
Free memory used by motion search.
Definition at line 623 of file mv-search.c.
Referenced by free_encoder_memory().
| void get_neighbors | ( | Macroblock * | currMB, | |
| PixelPos * | block_a, | |||
| PixelPos * | block_b, | |||
| PixelPos * | block_c, | |||
| PixelPos * | block_d, | |||
| int | mb_x, | |||
| int | mb_y, | |||
| int | blockshape_x | |||
| ) |
Get current block spatial neighbors.
Definition at line 247 of file mv-search.c.
References pix_pos::available, get4x4Neighbour(), and ImageParameters::mb_size.
Referenced by BiPredBlockMotionSearch(), BlockMotionSearch(), EPZSBiPredBlockMotionSearch(), EPZSPelBlockMotionSearch(), FindSkipModeMotionVector(), Get_Direct_Motion_Vectors(), and writeMotionVector8x8().

| void GetMotionVectorPredictor | ( | Macroblock * | currMB, | |
| PixelPos * | block_a, | |||
| PixelPos * | block_b, | |||
| PixelPos * | block_c, | |||
| short | pmv[2], | |||
| char ** | refPic, | |||
| short *** | tmp_mv, | |||
| short | ref_frame, | |||
| int | mb_x, | |||
| int | mb_y, | |||
| int | bx, | |||
| int | by | |||
| ) |
Get motion vector predictor.
Definition at line 296 of file mv-search.c.
References pix_pos::available, pix_pos::mb_addr, ImageParameters::mb_data, macroblock::mb_field, ImageParameters::MbaffFrameFlag, pix_pos::pos_x, and pix_pos::pos_y.
Referenced by BiPredBlockMotionSearch(), BlockMotionSearch(), FindSkipModeMotionVector(), Get_Direct_Motion_Vectors(), and writeMotionVector8x8().
| void Init_Motion_Search_Module | ( | void | ) |
Initialize the motion search.
Definition at line 469 of file mv-search.c.
References InputParameters::ChromaMEEnable, computeBiPredSAD1(), computeBiPredSAD2(), computeBiPredSATD1(), computeBiPredSATD2(), computeBiPredSSE1(), computeBiPredSSE2(), computeSAD(), computeSADWP(), computeSATD(), computeSATDWP(), computeSSE(), computeSSEWP(), F_PEL, get_mem4Dint(), H_PEL, init_ME_engine(), InitializeFastFullIntegerSearch(), InputParameters::IntraProfile, ImageParameters::max_imgpel_value_comp, ImageParameters::max_num_references, InputParameters::MEErrorMetric, no_mem_exit(), Q_PEL, InputParameters::search_range, and InputParameters::SearchMode.
Referenced by init_encoder().

| void PrepareBiPredMEParams | ( | int | apply_weights, | |
| int | ChromaMEEnable, | |||
| int | list, | |||
| int | list_offset, | |||
| int | ref | |||
| ) |
Prepare Motion Estimation parameters for bipred list ME.
Definition at line 185 of file mv-search.c.
Referenced by BiPredBlockMotionSearch().
| void PrepareMEParams | ( | int | apply_weights, | |
| int | ChromaMEEnable, | |||
| int | list, | |||
| int | ref | |||
| ) |
Prepare Motion Estimation parameters for single list ME.
Definition at line 162 of file mv-search.c.
Referenced by BlockMotionSearch().
| void set_access_method | ( | int * | access_method, | |
| MotionVector * | blk, | |||
| int | min_x, | |||
| int | min_y, | |||
| int | max_x, | |||
| int | max_y | |||
| ) |
Set ME access method.
Definition at line 100 of file mv-search.c.
References FAST_ACCESS, and UMV_ACCESS.