Allow the use of large SB size for screen contents
More static area exists in screen contents. Using large Sb size (i.e.
128x128) helps the encoder performance.
Borg result (sc_web_browsing720p.y4m):
ovr_psnr: ssim: vmaf: encoding_spdup:
speed 7: -1.130 -1.044 -0.251 2.335
speed 10: -1.488 -0.159 -3.230 0.767
STATS_CHANGED for SC 720p
Change-Id: Ib0451ce47a9af652d9946f0acc25363cc5e56c92
diff --git a/av1/encoder/encoder_utils.c b/av1/encoder/encoder_utils.c
index ea13edd..5bbb7a4 100644
--- a/av1/encoder/encoder_utils.c
+++ b/av1/encoder/encoder_utils.c
@@ -792,7 +792,10 @@
? BLOCK_128X128
: BLOCK_64X64;
} else if (oxcf->mode == REALTIME) {
- return AOMMIN(width, height) > 720 ? BLOCK_128X128 : BLOCK_64X64;
+ if (oxcf->tune_cfg.content == AOM_CONTENT_SCREEN)
+ return AOMMIN(width, height) >= 720 ? BLOCK_128X128 : BLOCK_64X64;
+ else
+ return AOMMIN(width, height) > 720 ? BLOCK_128X128 : BLOCK_64X64;
}
// TODO(any): Possibly could improve this with a heuristic.