|
|
|
@ -780,14 +780,16 @@ static int mov_read_moof(MOVContext *c, AVIOContext *pb, MOVAtom atom) |
|
|
|
|
return mov_read_default(c, pb, atom); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
static void mov_metadata_creation_time(AVDictionary **metadata, time_t time) |
|
|
|
|
static void mov_metadata_creation_time(AVDictionary **metadata, int64_t time) |
|
|
|
|
{ |
|
|
|
|
char buffer[32]; |
|
|
|
|
if (time) { |
|
|
|
|
struct tm *ptm; |
|
|
|
|
time_t timet; |
|
|
|
|
if(time >= 2082844800) |
|
|
|
|
time -= 2082844800; /* seconds between 1904-01-01 and Epoch */ |
|
|
|
|
ptm = gmtime(&time); |
|
|
|
|
timet = time; |
|
|
|
|
ptm = gmtime(&timet); |
|
|
|
|
if (!ptm) return; |
|
|
|
|
strftime(buffer, sizeof(buffer), "%Y-%m-%d %H:%M:%S", ptm); |
|
|
|
|
av_dict_set(metadata, "creation_time", buffer, 0); |
|
|
|
@ -801,7 +803,7 @@ static int mov_read_mdhd(MOVContext *c, AVIOContext *pb, MOVAtom atom) |
|
|
|
|
int version; |
|
|
|
|
char language[4] = {0}; |
|
|
|
|
unsigned lang; |
|
|
|
|
time_t creation_time; |
|
|
|
|
int64_t creation_time; |
|
|
|
|
|
|
|
|
|
if (c->fc->nb_streams < 1) |
|
|
|
|
return 0; |
|
|
|
@ -836,7 +838,7 @@ static int mov_read_mdhd(MOVContext *c, AVIOContext *pb, MOVAtom atom) |
|
|
|
|
|
|
|
|
|
static int mov_read_mvhd(MOVContext *c, AVIOContext *pb, MOVAtom atom) |
|
|
|
|
{ |
|
|
|
|
time_t creation_time; |
|
|
|
|
int64_t creation_time; |
|
|
|
|
int version = avio_r8(pb); /* version */ |
|
|
|
|
avio_rb24(pb); /* flags */ |
|
|
|
|
|
|
|
|
|