From c99a8fd7c896fad03d43514bb6a7708cecbbede6 Mon Sep 17 00:00:00 2001 From: Jingning Han Date: Thu, 19 Jun 2014 09:24:09 -0700 Subject: [PATCH] Allow key frame more flexibility in mode search This commit allows the key frame to search through more prediction modes and more flexible block sizes. No speed change observed. The coding performance for rtc set is improved by 1.7% for speed -5 and 3.0% for speed -6. Change-Id: Ifd1bc28558017851b210b4004f2d80838938bcc5 --- vp9/encoder/vp9_rdopt.c | 3 --- vp9/encoder/vp9_speed_features.c | 2 ++ 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/vp9/encoder/vp9_rdopt.c b/vp9/encoder/vp9_rdopt.c index 429dcb1c0..6c055c4dc 100644 --- a/vp9/encoder/vp9_rdopt.c +++ b/vp9/encoder/vp9_rdopt.c @@ -1277,9 +1277,6 @@ static int64_t rd_pick_intra_sby_mode(VP9_COMP *cpi, MACROBLOCK *x, MODE_INFO *above_mi = xd->mi[-xd->mi_stride]; MODE_INFO *left_mi = xd->left_available ? xd->mi[-1] : NULL; - if (!(cpi->sf.intra_y_mode_mask[max_txsize_lookup[bsize]] & (1 << mode))) - continue; - if (cpi->common.frame_type == KEY_FRAME) { const PREDICTION_MODE A = vp9_above_block_mode(mic, above_mi, 0); const PREDICTION_MODE L = vp9_left_block_mode(mic, left_mi, 0); diff --git a/vp9/encoder/vp9_speed_features.c b/vp9/encoder/vp9_speed_features.c index 6beb87234..a68271825 100644 --- a/vp9/encoder/vp9_speed_features.c +++ b/vp9/encoder/vp9_speed_features.c @@ -249,6 +249,8 @@ static void set_rt_speed_feature(VP9_COMP *cpi, SPEED_FEATURES *sf, } if (speed >= 5) { + sf->auto_min_max_partition_size = (cm->frame_type == KEY_FRAME) ? + RELAXED_NEIGHBORING_MIN_MAX : STRICT_NEIGHBORING_MIN_MAX; sf->max_partition_size = BLOCK_32X32; sf->min_partition_size = BLOCK_8X8; sf->partition_check = -- 2.50.1