CreateDate vs CreationDate

Started by tunucu, August 06, 2017, 03:01:55 PM

Previous topic - Next topic

tunucu

Hi -

I use Exiftool to change picture names to the date picture/movie was taken. I use a PowerShell script that wraps exiftool and for pictures it uses something like this:
& $Exiftool -progress -recurse "-FileCreateDate<DateTimeOriginal" "-FileModifyDate<DateTimeOriginal" "-FileName<DateTimeOriginal" -d "%Y-%m-%d_%H-%M-%S%%-c.%%e" $FullPath -ext jpg -ext PNG -fixbase

Similarly, for movies:
& $Exiftool -progress -recurse "-FileCreateDate<CreateDate" "-FileModifyDate<CreateDate" "-FileName<CreateDate" -d "%Y-%m-%d_%H-%M-%S%%-c.%%e" $fullpath -ext MOV -ext 3gp -ext MP4 -fixbase

After I ran the script on a folder, I noticed that .mov files corresponding to .jpg files were off by 4hrs. These are what apple call 'live pictures', so there is always a jpg and an associated .mov file.

It seems that the problem is "CreateDate" is off, but there is another tag "CreationDate" that matches what the .jpg has:

PS> D:\tools\EXIF\exiftool.exe -a -s -G1 -time:all D:\2017\2017.04\2017.04_Site\2017-04-21_22-37-12.MOV
[System]        FileModifyDate                  : 2017:04:21 22:37:12-04:00
[System]        FileAccessDate                  : 2017:04:21 22:37:12-04:00
[System]        FileCreateDate                  : 2017:04:21 22:37:12-04:00
[QuickTime]     CreateDate                      : 2017:04:21 22:37:12
[QuickTime]     ModifyDate                      : 2017:04:21 22:37:14
[Track1]        TrackCreateDate                 : 2017:04:21 22:37:12
[Track1]        TrackModifyDate                 : 2017:04:21 22:37:14
[Track1]        MediaCreateDate                 : 2017:04:21 22:37:12
[Track1]        MediaModifyDate                 : 2017:04:21 22:37:14
[Track2]        TrackCreateDate                 : 2017:04:21 22:37:12
[Track2]        TrackModifyDate                 : 2017:04:21 22:37:14
[Track2]        MediaCreateDate                 : 2017:04:21 22:37:12
[Track2]        MediaModifyDate                 : 2017:04:21 22:37:14
[Track3]        TrackCreateDate                 : 2017:04:21 22:37:12
[Track3]        TrackModifyDate                 : 2017:04:21 22:37:14
[Track3]        MediaCreateDate                 : 2017:04:21 22:37:12
[Track3]        MediaModifyDate                 : 2017:04:21 22:37:14
[QuickTime]     CreationDate                    : 2017:04:21 18:37:12-04:00


Also, I looked at the corresponding .jpg:
PS> D:\tools\EXIF\exiftool.exe -a -s -G1 -time:all D:\2017\2017.04\2017.04_Site\2017-04-21_18-37-12.JPG
[System]        FileModifyDate                  : 2017:04:21 18:37:12-04:00
[System]        FileAccessDate                  : 2017:04:21 18:37:12-04:00
[System]        FileCreateDate                  : 2017:04:21 18:37:12-04:00
[IFD0]          ModifyDate                      : 2017:04:21 18:37:12
[ExifIFD]       DateTimeOriginal                : 2017:04:21 18:37:12
[ExifIFD]       CreateDate                      : 2017:04:21 18:37:12
[ExifIFD]       SubSecTimeOriginal              : 569
[ExifIFD]       SubSecTimeDigitized             : 569
[GPS]           GPSTimeStamp                    : 22:37:12
[GPS]           GPSDateStamp                    : 2017:04:21
[Composite]     GPSDateTime                     : 2017:04:21 22:37:12Z
[Composite]     SubSecCreateDate                : 2017:04:21 18:37:12.569
[Composite]     SubSecDateTimeOriginal          : 2017:04:21 18:37:12.569


Note that GPSTime is different. It's as if that's using UTC vs rest is local time.
The weird thing is FileModifyDate is 4hrs apart in .jpg and its .mov file
I have not idea how this is possible.

Problem is that unless names match after I do the rename, .jpg and .mov become disjointed, live picture become still picture + a 3 sec movie.

Any suggestions here? Would CreationDate always exist and have local time? I always used CreateDate, am I supposed to use CreationDate going instead?

Phil Harvey

Try adding -api quicktimeutc to your command.  This is an API option that is documented here

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

tunucu

That fixed it, thank you very much for such a wonderful tool!