[svn] / branches / dev-api-4 / xvidcore / src / motion / motion_est.c Repository:
ViewVC logotype

Diff of /branches/dev-api-4/xvidcore/src/motion/motion_est.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 347, Sun Jul 28 13:06:46 2002 UTC revision 348, Sun Jul 28 17:10:39 2002 UTC
# Line 3297  Line 3297 
3297                                                  f_predMV.x, f_predMV.y, b_predMV.x, b_predMV.y,                                                  f_predMV.x, f_predMV.y, b_predMV.x, b_predMV.y,
3298                                                  f_min_dx, f_max_dx, f_min_dy, f_max_dy,                                                  f_min_dx, f_max_dx, f_min_dy, f_max_dy,
3299                                                  b_min_dx, b_max_dx, b_min_dy, b_max_dy,                                                  b_min_dx, b_max_dx, b_min_dy, b_max_dy,
3300                                                  edged_width,  1,                                                  edged_width,  2,
3301                                                  frame->fcode, frame->bcode,frame->quant,0);                                                  frame->fcode, frame->bcode,frame->quant,0);
3302    
3303                            i_sad16 = Diamond16_InterpolMainSearch(
3304                                                    f_ref->y, f_refH->y, f_refV->y, f_refHV->y,
3305                                                    frame->image.y + i * 16 + j * 16 * edged_width,
3306                                                    b_ref->y, b_refH->y, b_refV->y, b_refHV->y,
3307                                                    i, j,
3308                                                    f_interpolMV.x, f_interpolMV.y,
3309                                                    b_interpolMV.x, b_interpolMV.y,
3310                                                    i_sad16,
3311                                                    &f_interpolMV, &b_interpolMV,
3312                                                    f_predMV.x, f_predMV.y, b_predMV.x, b_predMV.y,
3313                                                    f_min_dx, f_max_dx, f_min_dy, f_max_dy,
3314                                                    b_min_dx, b_max_dx, b_min_dy, b_max_dy,
3315                                                    edged_width,  1,
3316                                                    frame->fcode, frame->bcode,frame->quant,0);             // equiv to halfpel refine
3317    
3318    
3319  /*  DIRECT MODE DELTA VECTOR SEARCH.  /*  DIRECT MODE DELTA VECTOR SEARCH.
3320      This has to be made more effective, but at the moment I'm happy it's running at all */      This has to be made more effective, but at the moment I'm happy it's running at all */
3321    
3322  /* range is taken without fcode restriction, just a hack instead of writing down the dimensions, of course */  /* There are two range restrictions for direct mode: deltaMV is limited to [-32,31] in halfpel units, and
3323       absolute vector must not lie outside of image dimensions. Constraint one is dealt with by CHECK_MV16_DIRECT
3324       and for constraint two we need distance to boundary. This is done by get_range very large fcode (hack!) */
3325    
3326                          get_range(&min_dx, &max_dx, &min_dy, &max_dy, i, j, 16, iWidth, iHeight, 19);                          get_range(&min_dx, &max_dx, &min_dy, &max_dy, i, j, 16, iWidth, iHeight, 19);
3327    
# Line 3317  Line 3334 
3334                                                  0,0,                                                  0,0,
3335                                                  d_sad16,                                                  d_sad16,
3336                                                  &mb->deltamv,                                                  &mb->deltamv,
3337                                                  mb->directmv, // this has to be pre-initialized with b_mb->mvs[}                                                  mb->directmv, // this has to be pre-initialized with b_mb->mvs[]
3338                                            min_dx, max_dx, min_dy, max_dy,
3339                                                    edged_width, 2, frame->quant, 0);
3340    
3341                            d_sad16 = Diamond16_DirectMainSearch(
3342                                                    f_ref->y, f_refH->y, f_refV->y, f_refHV->y,
3343                                                    frame->image.y + i*16 + j*16*edged_width,
3344                                                    b_ref->y, b_refH->y, b_refV->y, b_refHV->y,
3345                                                    i, j,
3346                                                    TRB,TRD,
3347                                                    mb->deltamv.x, mb->deltamv.y,
3348                                                    d_sad16,
3349                                                    &mb->deltamv,
3350                                                    mb->directmv, // this has to be pre-initialized with b_mb->mvs[]
3351                                          min_dx, max_dx, min_dy, max_dy,                                          min_dx, max_dx, min_dy, max_dy,
3352                                                  edged_width, 1, frame->quant, 0);                                                  edged_width, 1, frame->quant, 0);               // equiv to halfpel refine
3353    
3354    
3355  //                      i_sad16 = 65535;                /* remove the comment to disable any of the MODEs */  //                      i_sad16 = 65535;                /* remove the comment to disable any of the MODEs */

Legend:
Removed from v.347  
changed lines
  Added in v.348

No admin address has been configured
ViewVC Help
Powered by ViewVC 1.0.4