diff --git a/vp10/decoder/decodeframe.c b/vp10/decoder/decodeframe.c index f2f8ebbab7d0bce4881bcd254c666bae2c12abce..4c2054a624fda3378530fc9496ded34c118ab04a 100644 --- a/vp10/decoder/decodeframe.c +++ b/vp10/decoder/decodeframe.c @@ -3387,11 +3387,11 @@ static void read_global_motion_params(Global_Motion_Params *params, case GLOBAL_AFFINE: params->motion_params.wmmat[4] = (vp10_read_primitive_symmetric(r, GM_ABS_ALPHA_BITS) * - GM_ALPHA_DECODE_FACTOR) + - (1 << WARPEDMODEL_PREC_BITS); + GM_ALPHA_DECODE_FACTOR); params->motion_params.wmmat[5] = vp10_read_primitive_symmetric(r, GM_ABS_ALPHA_BITS) * - GM_ALPHA_DECODE_FACTOR; + GM_ALPHA_DECODE_FACTOR + + (1 << WARPEDMODEL_PREC_BITS); // fallthrough intended case GLOBAL_ROTZOOM: params->motion_params.wmmat[2] = diff --git a/vp10/encoder/bitstream.c b/vp10/encoder/bitstream.c index d5bf02c349b0ac0a4638f5347da454066422673e..81d8991f66e6144acbb7fad91246d67d7cf3da5f 100644 --- a/vp10/encoder/bitstream.c +++ b/vp10/encoder/bitstream.c @@ -3155,11 +3155,11 @@ static void write_global_motion_params(Global_Motion_Params *params, case GLOBAL_ZERO: break; case GLOBAL_AFFINE: vp10_write_primitive_symmetric( - w, (params->motion_params.wmmat[4] * GM_ALPHA_ENCODE_FACTOR) - - (1 << GM_ALPHA_PREC_BITS), + w, params->motion_params.wmmat[4] * GM_ALPHA_ENCODE_FACTOR, GM_ABS_ALPHA_BITS); vp10_write_primitive_symmetric( - w, params->motion_params.wmmat[5] * GM_ALPHA_ENCODE_FACTOR, + w, (params->motion_params.wmmat[5] * GM_ALPHA_ENCODE_FACTOR) - + (1 << GM_ALPHA_PREC_BITS), GM_ABS_ALPHA_BITS); // fallthrough intended case GLOBAL_ROTZOOM: