diff options
author | Dmitry Kovalev <dkovalev@google.com> | 2014-02-11 11:12:29 -0800 |
---|---|---|
committer | Gerrit Code Review <gerrit@gerrit.golo.chromium.org> | 2014-02-11 11:12:29 -0800 |
commit | 4fff8566f8eb7f58571e470dfd2c572ec5b7b4b6 (patch) | |
tree | 546604ca96dea3797453f42ede85d66d239dcef3 /vp9 | |
parent | 28f46aa633f10a1dd7fb1b48f79b4696d08baec5 (diff) | |
parent | e1fdcbcb82e2ebcfe9f09f690853528a26d9b857 (diff) | |
download | libvpx-4fff8566f8eb7f58571e470dfd2c572ec5b7b4b6.tar libvpx-4fff8566f8eb7f58571e470dfd2c572ec5b7b4b6.tar.gz libvpx-4fff8566f8eb7f58571e470dfd2c572ec5b7b4b6.tar.bz2 libvpx-4fff8566f8eb7f58571e470dfd2c572ec5b7b4b6.zip |
Merge "Cleaning up compute_fast_motion_search_level()."
Diffstat (limited to 'vp9')
-rw-r--r-- | vp9/encoder/vp9_encodeframe.c | 32 |
1 files changed, 8 insertions, 24 deletions
diff --git a/vp9/encoder/vp9_encodeframe.c b/vp9/encoder/vp9_encodeframe.c index 983a6077a..dfb69ca53 100644 --- a/vp9/encoder/vp9_encodeframe.c +++ b/vp9/encoder/vp9_encodeframe.c @@ -1600,30 +1600,14 @@ static void compute_fast_motion_search_level(VP9_COMP *cpi, BLOCK_SIZE bsize) { VP9_COMMON *const cm = &cpi->common; MACROBLOCK *const x = &cpi->mb; - // Only use 8x8 result for non HD videos. - // int use_8x8 = (MIN(cpi->common.width, cpi->common.height) < 720) ? 1 : 0; - int use_8x8 = 1; - - if (cm->frame_type && !cpi->rc.is_src_frame_alt_ref && - ((use_8x8 && bsize == BLOCK_16X16) || - bsize == BLOCK_32X32 || bsize == BLOCK_64X64)) { - int ref0 = 0, ref1 = 0, ref2 = 0, ref3 = 0; - PICK_MODE_CONTEXT *block_context = NULL; - - if (bsize == BLOCK_16X16) { - block_context = x->sb8x8_context[x->sb_index][x->mb_index]; - } else if (bsize == BLOCK_32X32) { - block_context = x->mb_context[x->sb_index]; - } else if (bsize == BLOCK_64X64) { - block_context = x->sb32_context; - } - - if (block_context) { - ref0 = block_context[0].mic.mbmi.ref_frame[0]; - ref1 = block_context[1].mic.mbmi.ref_frame[0]; - ref2 = block_context[2].mic.mbmi.ref_frame[0]; - ref3 = block_context[3].mic.mbmi.ref_frame[0]; - } + if (cm->frame_type == INTER_FRAME && + !cpi->rc.is_src_frame_alt_ref && + (bsize == BLOCK_16X16 || bsize == BLOCK_32X32 || bsize == BLOCK_64X64)) { + const PICK_MODE_CONTEXT *block_context = get_block_context(x, bsize); + const int ref0 = block_context[0].mic.mbmi.ref_frame[0]; + const int ref1 = block_context[1].mic.mbmi.ref_frame[0]; + const int ref2 = block_context[2].mic.mbmi.ref_frame[0]; + const int ref3 = block_context[3].mic.mbmi.ref_frame[0]; // Currently, only consider 4 inter reference frames. if (ref0 && ref1 && ref2 && ref3) { |