Originally committed as revision 4155 to svn://svn.ffmpeg.org/ffmpeg/trunk
Michael Niedermayer authored on 2005/04/25 07:08:31... | ... |
@@ -440,21 +440,23 @@ static int rv20_decode_picture_header(MpegEncContext *s) |
440 | 440 |
} |
441 | 441 |
seq= get_bits(&s->gb, 14)<<1; |
442 | 442 |
|
443 |
- if(v>1 || (s->avctx->sub_id < 0x20201002 && v>0)){ |
|
444 |
- f= get_bits(&s->gb, av_log2(v-1)+1); |
|
445 |
- } |
|
446 |
- |
|
443 |
+ if(v) |
|
444 |
+ f= get_bits(&s->gb, av_log2(v)); |
|
445 |
+ |
|
447 | 446 |
if(s->avctx->debug & FF_DEBUG_PICT_INFO){ |
448 | 447 |
av_log(s->avctx, AV_LOG_DEBUG, "F %d/%d\n", f, v); |
449 | 448 |
} |
449 |
+ }else{ |
|
450 |
+ seq= get_bits(&s->gb, 8)*128; |
|
451 |
+ } |
|
450 | 452 |
|
453 |
+// if(s->avctx->sub_id <= 0x20201002){ //0x20201002 definitely needs this |
|
454 |
+ mb_pos= ff_h263_decode_mba(s); |
|
455 |
+/* }else{ |
|
451 | 456 |
mb_pos= get_bits(&s->gb, av_log2(s->mb_num-1)+1); |
452 | 457 |
s->mb_x= mb_pos % s->mb_width; |
453 | 458 |
s->mb_y= mb_pos / s->mb_width; |
454 |
- }else{ |
|
455 |
- seq= get_bits(&s->gb, 8)*128; |
|
456 |
- mb_pos= ff_h263_decode_mba(s); |
|
457 |
- } |
|
459 |
+ }*/ |
|
458 | 460 |
//av_log(s->avctx, AV_LOG_DEBUG, "%d\n", seq); |
459 | 461 |
seq |= s->time &~0x7FFF; |
460 | 462 |
if(seq - s->time > 0x4000) seq -= 0x8000; |
... | ... |
@@ -606,7 +606,7 @@ static int rm_read_header(AVFormatContext *s, AVFormatParameters *ap) |
606 | 606 |
tag, |
607 | 607 |
tag_size); |
608 | 608 |
#endif |
609 |
- if (tag_size < 10) |
|
609 |
+ if (tag_size < 10 && tag != MKTAG('D', 'A', 'T', 'A')) |
|
610 | 610 |
goto fail; |
611 | 611 |
switch(tag) { |
612 | 612 |
case MKTAG('P', 'R', 'O', 'P'): |