如何设置 MPEG-4 文件的“媒体创建”日期

2024-05-04

我有许多从各种数码相机格式转码的 MPEG-4 文件,其文件系统修改日期是正确的。我想设置“媒体创建”标签来匹配。这可以通过“属性”窗口的“详细信息”选项卡在 Windows 资源管理器中手动完成。设置“媒体创建”非常有用,因为 Windows Live 照片库会关闭该字段的“拍摄日期”属性。不幸的是,文件的数量使得手动设置所有日期变得不切实际。

有几种自动化途径具有潜力。TagLib# http://nuget.org/packages/taglib似乎支持所有 MP4 标签,但获取基本标签以外的 API 尚不清楚。另一个角度是Windows shell。据推测,Windows 资源管理器正在使用它来写入标签。有一个阅读示例 http://todd.ropog.com/2011/organize-media-files-with-powershell/通过 shell,但似乎没有用于编写的 API。


我已经取得了成功exiftool http://www.sno.phy.queensu.ca/~phil/exiftool/。以下是列出媒体文件中所有标签并更新所选标签的命令(也可以对文件进行批处理):

C:\>exiftool.exe -short -groupNames test.mp4

[ExifTool]      ExifToolVersion                 : 10.61
[File]          FileName                        : test.mp4
[File]          Directory                       : .
[File]          FileSize                        : 91 MB
[File]          FileModifyDate                  : 2018:06:30 19:25:34+05:00
[File]          FileAccessDate                  : 2018:07:15 14:12:50+05:00
[File]          FileCreateDate                  : 2018:07:15 14:12:50+05:00
[File]          FilePermissions                 : rw-rw-rw-
[File]          FileType                        : MP4
[File]          FileTypeExtension               : mp4
[File]          MIMEType                        : video/mp4
[QuickTime]     MajorBrand                      : MP4 v2 [ISO 14496-14]
[QuickTime]     MinorVersion                    : 0.0.0
[QuickTime]     CompatibleBrands                : isom, mp42
[QuickTime]     MovieDataSize                   : 95484206
[QuickTime]     MovieDataOffset                 : 32
[QuickTime]     MovieHeaderVersion              : 0
[QuickTime]     CreateDate                      : 2018:06:30 14:25:34
[QuickTime]     ModifyDate                      : 2018:06:30 14:25:34
[QuickTime]     TimeScale                       : 1000
[QuickTime]     Duration                        : 0:01:02
-- snip --
[QuickTime]     TrackCreateDate                 : 2018:06:30 14:25:34
[QuickTime]     TrackModifyDate                 : 2018:06:30 14:25:34
-- snip --
[QuickTime]     MediaCreateDate                 : 2018:06:30 14:25:34
[QuickTime]     MediaModifyDate                 : 2018:06:30 14:25:34
-- snip --

C:\>exiftool.exe ^
-QuickTime:CreateDate="2018:07:15 13:15:00" ^
-QuickTime:ModifyDate="2018:07:15 13:15:00" ^
-QuickTime:TrackCreateDate="2018:07:15 13:15:00" ^
-QuickTime:TrackModifyDate="2018:07:15 13:15:00" ^
-QuickTime:MediaCreateDate="2018:07:15 13:15:00" ^
-QuickTime:MediaModifyDate="2018:07:15 13:15:00" ^
test.mp4


C:\>exiftool.exe -short -groupNames test.mp4

-- snip --
[File]          FileModifyDate                  : 2018:07:15 14:19:52+05:00
[File]          FileAccessDate                  : 2018:07:15 14:19:51+05:00
[File]          FileCreateDate                  : 2018:07:15 14:19:39+05:00
-- snip --
[QuickTime]     CreateDate                      : 2018:07:15 13:15:00
[QuickTime]     ModifyDate                      : 2018:07:15 13:15:00
-- snip --
[QuickTime]     TrackCreateDate                 : 2018:07:15 13:15:00
[QuickTime]     TrackModifyDate                 : 2018:07:15 13:15:00
-- snip --
[QuickTime]     MediaCreateDate                 : 2018:07:15 13:15:00
[QuickTime]     MediaModifyDate                 : 2018:07:15 13:15:00
-- snip --
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何设置 MPEG-4 文件的“媒体创建”日期 的相关文章