Reduce max_partition_size for low resolutions at speed 5. For speed 5 real-time mode, the selection of the partition size for superblocks on the segment (aq-mode=3) uses the non-rd recursive pick partition search, and can sometimes select 64x64. For low resolutions, visually better to limit this to 32x32. Change-Id: I69657a7ed8899f8b3cf8c9c318a2509c5c72c565
diff --git a/vp9/encoder/vp9_encodeframe.c b/vp9/encoder/vp9_encodeframe.c index dcddefc..7bccc82 100644 --- a/vp9/encoder/vp9_encodeframe.c +++ b/vp9/encoder/vp9_encodeframe.c
@@ -3572,7 +3572,11 @@ set_offsets(cpi, tile_info, x, mi_row, mi_col, BLOCK_64X64); if (cpi->oxcf.aq_mode == CYCLIC_REFRESH_AQ && cm->seg.enabled && xd->mi[0]->mbmi.segment_id) { - x->max_partition_size = BLOCK_64X64; + // Use lower max_partition_size for low resoultions. + if (cm->width <= 352 && cm->height <= 288) + x->max_partition_size = BLOCK_32X32; + else + x->max_partition_size = BLOCK_64X64; x->min_partition_size = BLOCK_8X8; nonrd_pick_partition(cpi, td, tile_data, tp, mi_row, mi_col, BLOCK_64X64, &dummy_rdc, 1,