ref: a31461c853f65e5fd9c20dfdeb82b18d6590eff8
parent: 13eed991f9450cdd8b03fc03c38ea0f9b2667bf8
author: Marco <[email protected]>
date: Tue Aug 22 10:46:39 EDT 2017
vp9: Condition lighting change detection on CBR mode. This feature is used for the CBR RTC encoding mode at speed >= 6. This change will exclude it for VBR mode. For speed 6 live encoding (VBR): avgPSNR/SSIM metrics on ytlive set up by ~1% (few clips up by 2/3%). No change in speed. Change-Id: I1a0dd94c334f7df309ab5a48d477d7e25355b798
--- a/vp9/encoder/vp9_encodeframe.c
+++ b/vp9/encoder/vp9_encodeframe.c
@@ -1012,7 +1012,8 @@
// Detect large lighting change.
if (cpi->oxcf.content != VP9E_CONTENT_SCREEN &&
- tmp_variance < (tmp_sse >> 3) && (tmp_sse - tmp_variance) > 10000)
+ cpi->oxcf.rc_mode == VPX_CBR && tmp_variance < (tmp_sse >> 3) &&
+ (tmp_sse - tmp_variance) > 10000)
x->content_state_sb = kLowVarHighSumdiff;
else if (tmp_sad > (avg_source_sad_threshold << 1))
x->content_state_sb = kVeryHighSad;