#include "contributors.h"
#include <limits.h>
#include "global.h"
#include "image.h"
#include "memalloc.h"
#include "mb_access.h"
#include "refbuf.h"
#include "me_distortion.h"
#include "me_fullsearch.h"
#include "me_fullfast.h"
#include "conformance.h"
#include "mv_search.h"
Go to the source code of this file.
Defines | |
#define | ADD_UP_BLOCKS() _o=*_bo; _i=*_bi; _j=*_bj; for(pos=0;pos<max_pos;pos++) _o[pos] = _i[pos] + _j[pos]; |
#define | INCREMENT(inc) _bo+=inc; _bi+=inc; _bj+=inc; |
Functions | |
void | InitializeFastFullIntegerSearch (ImageParameters *p_Img, InputParameters *p_Inp) |
void | ClearFastFullIntegerSearch (ImageParameters *p_Img) |
void | ResetFastFullIntegerSearch (ImageParameters *p_Img) |
void | SetupLargerBlocks (MEFullFast *p_ffast_me, int list, int refindex, int max_pos) |
void | SetupFastFullPelSearch (Macroblock *currMB, MEBlock *mv_block, int list) |
int | FastFullPelBlockMotionSearch (Macroblock *currMB, MotionVector *pred_mv, MEBlock *mv_block, int min_mcost, int lambda_factor) |
Definition in file me_fullfast.c.
void ClearFastFullIntegerSearch | ( | ImageParameters * | p_Img | ) |
function for deleting the arrays for fast integer motion estimation
Definition at line 135 of file me_fullfast.c.
References img_par::max_num_references.
Referenced by Clear_Motion_Search_Module().
int FastFullPelBlockMotionSearch | ( | Macroblock * | currMB, | |
MotionVector * | pred_mv, | |||
MEBlock * | mv_block, | |||
int | min_mcost, | |||
int | lambda_factor | |||
) |
Fast Full pixel block motion search.
Definition at line 621 of file me_fullfast.c.
References macroblock::p_Img, and SetupFastFullPelSearch().
Referenced by init_ME_engine().
void InitializeFastFullIntegerSearch | ( | ImageParameters * | p_Img, | |
InputParameters * | p_Inp | |||
) |
Full pixel block motion search.
function creating arrays for fast integer motion estimation
Definition at line 48 of file me_fullfast.c.
References img_par::max_num_references, no_mem_exit(), and inp_par_enc::search_range.
Referenced by Init_Motion_Search_Module().
void ResetFastFullIntegerSearch | ( | ImageParameters * | p_Img | ) |
function resetting flags for fast integer motion estimation (have to be called in start_macroblock())
Definition at line 183 of file me_fullfast.c.
References img_par::max_num_references.
Referenced by start_macroblock().
void SetupFastFullPelSearch | ( | Macroblock * | currMB, | |
MEBlock * | mv_block, | |||
int | list | |||
) |
Setup the fast search for an macroblock.
Definition at line 269 of file me_fullfast.c.
References get_neighbors(), img_par::max_imgpel_value, img_par::max_pel_value_comp, img_par::MaxHmvR, img_par::MaxVmvR, img_par::mb_data, macroblock::mbAddrX, storable_picture::motion, pic_motion_params::mv, macroblock::opix_c_y, macroblock::opix_y, macroblock::p_slice, img_par::pCurImg, macroblock::pix_c_x, macroblock::pix_x, pic_motion_params::ref_idx, SetupLargerBlocks(), slice::slice_type, UMVLine4X(), UMVLine8X_chroma(), inp_par_enc::UseWeightedReferenceME, slice::wp_offset, and slice::wp_weight.
Referenced by FastFullPelBlockMotionSearch().
void SetupLargerBlocks | ( | MEFullFast * | p_ffast_me, | |
int | list, | |||
int | refindex, | |||
int | max_pos | |||
) |
calculation of SAD for larger blocks on the basis of 4x4 blocks
Definition at line 196 of file me_fullfast.c.
Referenced by SetupFastFullPelSearch().