Commit 8a2fa709 authored by kostya's avatar kostya

Some fixes for decode_p_mb()


git-svn-id: file:///var/local/repositories/ffmpeg/trunk@5819 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
parent ea3a2834
...@@ -2540,7 +2540,7 @@ static int vc1_decode_p_mb(VC1Context *v) ...@@ -2540,7 +2540,7 @@ static int vc1_decode_p_mb(VC1Context *v)
if(!coded_inter) coded_inter = !is_intra[i] & is_coded[i]; if(!coded_inter) coded_inter = !is_intra[i] & is_coded[i];
} }
// if there are no coded blocks then don't do anything more // if there are no coded blocks then don't do anything more
if(!intra_count && !coded_inter) return; if(!intra_count && !coded_inter) return 0;
dst_idx = 0; dst_idx = 0;
GET_MQUANT(); GET_MQUANT();
s->current_picture.qscale_table[mb_pos] = mquant; s->current_picture.qscale_table[mb_pos] = mquant;
...@@ -2559,7 +2559,7 @@ static int vc1_decode_p_mb(VC1Context *v) ...@@ -2559,7 +2559,7 @@ static int vc1_decode_p_mb(VC1Context *v)
else s->ac_pred = 0; else s->ac_pred = 0;
} }
if (!v->ttmbf && coded_inter) if (!v->ttmbf && coded_inter)
ttmb = get_vlc2(gb, vc1_ttmb_vlc[v->tt_index].table, VC1_TTMB_VLC_BITS, 12); ttmb = get_vlc2(gb, vc1_ttmb_vlc[v->tt_index].table, VC1_TTMB_VLC_BITS, 2);
for (i=0; i<6; i++) for (i=0; i<6; i++)
{ {
dst_idx += i >> 2; dst_idx += i >> 2;
...@@ -2596,6 +2596,7 @@ static int vc1_decode_p_mb(VC1Context *v) ...@@ -2596,6 +2596,7 @@ static int vc1_decode_p_mb(VC1Context *v)
else //Skipped MB else //Skipped MB
{ {
s->mb_intra = 0; s->mb_intra = 0;
s->current_picture.qscale_table[mb_pos] = 0;
for (i=0; i<6; i++) { for (i=0; i<6; i++) {
v->mb_type[0][s->block_index[i]] = 0; v->mb_type[0][s->block_index[i]] = 0;
s->dc_val[0][s->block_index[i]] = 0; s->dc_val[0][s->block_index[i]] = 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment