--- motion_comp.c 2002/06/20 14:05:58 1.7 +++ motion_comp.c 2002/08/15 18:13:02 1.10 @@ -7,8 +7,6 @@ #include "../utils/timer.h" #include "motion.h" -#undef BFRAMES - #define ABS(X) (((X)>0)?(X):-(X)) #define SIGN(X) (((X)>0)?1:-1) @@ -101,7 +99,10 @@ dy = (dy & 3) ? (dy >> 1) | 1 : dy / 2; /* uv-image-based compensation */ -#ifdef BFRAMES +#ifdef BUGGY_BFRAMES +/* was #ifdef BFRAMES, but that's not possible because non-halfpel is _allowed_ + if max_bframes<=0 . We should better check for XVID_HALFPEL flag */ + compensate8x8_halfpel(&dct_codes[4 * 64], cur->u, ref->u, refh->u, refv->u, refhv->u, 8 * i, 8 * j, dx, dy, edged_width / 2); @@ -109,6 +110,8 @@ refv->v, refhv->v, 8 * i, 8 * j, dx, dy, edged_width / 2); #else + + /* uv-block-based compensation */ interpolate8x8_switch(refv->u, ref->u, 8 * i, 8 * j, dx, dy, edged_width / 2, rounding);