diff mpeg4videodec.c @ 11098:77b3f322dba8 libavcodec

Change xvid/divx/lavc build variables to be consistent to x264_build.
author michael
date Mon, 08 Feb 2010 00:43:15 +0000
parents 514dc1c87b2e
children b94e1810ce4c
line wrap: on
line diff
--- a/mpeg4videodec.c	Mon Feb 08 00:08:05 2010 +0000
+++ b/mpeg4videodec.c	Mon Feb 08 00:43:15 2010 +0000
@@ -2079,7 +2079,7 @@
      }
      /* 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==0 && s->picture_number==0){
+     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");
          s->low_delay=1;
      }
@@ -2118,7 +2118,7 @@
     startcode = 0xff;
     for(;;) {
         if(get_bits_count(gb) >= gb->size_in_bits){
-            if(gb->size_in_bits==8 && (s->divx_version || s->xvid_build)){
+            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);
                 return FRAME_SKIPPED; //divx bug
             }else
@@ -2194,6 +2194,11 @@
     int ret;
     static int done = 0;
 
+    s->divx_version=
+    s->divx_build=
+    s->xvid_build=
+    s->lavc_build= -1;
+
     if((ret=ff_h263_decode_init(avctx)) < 0)
         return ret;