diff options
author | Marco Paniconi <marpan@google.com> | 2014-07-24 12:54:38 -0700 |
---|---|---|
committer | Marco Paniconi <marpan@google.com> | 2014-07-29 11:16:45 -0700 |
commit | 91801176fe17e5ce31314a7492b96977f0b31e1c (patch) | |
tree | ed30ba8d3ea47bffe32df2324e92d319920688bf /vp8/encoder/ethreading.c | |
parent | ac1f06188d880ca9316205efbb2012da9b6bb4e3 (diff) | |
download | libvpx-91801176fe17e5ce31314a7492b96977f0b31e1c.tar libvpx-91801176fe17e5ce31314a7492b96977f0b31e1c.tar.gz libvpx-91801176fe17e5ce31314a7492b96977f0b31e1c.tar.bz2 libvpx-91801176fe17e5ce31314a7492b96977f0b31e1c.zip |
vp8: Add an aggressive denoising mode.
Change-Id: Ie4686e1b15af6bcc8d59d585bbeb996f38224522
Diffstat (limited to 'vp8/encoder/ethreading.c')
-rw-r--r-- | vp8/encoder/ethreading.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/vp8/encoder/ethreading.c b/vp8/encoder/ethreading.c index d4b17cef1..7b8b51f30 100644 --- a/vp8/encoder/ethreading.c +++ b/vp8/encoder/ethreading.c @@ -206,6 +206,21 @@ THREAD_FUNCTION thread_encoding_proc(void *p_data) } #endif + // Keep track of how many (consecutive) times a block + // is coded as ZEROMV_LASTREF, for base layer frames. + // Reset to 0 if its coded as anything else. + if (cpi->current_layer == 0) { + if (xd->mode_info_context->mbmi.mode == ZEROMV && + xd->mode_info_context->mbmi.ref_frame == + LAST_FRAME) { + // Increment, check for wrap-around. + if (cpi->consec_zero_last[map_index+mb_col] < 255) + cpi->consec_zero_last[map_index+mb_col] += + 1; + } else { + cpi->consec_zero_last[map_index+mb_col] = 0; + } + } /* Special case code for cyclic refresh * If cyclic update enabled then copy |