Misc cleanups on ext_tx expt.

Change-Id: I599d9fb00a2accdf24def65df52bef56d014a0b6
This commit is contained in:
Deb Mukherjee 2014-11-14 17:11:45 -08:00
parent 52e4dfe1b1
commit e2a8e90874
2 changed files with 21 additions and 14 deletions

View File

@ -280,8 +280,8 @@ static const vp9_prob default_single_ref_p[REF_CONTEXTS][2] = {
static const struct tx_probs default_tx_probs = {
#if CONFIG_TX64X64
{ { 1, 3, 136, 48 },
{ 1, 5, 52, 24 } },
{ { 1, 3, 136, 192 },
{ 1, 4, 52, 128 } },
#endif
{ { 3, 136, 37 },

View File

@ -872,6 +872,7 @@ static void encode_block(int plane, int block, BLOCK_SIZE plane_bsize,
ENTROPY_CONTEXT *a, *l;
#if CONFIG_EXT_TX
MB_MODE_INFO *mbmi = &xd->mi[0].src_mi->mbmi;
TX_TYPE tx_type;
#endif
txfrm_block_to_raster_xy(plane_bsize, tx_size, block, &i, &j);
dst = &pd->dst.buf[4 * j * pd->dst.stride + 4 * i];
@ -938,11 +939,12 @@ static void encode_block(int plane, int block, BLOCK_SIZE plane_bsize,
break;
case TX_16X16:
#if CONFIG_EXT_TX
if (plane != 0 || mbmi->ext_txfrm == NORM) {
tx_type = get_tx_type(plane, xd);
if (tx_type == DCT_DCT) {
vp9_highbd_idct16x16_add(dqcoeff, dst, pd->dst.stride,
p->eobs[block], xd->bd);
} else {
vp9_highbd_iht16x16_add(ADST_ADST, dqcoeff, dst, pd->dst.stride,
vp9_highbd_iht16x16_add(tx_type, dqcoeff, dst, pd->dst.stride,
p->eobs[block], xd->bd);
}
#else
@ -952,11 +954,12 @@ static void encode_block(int plane, int block, BLOCK_SIZE plane_bsize,
break;
case TX_8X8:
#if CONFIG_EXT_TX
if (plane != 0 || mbmi->ext_txfrm == NORM) {
tx_type = get_tx_type(plane, xd);
if (tx_type == DCT_DCT) {
vp9_highbd_idct8x8_add(dqcoeff, dst, pd->dst.stride,
p->eobs[block], xd->bd);
} else {
vp9_highbd_iht8x8_add(ADST_ADST, dqcoeff, dst, pd->dst.stride,
vp9_highbd_iht8x8_add(tx_type, dqcoeff, dst, pd->dst.stride,
p->eobs[block], xd->bd);
}
#else
@ -966,14 +969,15 @@ static void encode_block(int plane, int block, BLOCK_SIZE plane_bsize,
break;
case TX_4X4:
#if CONFIG_EXT_TX
if (plane != 0 || mbmi->ext_txfrm == NORM || xd->lossless) {
tx_type = get_tx_type_4x4(plane, xd, block);
if (tx_type == DCT_DCT) {
// this is like vp9_short_idct4x4 but has a special case around eob<=1
// which is significant (not just an optimization) for the lossless
// case.
x->highbd_itxm_add(dqcoeff, dst, pd->dst.stride,
p->eobs[block], xd->bd);
} else {
vp9_highbd_iht4x4_add(ADST_ADST, dqcoeff, dst, pd->dst.stride,
vp9_highbd_iht4x4_add(tx_type, dqcoeff, dst, pd->dst.stride,
p->eobs[block], xd->bd);
}
#else
@ -1002,10 +1006,11 @@ static void encode_block(int plane, int block, BLOCK_SIZE plane_bsize,
break;
case TX_16X16:
#if CONFIG_EXT_TX
if (plane != 0 || mbmi->ext_txfrm == NORM) {
tx_type = get_tx_type(plane, xd);
if (tx_type == DCT_DCT) {
vp9_idct16x16_add(dqcoeff, dst, pd->dst.stride, p->eobs[block]);
} else {
vp9_iht16x16_add(ADST_ADST, dqcoeff, dst, pd->dst.stride,
vp9_iht16x16_add(tx_type, dqcoeff, dst, pd->dst.stride,
p->eobs[block]);
}
#else
@ -1014,10 +1019,11 @@ static void encode_block(int plane, int block, BLOCK_SIZE plane_bsize,
break;
case TX_8X8:
#if CONFIG_EXT_TX
if (plane != 0 || mbmi->ext_txfrm == NORM) {
tx_type = get_tx_type(plane, xd);
if (tx_type == DCT_DCT) {
vp9_idct8x8_add(dqcoeff, dst, pd->dst.stride, p->eobs[block]);
} else {
vp9_iht8x8_add(ADST_ADST, dqcoeff, dst, pd->dst.stride,
vp9_iht8x8_add(tx_type, dqcoeff, dst, pd->dst.stride,
p->eobs[block]);
}
#else
@ -1026,13 +1032,14 @@ static void encode_block(int plane, int block, BLOCK_SIZE plane_bsize,
break;
case TX_4X4:
#if CONFIG_EXT_TX
if (plane != 0 || mbmi->ext_txfrm == NORM || xd->lossless) {
tx_type = get_tx_type_4x4(plane, xd, block);
if (tx_type == DCT_DCT) {
// this is like vp9_short_idct4x4 but has a special case around eob<=1
// which is significant (not just an optimization) for the lossless
// case.
x->itxm_add(dqcoeff, dst, pd->dst.stride, p->eobs[block]);
} else {
vp9_iht4x4_add(ADST_ADST, dqcoeff, dst, pd->dst.stride,
vp9_iht4x4_add(tx_type, dqcoeff, dst, pd->dst.stride,
p->eobs[block]);
}
#else