|
|
|
@@ -1033,7 +1033,7 @@ static int vc1_decode_frame(AVCodecContext *avctx, void *data, |
|
|
|
|
|
|
|
ff_mpeg_er_frame_start(s); |
|
|
|
|
|
|
|
v->bits = buf_size * 8; |
|
|
|
v->bits = FFMIN(buf_size * 8, s->gb.size_in_bits); |
|
|
|
v->end_mb_x = s->mb_width; |
|
|
|
if (v->field_mode) { |
|
|
|
s->current_picture.f->linesize[0] <<= 1; |
|
|
|
@@ -1107,8 +1107,10 @@ static int vc1_decode_frame(AVCodecContext *avctx, void *data, |
|
|
|
continue; |
|
|
|
} |
|
|
|
ff_vc1_decode_blocks(v); |
|
|
|
if (i != n_slices) |
|
|
|
if (i != n_slices) { |
|
|
|
s->gb = slices[i].gb; |
|
|
|
v->bits = FFMIN(buf_size * 8, s->gb.size_in_bits); |
|
|
|
} |
|
|
|
} |
|
|
|
if (v->field_mode) { |
|
|
|
v->second_field = 0; |
|
|
|
|