# HG changeset patch # User darkshikari # Date 1279867295 0 # Node ID a2f6d8c61b9ccf55f768ee4e901485eea542303b # Parent c7f6ddcc5c01ed6fdb2920f94f20b32c65450a56 VP8: fix broken sign bias code in MV pred Apparently the official conformance test vectors don't test this feature, even though libvpx uses it. diff -r c7f6ddcc5c01 -r a2f6d8c61b9c vp8.c --- a/vp8.c Fri Jul 23 06:02:52 2010 +0000 +++ b/vp8.c Fri Jul 23 06:41:35 2010 +0000 @@ -557,7 +557,8 @@ if (mv) {\ if (cur_sign_bias != sign_bias[edge_ref]) {\ /* SWAR negate of the values in mv. */\ - mv = ((mv&0x80008000) + 0x00010001) ^ (mv&0x7fff7fff);\ + mv = ~mv;\ + mv = ((mv&0x7fff7fff) + 0x00010001) ^ (mv&0x80008000);\ }\ if (!n || mv != AV_RN32A(&near_mv[idx]))\ AV_WN32A(&near_mv[++idx], mv);\