[FFmpeg-cvslog] avformat: Add fpsprobesize as an AVOption.

Alex Converse git at videolan.org
Thu May 26 03:32:25 CEST 2011


ffmpeg | branch: master | Alex Converse <aconverse at google.com> | Mon May  9 14:34:23 2011 -0700| [30315a8d9c9bea98d54260956db58b6df56f9347] | committer: Alex Converse

avformat: Add fpsprobesize as an AVOption.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=30315a8d9c9bea98d54260956db58b6df56f9347
---

 doc/APIchanges         |    3 +++
 libavformat/avformat.h |    5 +++++
 libavformat/options.c  |    1 +
 libavformat/utils.c    |    2 ++
 libavformat/version.h  |    4 ++--
 5 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/doc/APIchanges b/doc/APIchanges
index 853975e..a99b798 100644
--- a/doc/APIchanges
+++ b/doc/APIchanges
@@ -13,6 +13,9 @@ libavutil:   2011-04-18
 
 API changes, most recent first:
 
+2011-05-25 - XXXXXXX - lavf 53.1.0 - avformat.h
+  Add fps_probe_size to AVFormatContext.
+
 2011-05-18 - 64150ff - lavc 53.4.0 - AVCodecContext.request_sample_fmt
   Add request_sample_fmt field to AVCodecContext.
 
diff --git a/libavformat/avformat.h b/libavformat/avformat.h
index 11dbe8b..3a652a3 100644
--- a/libavformat/avformat.h
+++ b/libavformat/avformat.h
@@ -817,6 +817,11 @@ typedef struct AVFormatContext {
      * - decoding: Unused.
      */
     int64_t start_time_realtime;
+
+    /**
+     * decoding: number of frames used to probe fps
+     */
+    int fps_probe_size;
 } AVFormatContext;
 
 typedef struct AVPacketList {
diff --git a/libavformat/options.c b/libavformat/options.c
index 22807c3..377ba93 100644
--- a/libavformat/options.c
+++ b/libavformat/options.c
@@ -57,6 +57,7 @@ static const AVOption options[]={
 {"fdebug", "print specific debug info", OFFSET(debug), FF_OPT_TYPE_FLAGS, {.dbl = DEFAULT }, 0, INT_MAX, E|D, "fdebug"},
 {"ts", NULL, 0, FF_OPT_TYPE_CONST, {.dbl = FF_FDEBUG_TS }, INT_MIN, INT_MAX, E|D, "fdebug"},
 {"max_delay", "maximum muxing or demuxing delay in microseconds", OFFSET(max_delay), FF_OPT_TYPE_INT, {.dbl = DEFAULT }, 0, INT_MAX, E|D},
+{"fpsprobesize", "number of frames used to probe fps", OFFSET(fps_probe_size), FF_OPT_TYPE_INT, -1, -1, INT_MAX-1, D},
 {NULL},
 };
 
diff --git a/libavformat/utils.c b/libavformat/utils.c
index 8cdd8b3..89ab108 100644
--- a/libavformat/utils.c
+++ b/libavformat/utils.c
@@ -2229,6 +2229,8 @@ int av_find_stream_info(AVFormatContext *ic)
                the correct fps */
             if (av_q2d(st->time_base) > 0.0005)
                 fps_analyze_framecount *= 2;
+            if (ic->fps_probe_size >= 0)
+                fps_analyze_framecount = ic->fps_probe_size;
             /* variable fps and no guess at the real fps */
             if(   tb_unreliable(st->codec) && !(st->r_frame_rate.num && st->avg_frame_rate.num)
                && st->info->duration_count < fps_analyze_framecount
diff --git a/libavformat/version.h b/libavformat/version.h
index b4fdb6f..b2ac6d8 100644
--- a/libavformat/version.h
+++ b/libavformat/version.h
@@ -24,8 +24,8 @@
 #include "libavutil/avutil.h"
 
 #define LIBAVFORMAT_VERSION_MAJOR 53
-#define LIBAVFORMAT_VERSION_MINOR  0
-#define LIBAVFORMAT_VERSION_MICRO  3
+#define LIBAVFORMAT_VERSION_MINOR  1
+#define LIBAVFORMAT_VERSION_MICRO  0
 
 #define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \
                                                LIBAVFORMAT_VERSION_MINOR, \



More information about the ffmpeg-cvslog mailing list