summaryrefslogtreecommitdiff
path: root/libavcodec/vc1_block.c
diff options
context:
space:
mode:
authorJerome Borsboom <jerome.borsboom@carpalis.nl>2018-04-23 21:00:15 +0200
committerPaul B Mahol <onemda@gmail.com>2018-04-25 22:07:20 +0200
commit797c1536a46e645304a9325bd58f99420c37e773 (patch)
treef326ad9b06db49a01dadd8727c778fff4d5d6317 /libavcodec/vc1_block.c
parenta1dc0bdaf49497358d70002ffb5ec498f5f41270 (diff)
avcodec/vc1: correct AC inverse quantization scaling
HALFQP should only be added to the inverse quantizer when the block is coded with PQUANT. See 8.1.3.8 in VC-1 spec. Signed-off-by: Jerome Borsboom <jerome.borsboom@carpalis.nl>
Diffstat (limited to 'libavcodec/vc1_block.c')
-rw-r--r--libavcodec/vc1_block.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libavcodec/vc1_block.c b/libavcodec/vc1_block.c
index e78e4806bd..de06b6fb2a 100644
--- a/libavcodec/vc1_block.c
+++ b/libavcodec/vc1_block.c
@@ -944,7 +944,7 @@ static int vc1_decode_intra_block(VC1Context *v, int16_t block[64], int n,
ac_val = s->ac_val[0][s->block_index[n]];
ac_val2 = ac_val;
- scale = mquant * 2 + v->halfpq;
+ scale = mquant * 2 + ((mquant == v->pq) ? v->halfpq : 0);
if (dc_pred_dir) //left
ac_val -= 16;