interpret H264 VUI timing info correctly
authorMåns Rullgård <mans@mansr.com>
Thu, 19 Jan 2006 00:19:15 +0000 (00:19 +0000)
committerMåns Rullgård <mans@mansr.com>
Thu, 19 Jan 2006 00:19:15 +0000 (00:19 +0000)
work around bug in x264 build < 44

Originally committed as revision 4866 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavcodec/h264.c

index be4fff1..11a4ce7 100644 (file)
@@ -4309,7 +4309,11 @@ static int decode_slice_header(H264Context *h){
             s->avctx->sample_aspect_ratio.den = 1;
 
         if(h->sps.timing_info_present_flag){
-            s->avctx->time_base= (AVRational){h->sps.num_units_in_tick, h->sps.time_scale};
+            s->avctx->time_base= (AVRational){h->sps.num_units_in_tick * 2, h->sps.time_scale};
+           if(h->x264_build > 0 && h->x264_build < 44)
+               s->avctx->time_base.den *= 2;
+           av_reduce(&s->avctx->time_base.num, &s->avctx->time_base.den,
+                     s->avctx->time_base.num, s->avctx->time_base.den, 1<<30);
         }
     }