]> granicus.if.org Git - libvpx/commitdiff
Fix error in get_smooth_intra_threshold() for 10/12 bit.
authorpaulwilkins <paulwilkins@google.com>
Thu, 30 Jun 2016 12:31:39 +0000 (13:31 +0100)
committerpaulwilkins <paulwilkins@google.com>
Thu, 30 Jun 2016 12:34:11 +0000 (13:34 +0100)
This function seems to scale the threshold for testing an
SSE value in the wrong direction for 10 and 12 bit inputs.

Also for a true SSE the scalings should probably be << 4 and 8

Change-Id: Iba8047b3f70d04aa46d9688a824f3d49c1c58e90

vp9/encoder/vp9_firstpass.c

index 53a3ec7deef520ed2848bc577e0e9652cbc9400a..11b397cd6880f713d8c4bd1d40813ed7ab64960b 100644 (file)
@@ -532,10 +532,10 @@ static int get_smooth_intra_threshold(VP9_COMMON *cm) {
         ret_val = SMOOTH_INTRA_THRESH;
         break;
       case VPX_BITS_10:
-        ret_val = SMOOTH_INTRA_THRESH >> 2;
+        ret_val = SMOOTH_INTRA_THRESH << 4;
         break;
       case VPX_BITS_12:
-        ret_val = SMOOTH_INTRA_THRESH >> 4;
+        ret_val = SMOOTH_INTRA_THRESH << 8;
         break;
       default:
         assert(0 && "cm->bit_depth should be VPX_BITS_8, "