summaryrefslogtreecommitdiff
path: root/vp9/encoder
diff options
context:
space:
mode:
authorPaul Wilkins <paulwilkins@google.com>2019-04-02 16:31:33 +0100
committerPaul Wilkins <paulwilkins@google.com>2019-04-02 16:32:41 +0100
commit4d1637ff67a8912504e27d31ff445b0be4531451 (patch)
treef407edbc44de16649061098bbf0617062579f37e /vp9/encoder
parent1c0857d648c1e2eb13de3d2e717b1848bbc602d9 (diff)
downloadlibvpx-4d1637ff67a8912504e27d31ff445b0be4531451.tar
libvpx-4d1637ff67a8912504e27d31ff445b0be4531451.tar.gz
libvpx-4d1637ff67a8912504e27d31ff445b0be4531451.tar.bz2
libvpx-4d1637ff67a8912504e27d31ff445b0be4531451.zip
Film mode: Raise threshold for intra modes
Substantially increase the threshold for applying variance adjustment in rd_variance_adjustment() for intra modes only, especially for DC_PRED. Change-Id: Idb3f0c5aca5ab58c9b79c3e993247719054d79c9
Diffstat (limited to 'vp9/encoder')
-rw-r--r--vp9/encoder/vp9_rdopt.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/vp9/encoder/vp9_rdopt.c b/vp9/encoder/vp9_rdopt.c
index 8ed27a80c..bf631d1bf 100644
--- a/vp9/encoder/vp9_rdopt.c
+++ b/vp9/encoder/vp9_rdopt.c
@@ -3171,6 +3171,11 @@ static void rd_variance_adjustment(VP9_COMP *cpi, MACROBLOCK *x,
double noise_factor =
(double)cpi->twopass.gf_group.group_noise_energy / SECTION_NOISE_DEF;
low_var_thresh = (unsigned int)(low_var_thresh * noise_factor);
+
+ if (ref_frame == INTRA_FRAME) {
+ low_var_thresh *= 2;
+ if (this_mode == DC_PRED) low_var_thresh *= 5;
+ }
}
} else {
low_var_thresh = LOW_VAR_THRESH / 2;