summaryrefslogtreecommitdiff
path: root/vp9/encoder/vp9_encodeframe.c
diff options
context:
space:
mode:
authorMarco <marpan@google.com>2017-06-21 20:39:59 -0700
committerMarco <marpan@google.com>2017-06-21 20:57:17 -0700
commitd7515b1187905a75bde89b1b8fc19e500b994868 (patch)
tree891b30e3a59fed0b98fc48e36bbbab297759505b /vp9/encoder/vp9_encodeframe.c
parent33a9394eb1db0f2f537bf4e94533cb9deef93e94 (diff)
downloadlibvpx-d7515b1187905a75bde89b1b8fc19e500b994868.tar
libvpx-d7515b1187905a75bde89b1b8fc19e500b994868.tar.gz
libvpx-d7515b1187905a75bde89b1b8fc19e500b994868.tar.bz2
libvpx-d7515b1187905a75bde89b1b8fc19e500b994868.zip
vp9: Add high source sad to content state.
Use it to limit NEWMV early exit in nonrd pickmode Small change in RTC metrics, has some improvement for high motion clips. Change-Id: I1d89fd955e1b3486d5fb07f4472eeeecd553f67f
Diffstat (limited to 'vp9/encoder/vp9_encodeframe.c')
-rw-r--r--vp9/encoder/vp9_encodeframe.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/vp9/encoder/vp9_encodeframe.c b/vp9/encoder/vp9_encodeframe.c
index 4b7e0ca77..786efd24a 100644
--- a/vp9/encoder/vp9_encodeframe.c
+++ b/vp9/encoder/vp9_encodeframe.c
@@ -1022,6 +1022,9 @@ static void avg_source_sad(VP9_COMP *cpi, MACROBLOCK *x, int shift,
if (tmp_variance < (tmp_sse >> 3) && (tmp_sse - tmp_variance) > 10000)
x->content_state_sb = kLowVarHighSumdiff;
+ if (tmp_sad > (avg_source_sad_threshold << 1))
+ x->content_state_sb = kVeryHighSad;
+
if (cpi->content_state_sb_fd != NULL) {
if (tmp_sad < avg_source_sad_threshold2) {
// Cap the increment to 255.