Fix mpeg4 padding bug detection with more than 128bit trash and slices.

Fixes ticket302
The second hunk is from anatoly

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
pull/2/head
Michael Niedermayer 14 years ago
parent 315f0e3fd8
commit 9251942ca7
  1. 2
      libavcodec/h263dec.c
  2. 2
      libavcodec/mpeg4videodec.c

@ -269,7 +269,7 @@ static int decode_slice(MpegEncContext *s){
if( s->codec_id==CODEC_ID_MPEG4
&& (s->workaround_bugs&FF_BUG_AUTODETECT)
&& get_bits_left(&s->gb) >=0
&& get_bits_left(&s->gb) < 48
&& get_bits_left(&s->gb) < 137
// && !s->resync_marker
&& !s->data_partitioning){

@ -113,7 +113,7 @@ static inline int mpeg4_is_resync(MpegEncContext *s){
int bits_count= get_bits_count(&s->gb);
int v= show_bits(&s->gb, 16);
if(s->workaround_bugs&FF_BUG_NO_PADDING){
if(s->workaround_bugs&FF_BUG_NO_PADDING && !s->resync_marker){
return 0;
}

Loading…
Cancel
Save