# HG changeset patch # User michael # Date 1159302253 0 # Node ID c540147303fa3a7b465496014dab512434b805ae # Parent 2eddcfa87edab5f5016ee211c5314a9f41e045fa fix decoding of bastard1.rm (rv ver=0x10003001 ver0=0x8000000) diff -r 2eddcfa87eda -r c540147303fa rv10.c --- a/rv10.c Tue Sep 26 18:31:43 2006 +0000 +++ b/rv10.c Tue Sep 26 20:24:13 2006 +0000 @@ -594,7 +594,7 @@ uint8_t *buf, int buf_size) { MpegEncContext *s = avctx->priv_data; - int mb_count, mb_pos, left; + int mb_count, mb_pos, left, start_mb_x; init_get_bits(&s->gb, buf, buf_size*8); if(s->codec_id ==CODEC_ID_RV10) @@ -639,8 +639,9 @@ if(s->mb_y==0) s->first_slice_line=1; }else{ s->first_slice_line=1; + s->resync_mb_x= s->mb_x; } - s->resync_mb_x= s->mb_x; + start_mb_x= s->mb_x; s->resync_mb_y= s->mb_y; if(s->h263_aic){ s->y_dc_scale_table= @@ -699,7 +700,7 @@ if(ret == SLICE_END) break; } - ff_er_add_slice(s, s->resync_mb_x, s->resync_mb_y, s->mb_x-1, s->mb_y, AC_END|DC_END|MV_END); + ff_er_add_slice(s, start_mb_x, s->resync_mb_y, s->mb_x-1, s->mb_y, AC_END|DC_END|MV_END); return buf_size; }