diff h263.c @ 700:0fb4c66527e1 libavcodec

autodetect UMP4 (by adding a fourcc field to AVCodecContext)
author michaelni
date Thu, 26 Sep 2002 23:27:22 +0000
parents f69f9cb461bc
children 85b071dfc7e3
line wrap: on
line diff
--- a/h263.c	Thu Sep 26 22:37:33 2002 +0000
+++ b/h263.c	Thu Sep 26 23:27:22 2002 +0000
@@ -4162,7 +4162,7 @@
                 if(   h_sampling_factor_n==0 || h_sampling_factor_m==0 
                    || v_sampling_factor_n==0 || v_sampling_factor_m==0 || s->workaround_bugs==1){
                    
-                    fprintf(stderr, "illegal scalability header (VERY broken encoder), trying to workaround\n");
+//                    fprintf(stderr, "illegal scalability header (VERY broken encoder), trying to workaround\n");
                     s->scalability=0;
                    
                     s->gb= bak;
@@ -4231,10 +4231,12 @@
         s->last_time_base= s->time_base;
         s->time_base+= time_incr;
         s->time= s->time_base*s->time_increment_resolution + time_increment;
-        if(s->time < s->last_non_b_time && s->workaround_bugs==3){
-            fprintf(stderr, "header is not mpeg4 compatible, broken encoder, trying to workaround\n");
-            s->time_base++;
-            s->time+= s->time_increment_resolution;
+        if(s->workaround_bugs==3 || s->avctx->fourcc== 'U' + ('M'<<8) + ('P'<<16) + ('4'<<24)){
+            if(s->time < s->last_non_b_time){
+//                fprintf(stderr, "header is not mpeg4 compatible, broken encoder, trying to workaround\n");
+                s->time_base++;
+                s->time+= s->time_increment_resolution;
+            }
         }
         s->pp_time= s->time - s->last_non_b_time;
         s->last_non_b_time= s->time;