Properly handle the effective motion vector in inferred mv modes

This commit allows vpxenc to properly set the effective motion
vector values in the mode_info struct for inferred motion vector
modes. It resolves an enc/dec mismatch issue due to the mode info
struct loaded from external file has conflict effective motion
vector and inferred prediction mode.

Change-Id: I1f47aeaf2b92fcd4dd3d4f3644b88466495be070
This commit is contained in:
Jingning Han
2014-07-15 22:34:13 -07:00
committed by Gerrit Code Review
parent 9e3965ae90
commit c765cd1a78

View File

@@ -625,6 +625,20 @@ static void mode_info_conversion(VP9_COMP *cpi, const TileInfo *const tile,
} }
mbmi->mode = mi->bmi[3].as_mode; mbmi->mode = mi->bmi[3].as_mode;
} else {
switch (mbmi->mode) {
case NEARESTMV:
mbmi->mv[0].as_int = nearest_mv.as_int;
break;
case NEARMV:
mbmi->mv[0].as_int = near_mv.as_int;
break;
case ZEROMV:
mbmi->mv[0].as_int = 0;
break;
default:
break;
}
} }
} }
#endif #endif