summaryrefslogtreecommitdiff
path: root/vp9/decoder/vp9_detokenize.c
diff options
context:
space:
mode:
authorRonald S. Bultje <rbultje@google.com>2013-02-21 10:04:40 -0800
committerRonald S. Bultje <rbultje@google.com>2013-02-21 10:07:36 -0800
commit35524e223147f457cf2591062a4329fc411a4d35 (patch)
tree7c1fd8392dd7f877e7d6a129449f5f15972510f5 /vp9/decoder/vp9_detokenize.c
parent048f59370329c0ad78a1e81e0bb8484ed18c736b (diff)
downloadlibvpx-35524e223147f457cf2591062a4329fc411a4d35.tar
libvpx-35524e223147f457cf2591062a4329fc411a4d35.tar.gz
libvpx-35524e223147f457cf2591062a4329fc411a4d35.tar.bz2
libvpx-35524e223147f457cf2591062a4329fc411a4d35.zip
Remove "eobs" array in MACROBLOCKD.
The information is a duplicate of "eob" in BLOCKD. Change-Id: Ia6416273bd004611da801e4bfa6e2d328d6f02a3
Diffstat (limited to 'vp9/decoder/vp9_detokenize.c')
-rw-r--r--vp9/decoder/vp9_detokenize.c65
1 files changed, 32 insertions, 33 deletions
diff --git a/vp9/decoder/vp9_detokenize.c b/vp9/decoder/vp9_detokenize.c
index 0786e2965..f84dfdaac 100644
--- a/vp9/decoder/vp9_detokenize.c
+++ b/vp9/decoder/vp9_detokenize.c
@@ -295,25 +295,24 @@ static int get_eob(MACROBLOCKD* const xd, int segment_id, int eob_max) {
int vp9_decode_sb_tokens(VP9D_COMP* const pbi,
MACROBLOCKD* const xd,
BOOL_DECODER* const bc) {
- uint16_t *const eobs = xd->eobs;
const int segment_id = xd->mode_info_context->mbmi.segment_id;
int c, i, eobtotal = 0, seg_eob;
// Luma block
- eobs[0] = c = decode_coefs(pbi, xd, bc, 0, PLANE_TYPE_Y_WITH_DC,
- DCT_DCT, get_eob(xd, segment_id, 1024),
- xd->sb_coeff_data.qcoeff,
- vp9_default_zig_zag1d_32x32,
- TX_32X32);
+ c = decode_coefs(pbi, xd, bc, 0, PLANE_TYPE_Y_WITH_DC,
+ DCT_DCT, get_eob(xd, segment_id, 1024),
+ xd->sb_coeff_data.qcoeff,
+ vp9_default_zig_zag1d_32x32, TX_32X32);
+ xd->block[0].eob = c;
eobtotal += c;
// 16x16 chroma blocks
seg_eob = get_eob(xd, segment_id, 256);
for (i = 16; i < 24; i += 4) {
- eobs[i] = c = decode_coefs(pbi, xd, bc, i, PLANE_TYPE_UV, DCT_DCT, seg_eob,
- xd->sb_coeff_data.qcoeff + 1024 + (i - 16) * 64,
- vp9_default_zig_zag1d_16x16,
- TX_16X16);
+ c = decode_coefs(pbi, xd, bc, i, PLANE_TYPE_UV, DCT_DCT, seg_eob,
+ xd->sb_coeff_data.qcoeff + 1024 + (i - 16) * 64,
+ vp9_default_zig_zag1d_16x16, TX_16X16);
+ xd->block[i].eob = c;
eobtotal += c;
}
@@ -323,25 +322,24 @@ int vp9_decode_sb_tokens(VP9D_COMP* const pbi,
static int vp9_decode_mb_tokens_16x16(VP9D_COMP* const pbi,
MACROBLOCKD* const xd,
BOOL_DECODER* const bc) {
- uint16_t *const eobs = xd->eobs;
const int segment_id = xd->mode_info_context->mbmi.segment_id;
int c, i, eobtotal = 0, seg_eob;
// Luma block
- eobs[0] = c = decode_coefs(pbi, xd, bc, 0, PLANE_TYPE_Y_WITH_DC,
- get_tx_type(xd, &xd->block[0]),
- get_eob(xd, segment_id, 256),
- xd->qcoeff, vp9_default_zig_zag1d_16x16,
- TX_16X16);
+ c = decode_coefs(pbi, xd, bc, 0, PLANE_TYPE_Y_WITH_DC,
+ get_tx_type(xd, &xd->block[0]),
+ get_eob(xd, segment_id, 256),
+ xd->qcoeff, vp9_default_zig_zag1d_16x16, TX_16X16);
+ xd->block[0].eob = c;
eobtotal += c;
// 8x8 chroma blocks
seg_eob = get_eob(xd, segment_id, 64);
for (i = 16; i < 24; i += 4) {
- eobs[i] = c = decode_coefs(pbi, xd, bc, i, PLANE_TYPE_UV,
- DCT_DCT, seg_eob, xd->block[i].qcoeff,
- vp9_default_zig_zag1d_8x8,
- TX_8X8);
+ c = decode_coefs(pbi, xd, bc, i, PLANE_TYPE_UV,
+ DCT_DCT, seg_eob, xd->block[i].qcoeff,
+ vp9_default_zig_zag1d_8x8, TX_8X8);
+ xd->block[i].eob = c;
eobtotal += c;
}
return eobtotal;
@@ -350,17 +348,17 @@ static int vp9_decode_mb_tokens_16x16(VP9D_COMP* const pbi,
static int vp9_decode_mb_tokens_8x8(VP9D_COMP* const pbi,
MACROBLOCKD* const xd,
BOOL_DECODER* const bc) {
- uint16_t *const eobs = xd->eobs;
int c, i, eobtotal = 0, seg_eob;
const int segment_id = xd->mode_info_context->mbmi.segment_id;
// luma blocks
seg_eob = get_eob(xd, segment_id, 64);
for (i = 0; i < 16; i += 4) {
- eobs[i] = c = decode_coefs(pbi, xd, bc, i, PLANE_TYPE_Y_WITH_DC,
- get_tx_type(xd, xd->block + i),
- seg_eob, xd->block[i].qcoeff,
- vp9_default_zig_zag1d_8x8, TX_8X8);
+ c = decode_coefs(pbi, xd, bc, i, PLANE_TYPE_Y_WITH_DC,
+ get_tx_type(xd, xd->block + i),
+ seg_eob, xd->block[i].qcoeff,
+ vp9_default_zig_zag1d_8x8, TX_8X8);
+ xd->block[i].eob = c;
eobtotal += c;
}
@@ -370,16 +368,18 @@ static int vp9_decode_mb_tokens_8x8(VP9D_COMP* const pbi,
// use 4x4 transform for U, V components in I8X8/splitmv prediction mode
seg_eob = get_eob(xd, segment_id, 16);
for (i = 16; i < 24; i++) {
- eobs[i] = c = decode_coefs(pbi, xd, bc, i, PLANE_TYPE_UV,
- DCT_DCT, seg_eob, xd->block[i].qcoeff,
- vp9_default_zig_zag1d_4x4, TX_4X4);
+ c = decode_coefs(pbi, xd, bc, i, PLANE_TYPE_UV,
+ DCT_DCT, seg_eob, xd->block[i].qcoeff,
+ vp9_default_zig_zag1d_4x4, TX_4X4);
+ xd->block[i].eob = c;
eobtotal += c;
}
} else {
for (i = 16; i < 24; i += 4) {
- eobs[i] = c = decode_coefs(pbi, xd, bc, i, PLANE_TYPE_UV,
- DCT_DCT, seg_eob, xd->block[i].qcoeff,
- vp9_default_zig_zag1d_8x8, TX_8X8);
+ c = decode_coefs(pbi, xd, bc, i, PLANE_TYPE_UV,
+ DCT_DCT, seg_eob, xd->block[i].qcoeff,
+ vp9_default_zig_zag1d_8x8, TX_8X8);
+ xd->block[i].eob = c;
eobtotal += c;
}
}
@@ -391,12 +391,11 @@ static int decode_coefs_4x4(VP9D_COMP *dx, MACROBLOCKD *xd,
BOOL_DECODER* const bc,
PLANE_TYPE type, int i, int seg_eob,
TX_TYPE tx_type, const int *scan) {
- uint16_t *const eobs = xd->eobs;
int c;
c = decode_coefs(dx, xd, bc, i, type, tx_type, seg_eob,
xd->block[i].qcoeff, scan, TX_4X4);
- eobs[i] = c;
+ xd->block[i].eob = c;
return c;
}