|
|
|
@ -1327,7 +1327,7 @@ static int vc1_decode_p_mb(VC1Context *v) |
|
|
|
|
|
|
|
|
|
vc1_decode_intra_block(v, s->block[i], i, val, mquant, |
|
|
|
|
(i & 4) ? v->codingset2 : v->codingset); |
|
|
|
|
if ((i>3) && (s->flags & CODEC_FLAG_GRAY)) |
|
|
|
|
if (CONFIG_GRAY && (i>3) && (s->flags & CODEC_FLAG_GRAY)) |
|
|
|
|
continue; |
|
|
|
|
v->vc1dsp.vc1_inv_trans_8x8(s->block[i]); |
|
|
|
|
if (v->rangeredfrm) |
|
|
|
@ -1348,7 +1348,7 @@ static int vc1_decode_p_mb(VC1Context *v) |
|
|
|
|
} else if (val) { |
|
|
|
|
pat = vc1_decode_p_block(v, s->block[i], i, mquant, ttmb, first_block, |
|
|
|
|
s->dest[dst_idx] + off, (i & 4) ? s->uvlinesize : s->linesize, |
|
|
|
|
(i & 4) && (s->flags & CODEC_FLAG_GRAY), &block_tt); |
|
|
|
|
CONFIG_GRAY && (i & 4) && (s->flags & CODEC_FLAG_GRAY), &block_tt); |
|
|
|
|
block_cbp |= pat << (i << 2); |
|
|
|
|
if (!v->ttmbf && ttmb < 8) |
|
|
|
|
ttmb = -1; |
|
|
|
@ -1438,7 +1438,7 @@ static int vc1_decode_p_mb(VC1Context *v) |
|
|
|
|
|
|
|
|
|
vc1_decode_intra_block(v, s->block[i], i, is_coded[i], mquant, |
|
|
|
|
(i & 4) ? v->codingset2 : v->codingset); |
|
|
|
|
if ((i>3) && (s->flags & CODEC_FLAG_GRAY)) |
|
|
|
|
if (CONFIG_GRAY && (i>3) && (s->flags & CODEC_FLAG_GRAY)) |
|
|
|
|
continue; |
|
|
|
|
v->vc1dsp.vc1_inv_trans_8x8(s->block[i]); |
|
|
|
|
if (v->rangeredfrm) |
|
|
|
@ -1460,7 +1460,7 @@ static int vc1_decode_p_mb(VC1Context *v) |
|
|
|
|
pat = vc1_decode_p_block(v, s->block[i], i, mquant, ttmb, |
|
|
|
|
first_block, s->dest[dst_idx] + off, |
|
|
|
|
(i & 4) ? s->uvlinesize : s->linesize, |
|
|
|
|
(i & 4) && (s->flags & CODEC_FLAG_GRAY), |
|
|
|
|
CONFIG_GRAY && (i & 4) && (s->flags & CODEC_FLAG_GRAY), |
|
|
|
|
&block_tt); |
|
|
|
|
block_cbp |= pat << (i << 2); |
|
|
|
|
if (!v->ttmbf && ttmb < 8) |
|
|
|
@ -1586,7 +1586,7 @@ static int vc1_decode_p_mb_intfr(VC1Context *v) |
|
|
|
|
|
|
|
|
|
vc1_decode_intra_block(v, s->block[i], i, val, mquant, |
|
|
|
|
(i & 4) ? v->codingset2 : v->codingset); |
|
|
|
|
if ((i>3) && (s->flags & CODEC_FLAG_GRAY)) continue; |
|
|
|
|
if (CONFIG_GRAY && (i>3) && (s->flags & CODEC_FLAG_GRAY)) continue; |
|
|
|
|
v->vc1dsp.vc1_inv_trans_8x8(s->block[i]); |
|
|
|
|
if (i < 4) { |
|
|
|
|
stride_y = s->linesize << fieldtx; |
|
|
|
@ -1672,7 +1672,7 @@ static int vc1_decode_p_mb_intfr(VC1Context *v) |
|
|
|
|
pat = vc1_decode_p_block(v, s->block[i], i, mquant, ttmb, |
|
|
|
|
first_block, s->dest[dst_idx] + off, |
|
|
|
|
(i & 4) ? s->uvlinesize : (s->linesize << fieldtx), |
|
|
|
|
(i & 4) && (s->flags & CODEC_FLAG_GRAY), &block_tt); |
|
|
|
|
CONFIG_GRAY && (i & 4) && (s->flags & CODEC_FLAG_GRAY), &block_tt); |
|
|
|
|
block_cbp |= pat << (i << 2); |
|
|
|
|
if (!v->ttmbf && ttmb < 8) |
|
|
|
|
ttmb = -1; |
|
|
|
@ -1751,7 +1751,7 @@ static int vc1_decode_p_mb_intfi(VC1Context *v) |
|
|
|
|
|
|
|
|
|
vc1_decode_intra_block(v, s->block[i], i, val, mquant, |
|
|
|
|
(i & 4) ? v->codingset2 : v->codingset); |
|
|
|
|
if ((i>3) && (s->flags & CODEC_FLAG_GRAY)) |
|
|
|
|
if (CONFIG_GRAY && (i>3) && (s->flags & CODEC_FLAG_GRAY)) |
|
|
|
|
continue; |
|
|
|
|
v->vc1dsp.vc1_inv_trans_8x8(s->block[i]); |
|
|
|
|
off = (i & 4) ? 0 : ((i & 1) * 8 + (i & 2) * 4 * s->linesize); |
|
|
|
@ -1805,7 +1805,7 @@ static int vc1_decode_p_mb_intfi(VC1Context *v) |
|
|
|
|
pat = vc1_decode_p_block(v, s->block[i], i, mquant, ttmb, |
|
|
|
|
first_block, s->dest[dst_idx] + off, |
|
|
|
|
(i & 4) ? s->uvlinesize : s->linesize, |
|
|
|
|
(i & 4) && (s->flags & CODEC_FLAG_GRAY), |
|
|
|
|
CONFIG_GRAY && (i & 4) && (s->flags & CODEC_FLAG_GRAY), |
|
|
|
|
&block_tt); |
|
|
|
|
block_cbp |= pat << (i << 2); |
|
|
|
|
if (!v->ttmbf && ttmb < 8) |
|
|
|
@ -1952,7 +1952,7 @@ static void vc1_decode_b_mb(VC1Context *v) |
|
|
|
|
|
|
|
|
|
vc1_decode_intra_block(v, s->block[i], i, val, mquant, |
|
|
|
|
(i & 4) ? v->codingset2 : v->codingset); |
|
|
|
|
if ((i>3) && (s->flags & CODEC_FLAG_GRAY)) |
|
|
|
|
if (CONFIG_GRAY && (i>3) && (s->flags & CODEC_FLAG_GRAY)) |
|
|
|
|
continue; |
|
|
|
|
v->vc1dsp.vc1_inv_trans_8x8(s->block[i]); |
|
|
|
|
if (v->rangeredfrm) |
|
|
|
@ -1966,7 +1966,7 @@ static void vc1_decode_b_mb(VC1Context *v) |
|
|
|
|
vc1_decode_p_block(v, s->block[i], i, mquant, ttmb, |
|
|
|
|
first_block, s->dest[dst_idx] + off, |
|
|
|
|
(i & 4) ? s->uvlinesize : s->linesize, |
|
|
|
|
(i & 4) && (s->flags & CODEC_FLAG_GRAY), NULL); |
|
|
|
|
CONFIG_GRAY && (i & 4) && (s->flags & CODEC_FLAG_GRAY), NULL); |
|
|
|
|
if (!v->ttmbf && ttmb < 8) |
|
|
|
|
ttmb = -1; |
|
|
|
|
first_block = 0; |
|
|
|
@ -2027,7 +2027,7 @@ static void vc1_decode_b_mb_intfi(VC1Context *v) |
|
|
|
|
|
|
|
|
|
vc1_decode_intra_block(v, s->block[i], i, val, mquant, |
|
|
|
|
(i & 4) ? v->codingset2 : v->codingset); |
|
|
|
|
if ((i>3) && (s->flags & CODEC_FLAG_GRAY)) |
|
|
|
|
if (CONFIG_GRAY && (i>3) && (s->flags & CODEC_FLAG_GRAY)) |
|
|
|
|
continue; |
|
|
|
|
v->vc1dsp.vc1_inv_trans_8x8(s->block[i]); |
|
|
|
|
if (v->rangeredfrm) |
|
|
|
@ -2125,7 +2125,7 @@ static void vc1_decode_b_mb_intfi(VC1Context *v) |
|
|
|
|
vc1_decode_p_block(v, s->block[i], i, mquant, ttmb, |
|
|
|
|
first_block, s->dest[dst_idx] + off, |
|
|
|
|
(i & 4) ? s->uvlinesize : s->linesize, |
|
|
|
|
(i & 4) && (s->flags & CODEC_FLAG_GRAY), NULL); |
|
|
|
|
CONFIG_GRAY && (i & 4) && (s->flags & CODEC_FLAG_GRAY), NULL); |
|
|
|
|
if (!v->ttmbf && ttmb < 8) |
|
|
|
|
ttmb = -1; |
|
|
|
|
first_block = 0; |
|
|
|
@ -2250,7 +2250,7 @@ static int vc1_decode_b_mb_intfr(VC1Context *v) |
|
|
|
|
|
|
|
|
|
vc1_decode_intra_block(v, s->block[i], i, val, mquant, |
|
|
|
|
(i & 4) ? v->codingset2 : v->codingset); |
|
|
|
|
if (i > 3 && (s->flags & CODEC_FLAG_GRAY)) |
|
|
|
|
if (CONFIG_GRAY && i > 3 && (s->flags & CODEC_FLAG_GRAY)) |
|
|
|
|
continue; |
|
|
|
|
v->vc1dsp.vc1_inv_trans_8x8(s->block[i]); |
|
|
|
|
if (i < 4) { |
|
|
|
@ -2416,7 +2416,7 @@ static int vc1_decode_b_mb_intfr(VC1Context *v) |
|
|
|
|
pat = vc1_decode_p_block(v, s->block[i], i, mquant, ttmb, |
|
|
|
|
first_block, s->dest[dst_idx] + off, |
|
|
|
|
(i & 4) ? s->uvlinesize : (s->linesize << fieldtx), |
|
|
|
|
(i & 4) && (s->flags & CODEC_FLAG_GRAY), &block_tt); |
|
|
|
|
CONFIG_GRAY && (i & 4) && (s->flags & CODEC_FLAG_GRAY), &block_tt); |
|
|
|
|
block_cbp |= pat << (i << 2); |
|
|
|
|
if (!v->ttmbf && ttmb < 8) |
|
|
|
|
ttmb = -1; |
|
|
|
@ -2559,7 +2559,7 @@ static void vc1_decode_i_blocks(VC1Context *v) |
|
|
|
|
|
|
|
|
|
vc1_decode_i_block(v, s->block[k], k, val, (k < 4) ? v->codingset : v->codingset2); |
|
|
|
|
|
|
|
|
|
if (k > 3 && (s->flags & CODEC_FLAG_GRAY)) |
|
|
|
|
if (CONFIG_GRAY && k > 3 && (s->flags & CODEC_FLAG_GRAY)) |
|
|
|
|
continue; |
|
|
|
|
v->vc1dsp.vc1_inv_trans_8x8(s->block[k]); |
|
|
|
|
if (v->pq >= 9 && v->overlap) { |
|
|
|
@ -2583,7 +2583,7 @@ static void vc1_decode_i_blocks(VC1Context *v) |
|
|
|
|
if (s->mb_x) { |
|
|
|
|
v->vc1dsp.vc1_h_overlap(s->dest[0], s->linesize); |
|
|
|
|
v->vc1dsp.vc1_h_overlap(s->dest[0] + 8 * s->linesize, s->linesize); |
|
|
|
|
if (!(s->flags & CODEC_FLAG_GRAY)) { |
|
|
|
|
if (!CONFIG_GRAY || !(s->flags & CODEC_FLAG_GRAY)) { |
|
|
|
|
v->vc1dsp.vc1_h_overlap(s->dest[1], s->uvlinesize); |
|
|
|
|
v->vc1dsp.vc1_h_overlap(s->dest[2], s->uvlinesize); |
|
|
|
|
} |
|
|
|
@ -2593,7 +2593,7 @@ static void vc1_decode_i_blocks(VC1Context *v) |
|
|
|
|
if (!s->first_slice_line) { |
|
|
|
|
v->vc1dsp.vc1_v_overlap(s->dest[0], s->linesize); |
|
|
|
|
v->vc1dsp.vc1_v_overlap(s->dest[0] + 8, s->linesize); |
|
|
|
|
if (!(s->flags & CODEC_FLAG_GRAY)) { |
|
|
|
|
if (!CONFIG_GRAY || !(s->flags & CODEC_FLAG_GRAY)) { |
|
|
|
|
v->vc1dsp.vc1_v_overlap(s->dest[1], s->uvlinesize); |
|
|
|
|
v->vc1dsp.vc1_v_overlap(s->dest[2], s->uvlinesize); |
|
|
|
|
} |
|
|
|
@ -2722,7 +2722,7 @@ static void vc1_decode_i_blocks_adv(VC1Context *v) |
|
|
|
|
vc1_decode_i_block_adv(v, block[k], k, val, |
|
|
|
|
(k < 4) ? v->codingset : v->codingset2, mquant); |
|
|
|
|
|
|
|
|
|
if (k > 3 && (s->flags & CODEC_FLAG_GRAY)) |
|
|
|
|
if (CONFIG_GRAY && k > 3 && (s->flags & CODEC_FLAG_GRAY)) |
|
|
|
|
continue; |
|
|
|
|
v->vc1dsp.vc1_inv_trans_8x8(block[k]); |
|
|
|
|
} |
|
|
|
|