Commit 276c2943 authored by Jingning Han's avatar Jingning Han

Increase entropy_context buffer size in sub8x8 RD

Temporarily increase the buffer size from 2 to 4 in the sub8x8
rate-distortion search for cb4x4. These functions will be deprecated
after cb4x4 is fully enabled.

Change-Id: I6aecaf55bd21a9416713cf31e75e7b4d9b68f83c
parent 3981be93
......@@ -2008,8 +2008,15 @@ static int64_t rd_pick_intra4x4block(
const int dst_stride = pd->dst.stride;
const uint8_t *src_init = &p->src.buf[row * 4 * src_stride + col * 4];
uint8_t *dst_init = &pd->dst.buf[row * 4 * src_stride + col * 4];
#if CONFIG_CB4X4
// TODO(jingning): This is a temporal change. The whole function should be
// out when cb4x4 is enabled.
ENTROPY_CONTEXT ta[4], tempa[4];
ENTROPY_CONTEXT tl[4], templ[4];
#else
ENTROPY_CONTEXT ta[2], tempa[2];
ENTROPY_CONTEXT tl[2], templ[2];
#endif
const int num_4x4_blocks_wide = num_4x4_blocks_wide_lookup[bsize];
const int num_4x4_blocks_high = num_4x4_blocks_high_lookup[bsize];
int idx, idy;
......@@ -4700,8 +4707,14 @@ typedef struct {
#if CONFIG_EXT_INTER
int_mv ref_mv[2];
#endif // CONFIG_EXT_INTER
#if CONFIG_CB4X4
ENTROPY_CONTEXT ta[4];
ENTROPY_CONTEXT tl[4];
#else
ENTROPY_CONTEXT ta[2];
ENTROPY_CONTEXT tl[2];
#endif
} SEG_RDSTAT;
typedef struct {
......@@ -5122,7 +5135,11 @@ static int64_t rd_pick_best_sub8x8_mode(
const BLOCK_SIZE bsize = mbmi->sb_type;
const int num_4x4_blocks_wide = num_4x4_blocks_wide_lookup[bsize];
const int num_4x4_blocks_high = num_4x4_blocks_high_lookup[bsize];
#if CONFIG_CB4X4
ENTROPY_CONTEXT t_above[4], t_left[4];
#else
ENTROPY_CONTEXT t_above[2], t_left[2];
#endif
int subpelmv = 1, have_ref = 0;
const int has_second_rf = has_second_ref(mbmi);
const int inter_mode_mask = cpi->sf.inter_mode_mask[bsize];
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment