Patched incorrect time zero for QuickTime date/time tag

Started by jaybee, November 08, 2016, 09:10:48 AM

Previous topic - Next topic

jaybee

I am not tech savvy. I am converting old videos from VOB, WMV, MOD etc to either MP4 (likely) or AVI (which do you think is better for quality as not concerned about file size).  The key for me is "CreateDate" as when I convert the videos the CreateDate is the date the video was converted rather than the date the original was created.  This is the data I need to modify.  I am using Exiftool 10.3.1.0 and ExifGUI 5.1.6.  In ExifGUI I highlight the MP4, go to the workspace, highlight the CreateDate (which is blank) and down below put in the appropriate date e.g. 2006-08-04 08:20:28 which is the local time the video was taken (MST).  My preference is to keep the dates local time.  When I hit "Enter" it saves the but when I hit "Save" it gives the following error message:
Nothing changed in MOV014.mp4
    0 image files updated
    1 image files unchanged
Warning: [minor] Patched incorrect time zero for QuickTime date/time tag - MOV014.mp4
<-END-

What am I doing wrong? :(

Phil Harvey

First, I would definitely recommend MP4.

ExifTool has only limited write ability for MP4 videos, but can change many of the date/time tags.

I don't know exactly what you are doing via the GUI, but QuickTime:CreateDate should be writable via ExifTool:

> exiftool -createdate="2006-08-04 08:20:28" a.mp4
Warning: [minor] Patched incorrect time zero for QuickTime date/time tag - a.mp4
    1 image files updated
> exiftool -createdate -G1 -a a.mp4
[QuickTime]     Create Date                     : 2006:08:04 08:20:28
[XMP-xmp]       Create Date                     : 2006:08:04 08:20:28


- 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 ($).

jaybee

Thanks for the heads up on MP4.  I am not sure how to run exifTool which is why I downloaded ExifToolGUI to provide a user friendly interface i.e. metadata for dummies.  It appears you are in ET.  I think you drop the mp4 video into the black screen but nothing happens in exiftool.exe.  I don't have the > exiftool prompt nor the location of the file.  Not sure how to get there which is why I was trying to use the GUI.  Assuming I can get there, what do you put in when you have 20 mp4 files because you dropped in a folder i.e. how do you choose one over the other i.e. change the correct date on a specific file.

Phil Harvey

Here are some instructions that may help you get started

After typing the exiftool command (up to but not including the "a.mp4" in my examples), you can drag and drop one more more files and or folders instead of typing "a.mp4" to process these files with exiftool.

- 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 ($).

jaybee

I am making progress.  Spent about an hour until I googled PATH and found out what that meant.  Now able to change the date with the following:  C:users\john\>exiftool "video location (from dragging and dropping)" -createdate="2006-08-04 08:20:28".  The result is [minor] Patched incorrect time zero for Quicktime date/time tag.

When I look at the CreateDate metadata it is correct with 08:20:28 (MST).  When I open it up in my viewing software (Playmemories Home by Sony) the Date Taken is 01:20:28.  How do I get the CreateDate to be show correct in PH.  I tried several things after researching the UTC changes.  The command I found was exiftool -alldates-=4 DIR [with the 4 as a 6 for MST not EST].  The result was  it the CreateDate changed to 2006:08:04 02:20:28 and the Date Taken in PM is 2006:08:03 19:20:28.  I was hoping to 1) Keep the "CreateDate" correct and display the Date Taken as the same date.

Thank you so much for your help.  If have never used the cmd line before so it is a bit challenging even to understand the blogs.

Phil Harvey

What date/time does PH show if you do this (ie. add the -api quicktimeutc option)?:

exiftool "video location (from dragging and dropping)" -createdate="2006-08-04 08:20:28" -api quicktimeutc

- 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 ($).

jaybee

The CreateDate is now incorrect at 2006:08:04 15:20:28 but the Playmemories date (which is the most important) is correct at 2006:08:04 08:20:28.  If that is the best solution possible I will take it. :).  The only issue may be if I ever use other software (besides PM) then all the dates may have to be redone to ensure the CreateDate is correct.   I have about 400 videos that have to be 1) converted to MP4 and 2) have the Create Date changes as appropriate.  Please let me know if this is the best possible solution and I will move forward.  If it is possible to have the dates match with the correct date then that is the best but not sure if it can be done.

Please advise.  Thank you very much for your help thus far.

Phil Harvey

The best solution is the one that works for you.  Unfortunately there isn't a lot of consistency in the way date/times are represented in MP4 videos, and different software interprets them in different ways.  This is just what happens if there isn't a good public specification for the format.

- 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 ($).

jaybee

Just to understand, this is likely the best solution so use it as there is no way to get the CreateDate and Playmemories Date the same i.e. use this method (with -api quicktimeutc) and move on?  I am Ok with it but just want to be sure as it will impact 100's of videos and many hours of work.

That said, thank you very much for your help.

Phil Harvey

I can't say for sure because I don't know what you on what you are basing that statement that CreateDate is wrong.  Is it wrong in the software that you care about?

- 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 ($).

jaybee

My apologies as I wasn't clear.  Playmemories (PM) draws the Date Taken (DT) from CreateDate (CD) in the metadata.  When I look at the most recent photos and videos (e.g. 2016) the DT and CD are the same i.e. I set the camera to the local time and both the DT and CD are the same and they indicate the local time the jpg or mp4 was taken. Then when I load them into PM, I arrange them by Date Taken and they play in the order that they were taken during the day switching between jpg or mp4 based on DT/CD.

The issue is I have older videos that have to be converted (WMV, AVI, MOD, MTS).  I know the time they were taken but when I convert them the CD is lost (I will likely use Wondershare Video Converter Ultimate (other suggestions?) and they have confirmed the CD will not transfer to the new mp4).  So I will need to go through each video manually and input the CD manually.  Your suggestion was to add -api quicktimeutc which means that the CreateDate is now incorrect at 2006:08:04 15:20:28 but the Playmemories date (which is the most important) is correct at 2006:08:04 08:20:28.  That is fine if that is the best that can be done.  If one day I use another software package that does not make the shift (from 2006:08:04 15:20:28 to 2006:08:04 08:20:28) then I will have to do it all over again.  Just want to be sure that using the -api quicktimeutc is the best option as I will have to do about 400 videos manually.

As always, thank you very much for your help.
J

Phil Harvey

OK.  I understand now, but I would like to see exactly what is going on.  Could you show me the date/time tags from a recent video (where DT/CD are correct).  I would like to see the output of these commands:

exiftool -a -G1 FILE

and

exiftool -a -G1 -api quicktimeutc FILE

And if you could repeat these commands for a video where you have tried to set CreateDate using ExifTool and the CD/DT are different in PM.

If you have trouble copying/pasting the ExifTool output you can send it to a file by adding ">> out.txt" to the end of the command.

Thanks.

- 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 ($).

jaybee

The date/time tags are as follows: 1) recent video where the CreateDate and Playmemories Date Taken are the same without and then with quicktimeutc and 2) an older converted video.  I have all the outputs saved if you need more info:

[ExifTool]      ExifTool Version Number         : 10.33
[System]        File Modification Date/Time     : 2016:01:30 11:44:46-08:00
[System]        File Access Date/Time           : 2016:01:31 02:45:58-08:00
[System]        File Creation Date/Time         : 2016:01:31 02:45:58-08:00
[QuickTime]     Create Date                     : 2016:01:30 14:44:33
[QuickTime]     Modify Date                     : 2016:01:30 14:44:46
[QuickTime]     Time Scale                      : 90000

[System]        File Modification Date/Time     : 2016:01:30 11:44:46-08:00
[System]        File Access Date/Time           : 2016:01:31 02:45:58-08:00
[System]        File Creation Date/Time         : 2016:01:31 02:45:58-08:00
[QuickTime]     Create Date                     : 2016:01:30 06:44:33-08:00
[QuickTime]     Modify Date                     : 2016:01:30 06:44:46-08:00
[QuickTime]     Time Scale                      : 90000

The CreateDate and Playmemories Date Taken on this file is 2016:01:30 14:44:33 and 2016:01:30 2:44:33 pm
=====================================================
[System]        File Modification Date/Time     : 2016:11:13 10:35:57-08:00
[System]        File Access Date/Time           : 2016:11:13 10:35:56-08:00
[System]        File Creation Date/Time         : 2016:11:07 11:23:49-08:00
[QuickTime]     Create Date                     : 2006:08:04 15:20:28
[QuickTime]     Modify Date                     : 2016:11:06 12:24:00
[QuickTime]     Time Scale                      : 90000

[System]        File Modification Date/Time     : 2016:11:13 10:35:57-08:00
[System]        File Access Date/Time           : 2016:11:13 10:35:56-08:00
[System]        File Creation Date/Time         : 2016:11:07 11:23:49-08:00
[QuickTime]     Create Date                     : 2006:08:04 08:20:28-07:00
[QuickTime]     Modify Date                     : 2016:11:06 04:24:00-08:00
[QuickTime]     Time Scale                      : 90000

The CreateDate and Playmemories Date Taken on this file is 2006:08:04 15:20:28 and 2006:08:04 8:20:28 am (the 8:20:28 is is the correct time taken prior to file conversion)





Phil Harvey

Interesting.

Playmemories Date Taken is not assuming UTC for the original video.  This is common (likely because the camera doesn't know the time zone).

The funny thing is that it is based on UTC for the edited video.

The first obvious difference is that the ModifyDate is different than the CreateDate for the edited version.  What happens if you make this the same as CreateDate?  I'm hoping that Playmemories decides on the time zone based on whether or not the file has been modified (ie. If CreateDate == ModifyDate then assume local time, otherwise UTC).

- 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 ($).

jaybee

I changed the Modify Date to the Create Date and re-ran the two scenarios for the converted (MOD to MP4) video:

[System]        File Modification Date/Time     : 2016:11:16 14:56:33-08:00
[System]        File Access Date/Time           : 2016:11:16 14:56:31-08:00
[System]        File Creation Date/Time         : 2016:11:07 11:23:49-08:00
[QuickTime]     Create Date                     : 2006:08:04 15:20:28
[QuickTime]     Modify Date                     : 2006:08:04 15:20:28

[System]        File Modification Date/Time     : 2016:11:16 14:56:33-08:00
[System]        File Access Date/Time           : 2016:11:16 14:56:31-08:00
[System]        File Creation Date/Time         : 2016:11:07 11:23:49-08:00
[QuickTime]     Create Date                     : 2006:08:04 08:20:28-07:00
[QuickTime]     Modify Date                     : 2006:08:04 08:20:28-07:00

When I run PlayMemories on the file after the second CD/MD I get a Date Taken of 2006-08-04 08:20:28

I tried changing the Create Date to 2006:08:04 10:00:00.  It changed.  PM now reads 2006-08-04 3:00:00 in that exact format (note the "-" instead of the ":")



Phil Harvey

OK.  Well that was the only idea that I had.  I must admit that I don't know what is going on here.  I can't imagine why PM doesn't seem to be consistent in the time base that it uses.

- 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 ($).

ferenc009

Several years later, I have also zero Quicktime problem.
I'm importing photos/video to my MAC's Photos app, and some of my old mp4 videos from my Samsung Galaxy Ace mobile are shown as 1945 instead of 2011.
These are the times printed by Exiftool:
exiftool -time:all -api quicktimeutc video-2011-10-16-13-29-34.mp4
File Modification Date/Time     : 2011:10:16 13:30:28+02:00
File Access Date/Time           : 2018:08:01 00:22:39+02:00
File Inode Change Date/Time     : 2020:07:08 17:46:31+02:00
Create Date                     : 1945:10:15 13:30:29+02:00
Modify Date                     : 1945:10:15 13:30:29+02:00
Track Create Date               : 1945:10:15 13:30:29+02:00
Track Modify Date               : 1945:10:15 13:30:29+02:00
Media Create Date               : 1945:10:15 13:30:29+02:00
Media Modify Date               : 1945:10:15 13:30:29+02:00


exiftool -time:all video-2011-10-16-13-29-34.mp4
File Modification Date/Time     : 2011:10:16 13:30:28+02:00
File Access Date/Time           : 2018:08:01 00:22:39+02:00
File Inode Change Date/Time     : 2020:07:08 17:46:31+02:00
Create Date                     : 2011:10:16 11:30:29
Modify Date                     : 2011:10:16 11:30:29
Track Create Date               : 2011:10:16 11:30:29
Track Modify Date               : 2011:10:16 11:30:29
Media Create Date               : 2011:10:16 11:30:29
Media Modify Date               : 2011:10:16 11:30:29


I tried to shift dates by 66 years but then I receive the "Warning: Value above int32u maximum for CreateDate". I assume because my files are 32 bits.  I don't know how these files are formatted but interestingly just a month earlier video doesn't have this problem:

exiftool -time:all -api quicktimeutc video-2011-09-19-18-55-26.mp4
File Modification Date/Time     : 2011:09:19 18:55:54+02:00
File Access Date/Time           : 2018:08:05 16:24:25+02:00
File Inode Change Date/Time     : 2020:07:08 17:52:59+02:00
Create Date                     : 2011:09:19 18:55:26+02:00
Modify Date                     : 2011:09:19 18:55:26+02:00
Year                            : 0
Track Create Date               : 2011:09:19 18:55:26+02:00
Track Modify Date               : 2011:09:19 18:55:26+02:00
Media Create Date               : 2011:09:19 18:55:26+02:00
Media Modify Date               : 2011:09:19 18:55:26+02:00


exiftool -time:all -api quicktimeutc -s video-2011-09-19-18-55-26.mp4
FileModifyDate                  : 2011:09:19 18:55:54+02:00
FileAccessDate                  : 2018:08:05 16:24:25+02:00
FileInodeChangeDate             : 2020:07:08 17:52:59+02:00
CreateDate                      : 2011:09:19 18:55:26+02:00
ModifyDate                      : 2011:09:19 18:55:26+02:00
Year                            : 0
TrackCreateDate                 : 2011:09:19 18:55:26+02:00
TrackModifyDate                 : 2011:09:19 18:55:26+02:00
MediaCreateDate                 : 2011:09:19 18:55:26+02:00
MediaModifyDate                 : 2011:09:19 18:55:26+02:00


My question is: can those date's be changed to 64 bit uints or does the "Year: 0" field makes the point?
Any idea to correct? Thank you very much in advance.

wywh

Quote from: ferenc009 on July 08, 2020, 12:22:37 PM
I'm importing photos/video to my MAC's Photos app, and some of my old mp4 videos from my Samsung Galaxy Ace mobile are shown as 1945 instead of 2011.

If all your videos use a (correct?) date as a filename like in your examples (video-YYYY-MM-DD-hh-mm-ss.*) then you could try the following command which I recently used to fix the dates in my movies (I use YYYY-MMDD-hhmm-ss.* but exiftool seems to accept also your date format just fine). Now my imported movies and images sort correctly in Catalina's Photos.app 5.0 (if also images' EXIF dates are correct).

exiftool -api QuickTimeUTC=1 '-CreateDate<filename' '-ModifyDate<filename' '-Track*Date<filename' '-Media*Date<filename' -execute '-FileCreateDate<filename' '-FileModifyDate<filename' -execute '-Keys:CreationDate<FileModifyDate' '-UserData:DateTimeOriginal<FileModifyDate' -common_args -m -P -overwrite_original_in_place -wm w movies.*

StarGeek

Posted a whole long thing, then noticed you had posted some answers to my questions.  This is definitely weird.

Quote from: ferenc009 on July 08, 2020, 12:22:37 PM
I tried to shift dates by 66 years but then I receive the "Warning: Value above int32u maximum for CreateDate". I assume because my files are 32 bits.

It's because the video timestamps are saved as a unsigned 32 bit integer.  Shifting by that much probably overflows the value.

QuoteMy question is: can those date's be changed to 64 bit uints or does the "Year: 0" field makes the point?
Any idea to correct? Thank you very much in advance.

The spec requires that it's saved as a 32 bit uint.  You can't change that.

None of my vids have the Year tag and don't have that problem so that's not it.

Try something simple like copying the tag back onto the tag to see if that fixes it.  For example
exiftool '-CreateDate<CreateDate' '-ModifyDate<ModifyDate' video-2011-10-16-13-29-34.mp4
* Did you read FAQ #3 and use the command listed there?
* Please use the Code button for exiftool code/output.
 
* Please include your OS, Exiftool version, and type of file you're processing (MP4, JPG, etc).

ferenc009

Thank you both the quick answers!
StarGeek's approach didn't work for me but wywh's answer worked for me:

Quote from: wywh on July 08, 2020, 01:06:39 PM
If all your videos use a (correct?) date as a filename like in your examples (video-YYYY-MM-DD-hh-mm-ss.*) then you could try the following command which I recently used to fix the dates in my movies (I use YYYY-MMDD-hhmm-ss.* but exiftool seems to accept also your date format just fine). Now my imported movies and images sort correctly in Catalina's Photos.app 5.0 (if also images' EXIF dates are correct).

exiftool -api QuickTimeUTC=1 '-CreateDate<filename' '-ModifyDate<filename' '-Track*Date<filename' '-Media*Date<filename' -execute '-FileCreateDate<filename' '-FileModifyDate<filename' -execute '-Keys:CreationDate<FileModifyDate' '-UserData:DateTimeOriginal<FileModifyDate' -common_args -m -P -overwrite_original_in_place -wm w movies.*

issam9973

Hi all,

Wanted to share my recent experience with this issue and how i solved it. Source Phone was a Google Nexus S. This thread helped, thanks all :)

Quick Answer: This worked great: -'QuickTime:CreateDate<QuickTime:CreateDate'

The QuickTime date tags on some files fit my current system time zone (-04), but others have a different time zone (-05). Solution to this was different and not optimal, detailed below.

Detail:

I want to have my library file name reflect the local time of the media file. The file below reflects a video taken at 6h40pm (it's day time in the video!) while it is being recognized as 10h40pm (maybe from previous scripts i run on the file). My main custom DateTime tag is called "MyDateTime" (in .ExifTool_config) is not able to recognize the date when using -api QuickTimeUTC

exiftool -*Date* -s -G -api QuickTimeUTC ./


======== ./20130509_224049_000000.MP4
[File]          FileModifyDate                  : 2013:05:09 22:40:49-04:00
[File]          FileAccessDate                  : 2013:05:09 22:40:49-04:00
[File]          FileInodeChangeDate             : 2021:10:25 19:23:59-04:00
[QuickTime]     CreateDate                      : 1947:05:09 18:40:49-04:00
[QuickTime]     ModifyDate                      : 1947:05:09 18:40:49-04:00
[QuickTime]     TrackCreateDate                 : 1947:05:09 18:40:49-04:00
[QuickTime]     TrackModifyDate                 : 1947:05:09 18:40:49-04:00
[QuickTime]     MediaCreateDate                 : 1947:05:09 18:40:49-04:00
[QuickTime]     MediaModifyDate                 : 1947:05:09 18:40:49-04:00
[Composite]     MyDateTime                      :
[Composite]     MyDateTimeFromFileName          : 2013:05:09 22:40:49
[Composite]     MyFileNameDateTimeSubsecFull    : 20130509_224049_000000.MP4


Output when not using -api QuickTimeUTC:

exiftool -*Date* -s -G ./


======== ./20130509_224049_000000.MP4
[File]          FileModifyDate                  : 2013:05:09 22:40:49-04:00
[File]          FileAccessDate                  : 2013:05:09 22:40:49-04:00
[File]          FileInodeChangeDate             : 2021:10:25 19:23:59-04:00
[QuickTime]     CreateDate                      : 2013:05:09 22:40:49
[QuickTime]     ModifyDate                      : 2013:05:09 22:40:49
[QuickTime]     TrackCreateDate                 : 2013:05:09 22:40:49
[QuickTime]     TrackModifyDate                 : 2013:05:09 22:40:49
[QuickTime]     MediaCreateDate                 : 2013:05:09 22:40:49
[QuickTime]     MediaModifyDate                 : 2013:05:09 22:40:49
[Composite]     MyDateTime                      : 2013:05:09 22:40:49
[Composite]     MyFileNameDateTimeSubsecFull    : 20130509_224049_000000.MP4



Running this command solved it:


exiftool  \
-'QuickTime:CreateDate<QuickTime:CreateDate' \
-'QuickTime:ModifyDate<QuickTime:ModifyDate' \
-'QuickTime:TrackCreateDate<QuickTime:TrackCreateDate' \
-'QuickTime:TrackModifyDate<QuickTime:TrackModifyDate' \
-'QuickTime:MediaCreateDate<QuickTime:MediaCreateDate' \
-'QuickTime:MediaModifyDate<QuickTime:MediaModifyDate' \
-overwrite_original \
-r -P \
./



Warning: [minor] Patched incorrect time zero for QuickTime date/time tag - ./20130509_224049_000000.MP4


After that it seems fixed:

exiftool -*Date* -s -G -api QuickTimeUTC ./


======== ./20130509_224049_0000.MP4
[File]          FileModifyDate                  : 2013:05:09 22:40:49-04:00
[File]          FileAccessDate                  : 2013:05:09 22:40:49-04:00
[File]          FileInodeChangeDate             : 2021:10:25 19:47:23-04:00
[QuickTime]     CreateDate                      : 2013:05:09 18:40:49-04:00
[QuickTime]     ModifyDate                      : 2013:05:09 18:40:49-04:00
[QuickTime]     TrackCreateDate                 : 2013:05:09 18:40:49-04:00
[QuickTime]     TrackModifyDate                 : 2013:05:09 18:40:49-04:00
[QuickTime]     MediaCreateDate                 : 2013:05:09 18:40:49-04:00
[QuickTime]     MediaModifyDate                 : 2013:05:09 18:40:49-04:00
[Composite]     MyDateTime                      : 2013:05:09 18:40:49
[Composite]     MyDateTimeFromFileName          : 2013:05:09 22:40:49
[Composite]     MyFileNameDateTimeSubsecFull    : 20130509_184049_000000.MP4


Only remained to update FileModifyDate to complete cleanup. Note that using -api QuickTimeUTC was necessary.


exiftool  -'FileModifyDate<QuickTime:CreateDate' -overwrite_original -api QuickTimeUTC ./
exiftool -*Date* -s -G ./



======== ./20130509_224049_000000.MP4
[File]          FileModifyDate                  : 2013:05:09 18:40:49-04:00
[File]          FileAccessDate                  : 2013:05:09 18:40:49-04:00
[File]          FileInodeChangeDate             : 2021:10:25 19:57:01-04:00
[QuickTime]     CreateDate                      : 2013:05:09 18:40:49-04:00
[QuickTime]     ModifyDate                      : 2013:05:09 18:40:49-04:00
[QuickTime]     TrackCreateDate                 : 2013:05:09 18:40:49-04:00
[QuickTime]     TrackModifyDate                 : 2013:05:09 18:40:49-04:00
[QuickTime]     MediaCreateDate                 : 2013:05:09 18:40:49-04:00
[QuickTime]     MediaModifyDate                 : 2013:05:09 18:40:49-04:00
[Composite]     MyDateTime                      : 2013:05:09 18:40:49
[Composite]     MyDateTimeFromFileName          : 2013:05:09 22:40:49
[Composite]     MyFileNameDateTimeSubsecFull    : 20130509_184049_000000.MP4


Files with different QuickTime time zone

exiftool -*Date* -s -G -api QuickTimeUTC  ./


======== ./20130425_022243_000000.MP4
[File]          FileModifyDate                  : 2013:04:25 02:22:43-04:00
[File]          FileAccessDate                  : 2021:10:26 14:04:36-04:00
[File]          FileInodeChangeDate             : 2021:10:26 14:04:52-04:00
[QuickTime]     CreateDate                      : 1947:04:24 21:22:43-05:00
[QuickTime]     ModifyDate                      : 1947:04:24 21:22:43-05:00
[QuickTime]     TrackCreateDate                 : 1947:04:24 21:22:43-05:00
[QuickTime]     TrackModifyDate                 : 1947:04:24 21:22:43-05:00
[QuickTime]     MediaCreateDate                 : 1947:04:24 21:22:43-05:00
[QuickTime]     MediaModifyDate                 : 1947:04:24 21:22:43-05:00
[Composite]     MyDateTime                      :
[Composite]     MyDateTimeFromFileName          : 2013:04:25 02:22:43
[Composite]     MyFileNameDateTimeSubsecFull    : 20130425_022243_000000.MP4


assigning quicktime date tags to themselves seems to solve it, however changes quicktime timezone to system time zone.
-'QuickTime:CreateDate<QuickTime:CreateDate'


Warning: [minor] Patched incorrect time zero for QuickTime date/time tag - ./20130425_022243_0000_AIB_ISSAM_720X480_ISSAM_AIB.MP4



[QuickTime]     CreateDate                      : 2013:04:24 22:22:43-04:00
...


What i did was to change the system time zone to -05 (Central Time):


[File]          FileModifyDate                  : 2013:04:25 01:22:43-05:00
...
[QuickTime]     CreateDate                      : 2013:04:24 21:22:43-05:00
...


Then assign


exiftool  -'FileModifyDate<QuickTime:CreateDate' -overwrite_original -api QuickTimeUTC ./
exiftool -*Date* -s -G ./


This corrects the dates the way i want them to appear:

exiftool -*Date* -s -G -api QuickTimeUTC  ./
======== ./20130425_022243_000000.MP4
[File]          FileModifyDate                  : 2013:04:24 21:22:43-05:00
...
[QuickTime]     CreateDate                      : 2013:04:24 21:22:43-05:00
...
[Composite]     MyDateTime                      : 2013:04:24 21:22:43
[Composite]     MyFileNameDateTimeSubsecFull    : 20130424_212243_000000.MP4


However, after i switched the time zone back to the current one (-04), the local time is one hour off.

I had to manually shift the time by one hour: not sure if there is a cleaner solution as this one corrects the local time but corrupts the UTC information!


-'QuickTime:CreateDate-="1:0:0"' \
-'QuickTime:ModifyDate-="1:0:0"' \
-'QuickTime:TrackCreateDate-="1:0:0"' \
-'QuickTime:TrackModifyDate-="1:0:0"' \
-'QuickTime:MediaCreateDate-="1:0:0"' \
-'QuickTime:MediaModifyDate-="1:0:0"' \



======== ./20130425_022243_000000.MP4
[File]          FileModifyDate                  : 2013:04:24 21:22:43-04:00
[File]          FileAccessDate                  : 2013:04:24 21:22:43-04:00
[File]          FileInodeChangeDate             : 2021:10:26 18:26:45-04:00
[QuickTime]     CreateDate                      : 2013:04:25 01:22:43
[QuickTime]     ModifyDate                      : 2013:04:25 01:22:43
[QuickTime]     TrackCreateDate                 : 2013:04:25 01:22:43
[QuickTime]     TrackModifyDate                 : 2013:04:25 01:22:43
[QuickTime]     MediaCreateDate                 : 2013:04:25 01:22:43
[QuickTime]     MediaModifyDate                 : 2013:04:25 01:22:43
[Composite]     MyDateTime                      : 2013:04:25 01:22:43
[Composite]     MyFileNameDateTimeSubsecFull    : 20130424_212243_000000.MP4

- Issam