[FFmpeg-cvslog] r22256 - trunk/libavformat/gxf.c

reimar subversion
Sat Mar 6 23:20:33 CET 2010


Author: reimar
Date: Sat Mar  6 23:20:33 2010
New Revision: 22256

Log:
GXF time base is always based on "fields" per second even for
non-interlaced video.
Should fix issue 1766.

Modified:
   trunk/libavformat/gxf.c

Modified: trunk/libavformat/gxf.c
==============================================================================
--- trunk/libavformat/gxf.c	Sat Mar  6 22:28:08 2010	(r22255)
+++ trunk/libavformat/gxf.c	Sat Mar  6 23:20:33 2010	(r22256)
@@ -313,7 +313,7 @@ static int gxf_header(AVFormatContext *s
         st = s->streams[idx];
         if (!main_timebase.num || !main_timebase.den) {
             main_timebase.num = si.frames_per_second.den;
-            main_timebase.den = si.frames_per_second.num * si.fields_per_frame;
+            main_timebase.den = si.frames_per_second.num * 2;
         }
         st->start_time = si.first_field;
         if (si.first_field != AV_NOPTS_VALUE && si.last_field != AV_NOPTS_VALUE)
@@ -344,7 +344,7 @@ static int gxf_header(AVFormatContext *s
             if (!main_timebase.num || !main_timebase.den) {
                 // this may not always be correct, but simply the best we can get
                 main_timebase.num = fps.den;
-                main_timebase.den = fps.num;
+                main_timebase.den = fps.num * 2;
             }
         } else
             av_log(s, AV_LOG_INFO, "UMF packet too short\n");



More information about the ffmpeg-cvslog mailing list