Prevent negative cost for highbitdepth
authorDeb Mukherjee <debargha@google.com>
Fri, 3 Oct 2014 17:22:21 +0000 (10:22 -0700)
committerDeb Mukherjee <debargha@google.com>
Fri, 3 Oct 2014 17:22:21 +0000 (10:22 -0700)
Adds proper scaling for highbitdepth in a rdopt cost.

Change-Id: I066694799a7f491b830945ef1c66eb202071c355

vp9/encoder/vp9_rdopt.c

index b14ff08..0ae0d57 100644 (file)
@@ -491,7 +491,9 @@ static void block_rd_txfm(int plane, int block, BLOCK_SIZE plane_bsize,
       if (x->plane[plane].eobs[block]) {
         int64_t dc_correct = coeff[0] * coeff[0] -
             (coeff[0] - dqcoeff[0]) * (coeff[0] - dqcoeff[0]);
-
+#if CONFIG_VP9_HIGHBITDEPTH
+        dc_correct >>= ((xd->bd - 8) * 2);
+#endif
         if (tx_size != TX_32X32)
           dc_correct >>= 2;