]> granicus.if.org Git - libvpx/commitdiff
Inconsistent distortion metric in vp8_rd_pick_intra_mbuv_mode
authorPaul Wilkins <paulwilkins@google.com>
Fri, 28 Jan 2011 13:13:30 +0000 (13:13 +0000)
committerPaul Wilkins <paulwilkins@google.com>
Fri, 28 Jan 2011 13:13:30 +0000 (13:13 +0000)
This function was using a variance metric compared to and SSE metric in
other places (eg. vp8_rd_inter_uv)

Change-Id: I9109fcc5a13bca9db1d7ead500fe14999ab233eb

vp8/encoder/rdopt.c

index 950c029971a3576f2d5c883e1ac409505fec8e45..50780a3c162f00bf865e08c665fbc65151d084f5 100644 (file)
@@ -813,7 +813,7 @@ int vp8_rd_pick_intra_mbuv_mode(VP8_COMP *cpi, MACROBLOCK *x, int *rate, int *ra
         rate_to = rd_cost_mbuv(x);
         rate = rate_to + x->intra_uv_mode_cost[x->e_mbd.frame_type][x->e_mbd.mode_info_context->mbmi.uv_mode];
 
-        distortion = vp8_get_mbuvrecon_error(IF_RTCD(&cpi->rtcd.variance), x);
+        distortion = ENCODEMB_INVOKE(&cpi->rtcd.encodemb, mbuverr)(x) / 4;
 
         this_rd = RDCOST(x->rdmult, x->rddiv, rate, distortion);