summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Wilkins <paulwilkins@google.com>2014-03-20 15:16:35 +0000
committerPaul Wilkins <paulwilkins@google.com>2014-03-21 10:10:50 +0000
commit2e05341ab4990f11763fc97361395134822667ee (patch)
treeb0cf133e0a1bd7718037b9372f1dbdaaa0ac9fb2
parent1231638d33a74e600368f8f683acb0b16a8f7219 (diff)
downloadlibvpx-2e05341ab4990f11763fc97361395134822667ee.tar
libvpx-2e05341ab4990f11763fc97361395134822667ee.tar.gz
libvpx-2e05341ab4990f11763fc97361395134822667ee.tar.bz2
libvpx-2e05341ab4990f11763fc97361395134822667ee.zip
Fix bad speed settings interaction.
The flag x->skip_recode interacts badly with the cpi->sf.use_nonrd_pick_mode and cpi->sf.skip_encode_sb speed settings. Restricting the use of the skip_decode flag when these other speed choices are in use helps quality for speeds 3 and 4 by a large amount with only a small impact on speed. Average improvmentes for 2 pass speed 4: Derf +8.8% Yt + 10.53% Std-Hd +6.95% yt-hd + 22.95% Change-Id: I8010876d8012042a11077c92e69d813c3dfa58eb
-rw-r--r--vp9/encoder/vp9_encodeframe.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/vp9/encoder/vp9_encodeframe.c b/vp9/encoder/vp9_encodeframe.c
index 070a12c24..10eb93f58 100644
--- a/vp9/encoder/vp9_encodeframe.c
+++ b/vp9/encoder/vp9_encodeframe.c
@@ -3220,7 +3220,10 @@ static void encode_superblock(VP9_COMP *cpi, TOKENEXTRA **t, int output_enabled,
x->skip_recode = !x->select_txfm_size && mbmi->sb_type >= BLOCK_8X8 &&
(cpi->oxcf.aq_mode != COMPLEXITY_AQ &&
cpi->oxcf.aq_mode != CYCLIC_REFRESH_AQ) &&
- !cpi->sf.use_nonrd_pick_mode;
+ !cpi->sf.use_nonrd_pick_mode &&
+ !cpi->sf.use_uv_intra_rd_estimate &&
+ !cpi->sf.skip_encode_sb;
+
x->skip_optimize = ctx->is_coded;
ctx->is_coded = 1;
x->use_lp32x32fdct = cpi->sf.use_lp32x32fdct;