Datetime FFMPEG不';t在MTS到MP4流程上使用正确的创建日期进行转换
我正在将MTS转换为MP4,视频/音频和创建日期保持不变 这是我的过程: 我有test.MTS,我将把它转换成test.MP4 拳头。。我的MTS:Datetime FFMPEG不';t在MTS到MP4流程上使用正确的创建日期进行转换,datetime,video,ffmpeg,utc,mts,Datetime,Video,Ffmpeg,Utc,Mts,我正在将MTS转换为MP4,视频/音频和创建日期保持不变 这是我的过程: 我有test.MTS,我将把它转换成test.MP4 拳头。。我的MTS: OSX:oo bob$ f="test.MTS OSX:oo bob$ DATE=$(exiftool -d "%Y-%m-%d %H:%M:%S" "$f" | grep "^Date.*Original" | awk '{print $4, $5;}') OSX
OSX:oo bob$ f="test.MTS
OSX:oo bob$ DATE=$(exiftool -d "%Y-%m-%d %H:%M:%S" "$f" | grep "^Date.*Original" | awk '{print $4, $5;}')
OSX:oo bob$ DATE2=$(exiftool -d "%Y-%m-%d %H:%M:%S%z" "$f" | grep "^Date.*Original" | awk '{print $4, $5;}')
OSX:oo bob$ echo $DATE
2018-10-26 20:53:27
OSX:oo bob$ echo $DATE2
2018-10-26 20:53:27+0000
我选择$DATE和$DATE2以获得UTC并尝试不同的选项
现在,让我们看看Exiftool和mediainfo对我的MTS的看法:
OSX:oo bob$ exiftool $f | grep "Date/Time"
File Modification Date/Time : 2018:10:26 21:56:55+02:00
File Access Date/Time : 2020:11:02 16:12:09+01:00
File Inode Change Date/Time : 2020:11:01 02:48:49+01:00
Date/Time Original : 2018:10:26 20:53:27+00:00
OSX:oo bob$ mediainfo $f | grep "date"
Recorded date : 2018-10-26 20:53:27+00:00
到这里。。所有有效日期均为2018-10-26 20:53:27+00:00(因此UTC或GMT+0)
现在,我的转换命令:
ffmpeg -i "$f" -y -acodec aac -ab 128k -vcodec copy -f mp4 -metadata creation_time="$DATE" "./${f%.MTS}.MP4"
ffmpeg -i "$f" -y -acodec aac -ab 128k -vcodec copy -f mp4 -metadata creation_time="$DATE2" "./${f%.MTS}_2.MP4"
我尝试了两个选项,$DATE(不带时区)和$DATE2(带时区)。转换正常,让我们看看结果:
OSX:oo bob$ exiftool "./${f%.MTS}.MP4" | grep "Date"
File Modification Date/Time : 2020:11:02 14:53:24+01:00
File Access Date/Time : 2020:11:02 16:13:48+01:00
File Inode Change Date/Time : 2020:11:02 14:53:24+01:00
Create Date : 2018:10:26 18:53:27
Modify Date : 2018:10:26 18:53:27
Track Create Date : 2018:10:26 18:53:27
Track Modify Date : 2018:10:26 18:53:27
Media Create Date : 2018:10:26 18:53:27
Media Modify Date : 2018:10:26 18:53:27
OSX:oo bob$ exiftool "./${f%.MTS}_2.MP4" | grep "Date"
File Modification Date/Time : 2020:11:02 14:53:13+01:00
File Access Date/Time : 2020:11:02 16:13:48+01:00
File Inode Change Date/Time : 2020:11:02 14:53:13+01:00
Create Date : 2018:10:26 20:53:27
Modify Date : 2018:10:26 20:53:27
Track Create Date : 2018:10:26 20:53:27
Track Modify Date : 2018:10:26 20:53:27
Media Create Date : 2018:10:26 20:53:27
Media Modify Date : 2018:10:26 20:53:27
OSX:oo bob$ mediainfo "./${f%.MTS}.MP4" | grep "date"
Recorded date : 2018-10-26 20:53:27+00:00
Encoded date : UTC 2018-10-26 18:53:27
Tagged date : UTC 2018-10-26 18:53:27
Encoded date : UTC 2018-10-26 18:53:27
Tagged date : UTC 2018-10-26 18:53:27
Encoded date : UTC 2018-10-26 18:53:27
Tagged date : UTC 2018-10-26 18:53:27
OSX:oo bob$ mediainfo "./${f%.MTS}_2.MP4" | grep "date"
Recorded date : 2018-10-26 20:53:27+00:00
Encoded date : UTC 2018-10-26 20:53:27
Tagged date : UTC 2018-10-26 20:53:27
Encoded date : UTC 2018-10-26 20:53:27
Tagged date : UTC 2018-10-26 20:53:27
Encoded date : UTC 2018-10-26 20:53:27
Tagged date : UTC 2018-10-26 20:53:27
到目前为止,“/${f%.MTS}_2.MP4”
(test_2.MP4)似乎是正确的,但是,如果我们检查历元中的值:
OSX:oo bob$ exiftool -d "%s" $f | grep "Date/Time"
File Modification Date/Time : 1540583815
File Access Date/Time : 1604329945
File Inode Change Date/Time : 1604195329
Date/Time Original : 1540587207
OSX:oo bob$ exiftool -d "%s" "./${f%.MTS}.MP4" | grep "Date"
File Modification Date/Time : 1604325204
File Access Date/Time : 1604330053
File Inode Change Date/Time : 1604325204
Create Date : 1540572807
Modify Date : 1540572807
Track Create Date : 1540572807
Track Modify Date : 1540572807
Media Create Date : 1540572807
Media Modify Date : 1540572807
OSX:oo bob$ exiftool -d "%s" "./${f%.MTS}_2.MP4" | grep "Date"
File Modification Date/Time : 1604325193
File Access Date/Time : 1604330058
File Inode Change Date/Time : 1604325193
Create Date : 1540580007
Modify Date : 1540580007
Track Create Date : 1540580007
Track Modify Date : 1540580007
Media Create Date : 1540580007
Media Modify Date : 1540580007
顺便说一句,我现在在GMT+1(这是我的本地时区)
如你所见: