avformat: Accept the ISO8601 separate format as input, too

This makes the function accept the format of creation_time
as output by demuxers (e.g. the mov demuxer), making the
creation timestamp stay intact if transcoding.

Signed-off-by: Martin Storsjö <martin@martin.st>
pull/2/head
Martin Storsjö 14 years ago
parent 4a83541650
commit 18579f08e7
  1. 11
      libavformat/utils.c

@ -3943,9 +3943,14 @@ void ff_make_absolute_url(char *buf, int size, const char *base,
int64_t ff_iso8601_to_unix_time(const char *datestr)
{
#if HAVE_STRPTIME
struct tm time = {0};
strptime(datestr, "%Y - %m - %dT%T", &time);
return av_timegm(&time);
struct tm time1 = {0}, time2 = {0};
char *ret1, *ret2;
ret1 = strptime(datestr, "%Y - %m - %d %T", &time1);
ret2 = strptime(datestr, "%Y - %m - %dT%T", &time2);
if (ret2 && !ret1)
return av_timegm(&time2);
else
return av_timegm(&time1);
#else
av_log(NULL, AV_LOG_WARNING, "strptime() unavailable on this system, cannot convert "
"the date string.\n");

Loading…
Cancel
Save