changeset 1525:39efe24058ad libavcodec

dont check if the ac esc 3 could have been stored as vlc as this detects only very few errors allthough it detects several buggy encoders
author michael
date Mon, 13 Oct 2003 11:13:10 +0000
parents 7f9f0bedc2e1
children fcfa169fdbf8
files avcodec.h h263.c h263dec.c
diffstat 3 files changed, 4 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/avcodec.h	Mon Oct 13 08:02:46 2003 +0000
+++ b/avcodec.h	Mon Oct 13 11:13:10 2003 +0000
@@ -676,7 +676,7 @@
 #define FF_BUG_XVID_ILACE       4
 #define FF_BUG_UMP4             8
 #define FF_BUG_NO_PADDING       16
-#define FF_BUG_AC_VLC           32
+#define FF_BUG_AC_VLC           0  ///< will be removed, libavcodec can now handle these non compliant files by default
 #define FF_BUG_QPEL_CHROMA      64
 #define FF_BUG_STD_QPEL         128
 #define FF_BUG_QPEL_CHROMA2     256
--- a/h263.c	Mon Oct 13 08:02:46 2003 +0000
+++ b/h263.c	Mon Oct 13 11:13:10 2003 +0000
@@ -4082,10 +4082,10 @@
                         fprintf(stderr, "|level| overflow in 3. esc, qp=%d\n", s->qscale);
                         return -1;
                     }
-#if 1 
-                    {
+#if 0
+                    if(s->error_resilience >= FF_ER_COMPLIANT){
                         const int abs_level= ABS(level);
-                        if(abs_level<=MAX_LEVEL && run<=MAX_RUN && !(s->workaround_bugs&FF_BUG_AC_VLC)){
+                        if(abs_level<=MAX_LEVEL && run<=MAX_RUN){
                             const int run1= run - rl->max_run[last][abs_level] - 1;
                             if(abs_level <= rl->max_level[last][run]){
                                 fprintf(stderr, "illegal 3. esc, vlc encoding possible\n");
--- a/h263dec.c	Mon Oct 13 08:02:46 2003 +0000
+++ b/h263dec.c	Mon Oct 13 11:13:10 2003 +0000
@@ -508,7 +508,6 @@
 
         if(s->avctx->codec_tag == ff_get_fourcc("UMP4")){
             s->workaround_bugs|= FF_BUG_UMP4;
-            s->workaround_bugs|= FF_BUG_AC_VLC;
         }
 
         if(s->divx_version>=500){