Allow to parse durations >= 24:00:00.tags/n1.1
| @@ -454,7 +454,8 @@ char *av_small_strptime(const char *p, const char *fmt, struct tm *dt) | |||||
| c = *fmt++; | c = *fmt++; | ||||
| switch(c) { | switch(c) { | ||||
| case 'H': | case 'H': | ||||
| val = date_get_num(&p, 0, 23, 2); | |||||
| case 'J': | |||||
| val = date_get_num(&p, 0, c == 'H' ? 23 : INT_MAX, 2); | |||||
| if (val == -1) | if (val == -1) | ||||
| return NULL; | return NULL; | ||||
| dt->tm_hour = val; | dt->tm_hour = val; | ||||
| @@ -581,7 +582,7 @@ int av_parse_time(int64_t *timeval, const char *timestr, int duration) | |||||
| ++p; | ++p; | ||||
| } | } | ||||
| /* parse timestr as HH:MM:SS */ | /* parse timestr as HH:MM:SS */ | ||||
| q = av_small_strptime(p, time_fmt[0], &dt); | |||||
| q = av_small_strptime(p, "%J:%M:%S", &dt); | |||||
| if (!q) { | if (!q) { | ||||
| /* parse timestr as S+ */ | /* parse timestr as S+ */ | ||||
| dt.tm_sec = strtol(p, (void *)&q, 10); | dt.tm_sec = strtol(p, (void *)&q, 10); | ||||
| @@ -141,6 +141,7 @@ int av_parse_time(int64_t *timeval, const char *timestr, int duration); | |||||
| * In particular it actually supports the parameters: | * In particular it actually supports the parameters: | ||||
| * - %H: the hour as a decimal number, using a 24-hour clock, in the | * - %H: the hour as a decimal number, using a 24-hour clock, in the | ||||
| * range '00' through '23' | * range '00' through '23' | ||||
| * - %J: hours as a decimal number, in the range '0' through INT_MAX | |||||
| * - %M: the minute as a decimal number, using a 24-hour clock, in the | * - %M: the minute as a decimal number, using a 24-hour clock, in the | ||||
| * range '00' through '59' | * range '00' through '59' | ||||
| * - %S: the second as a decimal number, using a 24-hour clock, in the | * - %S: the second as a decimal number, using a 24-hour clock, in the | ||||
| @@ -76,7 +76,7 @@ | |||||
| #define LIBAVUTIL_VERSION_MAJOR 52 | #define LIBAVUTIL_VERSION_MAJOR 52 | ||||
| #define LIBAVUTIL_VERSION_MINOR 11 | #define LIBAVUTIL_VERSION_MINOR 11 | ||||
| #define LIBAVUTIL_VERSION_MICRO 100 | |||||
| #define LIBAVUTIL_VERSION_MICRO 101 | |||||
| #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \ | #define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \ | ||||
| LIBAVUTIL_VERSION_MINOR, \ | LIBAVUTIL_VERSION_MINOR, \ | ||||