diff options
author | Marco <marpan@google.com> | 2017-02-13 10:16:42 -0800 |
---|---|---|
committer | Marco <marpan@google.com> | 2017-02-21 17:22:11 -0800 |
commit | 7f2daa74a05beee77003ef4288eafb3e3db9a531 (patch) | |
tree | c56c16d218c7b7ba26007ca17c9dbeec2fd90d51 /vp9/encoder/vp9_denoiser.c | |
parent | 6036a0d24fa0946c5830f2a925bd427428c8afb1 (diff) | |
download | libvpx-7f2daa74a05beee77003ef4288eafb3e3db9a531.tar libvpx-7f2daa74a05beee77003ef4288eafb3e3db9a531.tar.gz libvpx-7f2daa74a05beee77003ef4288eafb3e3db9a531.tar.bz2 libvpx-7f2daa74a05beee77003ef4288eafb3e3db9a531.zip |
vp9: Incorporate source sum_diff into non-rd partition thresholds.
Increase the variance partition thresholds for superblocks that
have low sum-diff (from source analysis prior to encoding frame).
Use it for now only for speed >= 7 or for denoising on.
Small change on metrics for rtc set: less than ~0.1 avgPNSR decrease
on RTC set, for both speed 7 and 8.
Change-Id: I38325046ebd5f371f51d6e91233d68ff73561af1
Diffstat (limited to 'vp9/encoder/vp9_denoiser.c')
-rw-r--r-- | vp9/encoder/vp9_denoiser.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/vp9/encoder/vp9_denoiser.c b/vp9/encoder/vp9_denoiser.c index afc66d00f..c16429caf 100644 --- a/vp9/encoder/vp9_denoiser.c +++ b/vp9/encoder/vp9_denoiser.c @@ -565,12 +565,13 @@ void vp9_denoiser_set_noise_level(VP9_DENOISER *denoiser, int noise_level) { } // Scale/increase the partition threshold for denoiser speed-up. -int64_t vp9_scale_part_thresh(int64_t threshold, - VP9_DENOISER_LEVEL noise_level) { - if (noise_level >= kDenLow) - return ((5 * threshold) >> 2); +int64_t vp9_scale_part_thresh(int64_t threshold, VP9_DENOISER_LEVEL noise_level, + int content_state) { + if ((content_state == kLowSadLowSumdiff) || + (content_state == kHighSadLowSumdiff) || noise_level == kDenHigh) + return (3 * threshold) >> 1; else - return threshold; + return (5 * threshold) >> 2; } // Scale/increase the ac skip threshold for denoiser speed-up. |