From 56049d9488af78bf29a45eaa4625b75d4def865e Mon Sep 17 00:00:00 2001 From: Paul Wilkins Date: Wed, 13 Feb 2013 18:49:55 +0000 Subject: [PATCH] Fixed encoder decoder mismatch. Reverted part of change I19981d1ef0b33e4e5732739574f367fe82771a84 That gives rise to an enc/dec mismatch. As things stand the memsets are still needed. Change-Id: I9fa076a703909aa0c4da0059ac6ae19aa530db30 --- vp9/encoder/vp9_quantize.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/vp9/encoder/vp9_quantize.c b/vp9/encoder/vp9_quantize.c index b2a83bc05..e66db7499 100644 --- a/vp9/encoder/vp9_quantize.c +++ b/vp9/encoder/vp9_quantize.c @@ -228,6 +228,12 @@ void vp9_regular_quantize_b_2x2(BLOCK *b, BLOCKD *d) { } void vp9_regular_quantize_b_8x8(BLOCK *b, BLOCKD *d) { + int16_t *qcoeff_ptr = d->qcoeff; + int16_t *dqcoeff_ptr = d->dqcoeff; + + vpx_memset(qcoeff_ptr, 0, 64 * sizeof(int16_t)); + vpx_memset(dqcoeff_ptr, 0, 64 * sizeof(int16_t)); + if (!b->skip_block) { int i, rc, eob; int zbin; @@ -239,14 +245,9 @@ void vp9_regular_quantize_b_8x8(BLOCK *b, BLOCKD *d) { int16_t *round_ptr = b->round; int16_t *quant_ptr = b->quant; uint8_t *quant_shift_ptr = b->quant_shift; - int16_t *qcoeff_ptr = d->qcoeff; - int16_t *dqcoeff_ptr = d->dqcoeff; int16_t *dequant_ptr = d->dequant; int zbin_oq_value = b->zbin_extra; - vpx_memset(qcoeff_ptr, 0, 64 * sizeof(int16_t)); - vpx_memset(dqcoeff_ptr, 0, 64 * sizeof(int16_t)); - eob = -1; // Special case for DC as it is the one triggering access in various -- 2.40.0