Mercurial > libavcodec.hg
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;