diff options
author | Senthilnathan M <senthilnathan.maadasamy@gmail.com> | 2013-02-20 09:51:06 +0530 |
---|---|---|
committer | Stefano Sabatini <stefasab@gmail.com> | 2013-02-22 23:43:46 +0100 |
commit | 12a269a5229d3a37be0743fc9655f743ebc44b6e (patch) | |
tree | 0294970f493da9d0fc4f798a9b016e809f5d864a | |
parent | 239b88c284af3025513e5cac6e318d1f9a9cdd71 (diff) | |
download | ffmpeg-12a269a5229d3a37be0743fc9655f743ebc44b6e.tar.gz |
lavu/parseutils: allow MM:SS format for duration in av_parse_time()
Fix trac ticket #2258.
Signed-off-by: Senthilnathan M <senthilnathan.maadasamy@gmail.com>
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
-rw-r--r-- | doc/syntax.texi | 2 | ||||
-rw-r--r-- | libavutil/parseutils.c | 5 | ||||
-rw-r--r-- | libavutil/parseutils.h | 2 | ||||
-rw-r--r-- | libavutil/version.h | 2 |
4 files changed, 8 insertions, 3 deletions
diff --git a/doc/syntax.texi b/doc/syntax.texi index 4dddc3cbc2..af22d6cefd 100644 --- a/doc/syntax.texi +++ b/doc/syntax.texi @@ -98,7 +98,7 @@ year-month-day. The accepted syntax is: @example -[-]HH:MM:SS[.m...] +[-][HH:]MM:SS[.m...] [-]S+[.m...] @end example diff --git a/libavutil/parseutils.c b/libavutil/parseutils.c index 73e400ac62..c67f971792 100644 --- a/libavutil/parseutils.c +++ b/libavutil/parseutils.c @@ -588,6 +588,11 @@ int av_parse_time(int64_t *timeval, const char *timestr, int duration) /* parse timestr as HH:MM:SS */ q = av_small_strptime(p, "%J:%M:%S", &dt); if (!q) { + /* parse timestr as MM:SS */ + q = av_small_strptime(p, "%M:%S", &dt); + dt.tm_hour = 0; + } + if (!q) { /* parse timestr as S+ */ dt.tm_sec = strtol(p, (void *)&q, 10); if (q == p) /* the parsing didn't succeed */ diff --git a/libavutil/parseutils.h b/libavutil/parseutils.h index 1f56a7a7cc..80ba2b74fc 100644 --- a/libavutil/parseutils.h +++ b/libavutil/parseutils.h @@ -122,7 +122,7 @@ int av_parse_color(uint8_t *rgba_color, const char *color_string, int slen, * year-month-day. * - If a duration the syntax is: * @code - * [-]HH:MM:SS[.m...]]] + * [-][HH:]MM:SS[.m...]]] * [-]S+[.m...] * @endcode * @param duration flag which tells how to interpret timestr, if not diff --git a/libavutil/version.h b/libavutil/version.h index 3b5c04dabe..5aca91de74 100644 --- a/libavutil/version.h +++ b/libavutil/version.h @@ -76,7 +76,7 @@ #define LIBAVUTIL_VERSION_MAJOR 52 #define LIBAVUTIL_VERSION_MINOR 17 -#define LIBAVUTIL_VERSION_MICRO 102 +#define LIBAVUTIL_VERSION_MICRO 103 #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \ LIBAVUTIL_VERSION_MINOR, \ |