From 6557baf3363e967c05da910daf3ec41d22594e2d Mon Sep 17 00:00:00 2001 From: Marco Date: Mon, 10 Apr 2017 14:56:46 -0700 Subject: [PATCH] vp9: 1 pass CBR: avoid nonrd_pick_partition on segment. For speed 5, 1 pass CBR: Don't use the nonrd_pick_partition on the segment, rather use choose_partitioning followed by nonrd_select_partition (as is done on base segment). Little/no quality loss on RTC and RTC_derf (< 0.3%), speedup of at least 5%. Change-Id: I5273d5f950e60adf5e437b4ca8c4f63964641e83 --- vp9/encoder/vp9_encodeframe.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/vp9/encoder/vp9_encodeframe.c b/vp9/encoder/vp9_encodeframe.c index 9b09e38..244d477f 100644 --- a/vp9/encoder/vp9_encodeframe.c +++ b/vp9/encoder/vp9_encodeframe.c @@ -4152,14 +4152,11 @@ static void encode_nonrd_sb_row(VP9_COMP *cpi, ThreadData *td, break; case REFERENCE_PARTITION: set_offsets(cpi, tile_info, x, mi_row, mi_col, BLOCK_64X64); - // Use nonrd_pick_partition on scene-cut for VBR, or on qp-segment - // if cyclic_refresh is enabled. + // Use nonrd_pick_partition on scene-cut for VBR mode. // nonrd_pick_partition does not support 4x4 partition, so avoid it // on key frame for now. if ((cpi->oxcf.rc_mode == VPX_VBR && cpi->rc.high_source_sad && - cm->frame_type != KEY_FRAME) || - (cpi->oxcf.aq_mode == CYCLIC_REFRESH_AQ && cm->seg.enabled && - xd->mi[0]->segment_id)) { + cm->frame_type != KEY_FRAME)) { // Use lower max_partition_size for low resoultions. if (cm->width <= 352 && cm->height <= 288) x->max_partition_size = BLOCK_32X32; -- 2.7.4