Commit a7555158 authored by Jingning Han's avatar Jingning Han
Browse files

Fix eobs buffer pointer mis-use

This commit fixes a buffer pointer mis-use in store_coding_context.
The compression performance for stdhd set of speed 3 is improved by
0.097%. It fixes issue 869.

Change-Id: Idc59e22035eaf39f7133ca04174894374d647ff7
parent 12344f26
...@@ -1953,9 +1953,19 @@ static void store_coding_context(MACROBLOCK *x, PICK_MODE_CONTEXT *ctx, ...@@ -1953,9 +1953,19 @@ static void store_coding_context(MACROBLOCK *x, PICK_MODE_CONTEXT *ctx,
int plane, has_high_freq_coeff = 0; int plane, has_high_freq_coeff = 0;
BLOCK_SIZE bsize = xd->mi[0].src_mi->mbmi.sb_type; BLOCK_SIZE bsize = xd->mi[0].src_mi->mbmi.sb_type;
if (bsize >= BLOCK_8X8) if (bsize >= BLOCK_8X8) {
for (plane = 0; plane < MAX_MB_PLANE; ++plane) int max_plane = is_inter_block(&xd->mi[0].src_mi->mbmi)
? MAX_MB_PLANE : 1;
for (plane = 0; plane < max_plane; ++plane) {
x->plane[plane].eobs = ctx->eobs_pbuf[plane][1];
has_high_freq_coeff |= vp9_has_high_freq_in_plane(x, bsize, plane);
}
for (plane = max_plane; plane < MAX_MB_PLANE; ++plane) {
x->plane[plane].eobs = ctx->eobs_pbuf[plane][2];
has_high_freq_coeff |= vp9_has_high_freq_in_plane(x, bsize, plane); has_high_freq_coeff |= vp9_has_high_freq_in_plane(x, bsize, plane);
}
}
// Take a snapshot of the coding context so it can be // Take a snapshot of the coding context so it can be
// restored if we decide to encode this way // restored if we decide to encode this way
......
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