00001 00002 /*! 00003 ************************************************************************ 00004 * \file 00005 * me_fullfast.h 00006 * 00007 * \author 00008 * Alexis Michael Tourapis <alexis.tourapis@dolby.com> 00009 * 00010 * \date 00011 * 9 September 2006 00012 * 00013 * \brief 00014 * Headerfile for Fast Full Search motion estimation 00015 ************************************************************************** 00016 */ 00017 00018 00019 #ifndef _ME_FULLFAST_H_ 00020 #define _ME_FULLFAST_H_ 00021 typedef struct me_full_fast 00022 { 00023 int **search_setup_done; //!< flag if all block SAD's have been calculated yet 00024 MotionVector **search_center; //!< absolute search center for fast full motion search 00025 MotionVector **search_center_padded; //!< absolute search center for fast full motion search 00026 int **pos_00; //!< position of (0,0) vector 00027 distpel *****BlockSAD; //!< SAD for all blocksize, ref. frames and motion vectors 00028 int **max_search_range; 00029 } MEFullFast; 00030 00031 extern int FastFullPelBlockMotionSearch (Macroblock *currMB, MotionVector *pred_mv, MEBlock *mv_block, int min_mcost, int lambda_factor); 00032 extern void InitializeFastFullIntegerSearch (ImageParameters *p_Img, InputParameters *p_Inp); 00033 extern void ResetFastFullIntegerSearch (ImageParameters *p_Img); 00034 extern void ClearFastFullIntegerSearch (ImageParameters *p_Img); 00035 00036 00037 #endif 00038