Fix a rare encode/decode mismatch
In issue 2240, an encode/decode mismatch was reported while using
aq-mode=1, deltaq-mode=1 or 2, and speed=6. The investigation found
that the above encoding setting revealed a rare bug in ssse3 and avx
optimizations of aom_quantize_b_32x32 function. This patch disabled
the using of those versions. Later, the optimizations need to be
fixed.
BUG=aomedia:2240
Change-Id: I69815dcefc45a7c5838cdcb93815a87ed8e2ce29
diff --git a/av1/encoder/av1_quantize.c b/av1/encoder/av1_quantize.c
index 21ab4db..a7baaf8 100644
--- a/av1/encoder/av1_quantize.c
+++ b/av1/encoder/av1_quantize.c
@@ -289,10 +289,13 @@
sc->iscan);
break;
case 1:
- aom_quantize_b_32x32(coeff_ptr, n_coeffs, p->zbin_QTX, p->round_QTX,
- p->quant_QTX, p->quant_shift_QTX, qcoeff_ptr,
- dqcoeff_ptr, p->dequant_QTX, eob_ptr, sc->scan,
- sc->iscan);
+ // TODO(any): there is a bug in current ssse3 and avx optimizations
+ // (refer to libaom issue 2240), which needs to be fixed. Use c version
+ // for now.
+ aom_quantize_b_32x32_c(coeff_ptr, n_coeffs, p->zbin_QTX, p->round_QTX,
+ p->quant_QTX, p->quant_shift_QTX, qcoeff_ptr,
+ dqcoeff_ptr, p->dequant_QTX, eob_ptr, sc->scan,
+ sc->iscan);
break;
case 2:
aom_quantize_b_64x64(coeff_ptr, n_coeffs, p->zbin_QTX, p->round_QTX,