From: Jerome Jiang Date: Wed, 5 Apr 2017 00:47:03 +0000 (-0700) Subject: vp9: speed 8: Compute y sad without int_pro_motion_estimation. X-Git-Tag: v1.7.0~576^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=288d73c861c3064040c63235e33aae6665e7c349;p=libvpx vp9: speed 8: Compute y sad without int_pro_motion_estimation. Little change in overall PSNR in rtc. 2-4% speedup on VGA on ARM. Change-Id: I3395806d7afd456deacd4077c330adca13ab0645 --- diff --git a/vp9/encoder/vp9_encodeframe.c b/vp9/encoder/vp9_encodeframe.c index 1a4512f9d..473b29f88 100644 --- a/vp9/encoder/vp9_encodeframe.c +++ b/vp9/encoder/vp9_encodeframe.c @@ -1141,7 +1141,13 @@ static int choose_partitioning(VP9_COMP *cpi, const TileInfo *const tile, mi->mv[0].as_int = 0; mi->interp_filter = BILINEAR; - y_sad = vp9_int_pro_motion_estimation(cpi, x, bsize, mi_row, mi_col); + if (cpi->oxcf.speed >= 8) + y_sad = cpi->fn_ptr[bsize].sdf( + x->plane[0].src.buf, x->plane[0].src.stride, xd->plane[0].pre[0].buf, + xd->plane[0].pre[0].stride); + else + y_sad = vp9_int_pro_motion_estimation(cpi, x, bsize, mi_row, mi_col); + y_sad_last = y_sad; // Pick ref frame for partitioning, bias last frame when y_sad_g and y_sad // are close if short_circuit_low_temp_var is on.