summaryrefslogtreecommitdiff
path: root/vp8/common
diff options
context:
space:
mode:
authorDeb Mukherjee <debargha@google.com>2012-09-04 12:09:05 -0700
committerDeb Mukherjee <debargha@google.com>2012-09-04 12:30:09 -0700
commitc6fd0a5dd65f0723dbabed2f17f12c87b37aab7a (patch)
tree68c6e562cb90ae3e5822633d173e05ca2568e0f0 /vp8/common
parent7e9a519fbbf1b67965537da91e712f846be6c48e (diff)
downloadlibvpx-c6fd0a5dd65f0723dbabed2f17f12c87b37aab7a.tar
libvpx-c6fd0a5dd65f0723dbabed2f17f12c87b37aab7a.tar.gz
libvpx-c6fd0a5dd65f0723dbabed2f17f12c87b37aab7a.tar.bz2
libvpx-c6fd0a5dd65f0723dbabed2f17f12c87b37aab7a.zip
Adjusting thresholds in mfqe post-processing
Adjusts some of the qualification thresholds in mfqe to eliminate artifacts due to wrong decisions. Besides, a new qualification criteria is used to disable mfqe if the quality of the previous frame is itself not too good. Change-Id: I4097c20b7fd4fcc60cc3003c1e33e8faae2ff066
Diffstat (limited to 'vp8/common')
-rw-r--r--vp8/common/mfqe.c4
-rw-r--r--vp8/common/postproc.c3
2 files changed, 4 insertions, 3 deletions
diff --git a/vp8/common/mfqe.c b/vp8/common/mfqe.c
index 3fe5bca3d..3dff1505b 100644
--- a/vp8/common/mfqe.c
+++ b/vp8/common/mfqe.c
@@ -185,8 +185,8 @@ static void multiframe_quality_enhance_block
actrisk = (actd > act * 5);
- /* thr = qdiff/8 + log2(act) + log4(qprev) */
- thr = (qdiff >> 3);
+ /* thr = qdiff/16 + log2(act) + log4(qprev) */
+ thr = (qdiff >> 4);
while (actd >>= 1) thr++;
while (qprev >>= 2) thr++;
diff --git a/vp8/common/postproc.c b/vp8/common/postproc.c
index a7509ff4e..444898784 100644
--- a/vp8/common/postproc.c
+++ b/vp8/common/postproc.c
@@ -742,7 +742,8 @@ int vp8_post_proc_frame(VP8_COMMON *oci, YV12_BUFFER_CONFIG *dest, vp8_ppflags_t
if ((flags & VP8D_MFQE) &&
oci->postproc_state.last_frame_valid &&
oci->current_video_frame >= 2 &&
- oci->base_qindex - oci->postproc_state.last_base_qindex >= 10)
+ oci->postproc_state.last_base_qindex < 60 &&
+ oci->base_qindex - oci->postproc_state.last_base_qindex >= 20)
{
vp8_multiframe_quality_enhance(oci);
if (((flags & VP8D_DEBLOCK) || (flags & VP8D_DEMACROBLOCK)) &&