From: Marco Date: Tue, 7 Feb 2017 19:46:36 +0000 (-0800) Subject: vp9: Non-rd mode: use simple block_yrd for 8 bit high bitdepth builds X-Git-Tag: v1.7.0~739 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=22dcfa80aa1ad33951b9fb0171e023c2a209d57d;p=libvpx vp9: Non-rd mode: use simple block_yrd for 8 bit high bitdepth builds Temporary fix until optimization work for block_yrd is completed. This essentially reverts back to the state before the change: https://chromium-review.googlesource.com/c/433821/ Compression loss is about ~5-6% on RTC set. Speed-up (from using this simple/model-based block_yrd) over the low bitdepth builds (which uses more complex block_yrd) is ~5% on 720p. Change-Id: Ie0af9eb0d111e5595f587870c44f08317403b8d8 --- diff --git a/vp9/encoder/vp9_pickmode.c b/vp9/encoder/vp9_pickmode.c index 8126a0a71..cff8a3fa9 100644 --- a/vp9/encoder/vp9_pickmode.c +++ b/vp9/encoder/vp9_pickmode.c @@ -636,15 +636,17 @@ static void block_yrd(VP9_COMP *cpi, MACROBLOCK *x, RD_COST *this_rdc, #if CONFIG_VP9_HIGHBITDEPTH // TODO(jingning): Implement the high bit-depth Hadamard transforms and // remove this check condition. - if (xd->bd != 8) { - unsigned int var_y, sse_y; - (void)tx_size; - model_rd_for_sb_y(cpi, bsize, x, xd, &this_rdc->rate, &this_rdc->dist, - &var_y, &sse_y); - *sse = INT_MAX; - *skippable = 0; - return; - } + // TODO(marpan): Disable this for 8 bit once optimizations for the functions + // below are merged in. + // if (xd->bd != 8) { + unsigned int var_y, sse_y; + (void)tx_size; + model_rd_for_sb_y(cpi, bsize, x, xd, &this_rdc->rate, &this_rdc->dist, &var_y, + &sse_y); + *sse = INT_MAX; + *skippable = 0; + return; +// } #endif (void)cpi;