vp9 pickmode: Fix the shift on negative value.
authorMarco <marpan@google.com>
Thu, 21 Jan 2016 23:13:10 +0000 (15:13 -0800)
committerMarco <marpan@google.com>
Thu, 21 Jan 2016 23:16:52 +0000 (15:16 -0800)
Error only affected svc 1 pass mode, introduced in:
https://chromium-review.googlesource.com/#/c/319609/

Change-Id: Ifc078c82d38b742966a81baaf5ad532f7dbc13a4

vp9/encoder/vp9_pickmode.c

index a9c52b1..755323d 100644 (file)
@@ -117,8 +117,8 @@ static int mv_refs_rt(VP9_COMP *cpi, const VP9_COMMON *cm,
     MV_REF *candidate =
         &cm->prev_frame->mvs[(mi_col>>1) + (mi_row>>1) * (cm->mi_cols>>1)];
     if (candidate->mv[0].as_int != INVALID_MV) {
-        base_mv->as_mv.row = (candidate->mv[0].as_mv.row << 1);
-        base_mv->as_mv.col = (candidate->mv[0].as_mv.col << 1);
+        base_mv->as_mv.row = (candidate->mv[0].as_mv.row * 2);
+        base_mv->as_mv.col = (candidate->mv[0].as_mv.col * 2);
       clamp_mv_ref(&base_mv->as_mv, xd);
     } else {
       base_mv->as_int = INVALID_MV;