|
|
@@ -2071,7 +2071,7 @@ static int decode_vop_header(MpegEncContext *s, GetBitContext *gb){ |
|
|
|
/* detect buggy encoders which don't set the low_delay flag (divx4/xvid/opendivx)*/ |
|
|
|
// note we cannot detect divx5 without b-frames easily (although it's buggy too) |
|
|
|
if(s->vo_type==0 && s->vol_control_parameters==0 && s->divx_version==-1 && s->picture_number==0){ |
|
|
|
av_log(s->avctx, AV_LOG_ERROR, "looks like this file was encoded with (divx4/(old)xvid/opendivx) -> forcing low_delay flag\n"); |
|
|
|
av_log(s->avctx, AV_LOG_WARNING, "looks like this file was encoded with (divx4/(old)xvid/opendivx) -> forcing low_delay flag\n"); |
|
|
|
s->low_delay=1; |
|
|
|
} |
|
|
|
|
|
|
@@ -2110,7 +2110,7 @@ int ff_mpeg4_decode_picture_header(MpegEncContext * s, GetBitContext *gb) |
|
|
|
for(;;) { |
|
|
|
if(get_bits_count(gb) >= gb->size_in_bits){ |
|
|
|
if(gb->size_in_bits==8 && (s->divx_version>=0 || s->xvid_build>=0)){ |
|
|
|
av_log(s->avctx, AV_LOG_ERROR, "frame skip %d\n", gb->size_in_bits); |
|
|
|
av_log(s->avctx, AV_LOG_WARNING, "frame skip %d\n", gb->size_in_bits); |
|
|
|
return FRAME_SKIPPED; //divx bug |
|
|
|
}else |
|
|
|
return -1; //end of stream |
|
|
|