[FFmpeg-devel] [PATCH 2/2] lavf/mov: strip com.apple.quicktime prefix in meta; parse creation date
Rodger Combs
rodger.combs at gmail.com
Tue Sep 13 04:24:44 EEST 2016
> On Sep 10, 2016, at 05:55, Michael Niedermayer <michael at niedermayer.cc> wrote:
>
> On Fri, Sep 09, 2016 at 08:06:40PM -0500, Rodger Combs wrote:
>> ---
>> libavformat/mov.c | 16 ++++++++++++++++
>> 1 file changed, 16 insertions(+)
>>
>> diff --git a/libavformat/mov.c b/libavformat/mov.c
>> index 54530e3..b75acd2 100644
>> --- a/libavformat/mov.c
>> +++ b/libavformat/mov.c
>> @@ -42,6 +42,7 @@
>> #include "libavutil/aes_ctr.h"
>> #include "libavutil/sha.h"
>> #include "libavutil/timecode.h"
>> +#include "libavutil/parseutils.h"
>> #include "libavcodec/ac3tab.h"
>> #include "libavcodec/mpegaudiodecheader.h"
>> #include "avformat.h"
>> @@ -476,6 +477,21 @@ retry:
>> return ret;
>> }
>> str[str_size] = 0;
>> + if (!strcmp(key, "com.apple.quicktime.creationdate")) {
>> + struct tm *ptm, tmbuf;
>> + int64_t timeval;
>> + if (av_parse_time(&timeval, str, 0) >= 0) {
>> + time_t timet = timeval / 1000000;
>> + if (ptm = gmtime_r(&timet, &tmbuf)) {
>> + strftime(str, str_size, "%Y-%m-%d %H:%M:%S", ptm);
>> + key = "creation_time";
>> + }
>> + }
>> + } else if (!strcmp(key, "com.apple.quicktime.location.ISO6709")) {
>> + key = "location";
>> + } else if (!strncmp(key, "com.apple.quicktime.", 20)) {
>> + key += 20;
>> + }
>> }
>
> this causes language specific entries no longer to be listed together
> with their "parent" entries:
Huh; interesting. Not sure why this happens, but also not sure if it matters?
> is this missing some hadling of langauge specific stuff ?
Nothing I'm aware of, but I could easily be missing something.
> also off topic but we should sort metadata for display so related
> tags appear together
Sounds worthwhile, but yeah out-of-scope here.
>
> ticket/4012/IMG_4596.MOV
>
> major_brand : qt
> minor_version : 0
> - creation_time : 2014-10-05T10:06:36.000000Z
> + make-eng : Apple
> encoder : 8.0.2
> encoder-eng : 8.0.2
> date : 2014-10-05T18:06:36+0800
> date-eng : 2014-10-05T18:06:36+0800
> - location : +06.2271+099.7476+018.026/
> + software : 8.0.2
> location-eng : +06.2271+099.7476+018.026/
> - model : iPhone 6
> + creation_time : 2014-10-05T10:06:36.000
> model-eng : iPhone 6
> + location : +06.2271+099.7476+018.026/
> + model : iPhone 6
> make : Apple
> - make-eng : Apple
> rotate : 180
> creation_time : 2014-10-05T10:06:36.000000Z
> handler_name : Core Media Data Handler
>
>
> [...]
>
> --
> Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
>
> Why not whip the teacher when the pupil misbehaves? -- Diogenes of Sinope
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org <mailto:ffmpeg-devel at ffmpeg.org>
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel <http://ffmpeg.org/mailman/listinfo/ffmpeg-devel>
More information about the ffmpeg-devel
mailing list