我有一些 MP4 视频没有媒体创建日期和时间,因为它们是用 Instagram 相机录制的。我想设置日期和时间,我发现可以使用 Exiftool 软件来做到这一点。我知道该软件通过键入命令行来工作,但我不知道应该在哪里键入什么。我在 Google 上搜索并没有找到任何有用的结果。
我下载了该软件并获得了“exiftool(-k).exe”文件。我现在应该怎么做?我不知道它是如何工作的。我希望有人可以编写简单的步骤来设置媒体创建日期。
首先,您可能需要将
exiftool(-k).exe
重命名为 exiftool.exe
并将其放置在您的 PATH 中的某个位置(请参阅安装 exiftool-Windows)。还有Oliver Betz 的 Windows 替代 Exiftool 版本,其中包含一个安装程序,并且安全性更加友好。请参阅 exiftool 论坛上的这篇文章。对于那些使用 Chocolatey 的人来说,Chocolatey exiftool 软件包 会将 exiftool 添加到 PATH,并且是一个维护良好的软件包
然后您将需要使用这些命令之一。就您的示例文件名而言,文件名似乎是根据拍摄时间命名的,即 YearMonthDay_HourMinutesSeconds。在这种情况下,您可以简单地使用此命令(请参阅exiftool FAQ #5)
exiftool -api QuickTimeUTC "-CreateDate<Filename" 20181223_000542.mp4
只要视频是在与您当前使用的计算机相同的时区拍摄的,此功能就可以正常工作。如果没有,您将必须添加时区,如下所示:
exiftool -api QuickTimeUTC "-CreateDate<${Filename}-04:00" 20181223_000542.mp4
这是因为 MP4 文件的
CreateDate
标签应该是 UTC,Windows 属性将这样读取它。 Mac Finder 也将根据 UTC 进行正确调整。使用 -api QuickTimeUTC
选项,exiftool 将自动将时间调整为 UTC。
如果您需要将时间设置为与文件名不同的时间,那么您可以使用它,并根据需要添加时区:
exiftool "-CreateDate=2018:12:23 00:05:42" 20181223_000542.mp4
-overwrite_original
选项以禁止创建备份文件。如果在 Mac 上,较慢的 -overwrite_original_in_place
选项 可用于保留任何 MDItem/XAttr 数据 添加 -r
(-recurse
) 选项 以递归到子目录。如果此命令在 Unix/Mac/Powershell 下运行,请反转任何双/单引号以避免 shell 变量解释。
您可以在命令行上处理尽可能多的文件和/或目录,因此如果您想处理
c:\Dir1
和 C:\Dir2
中的所有文件,您只需将它们都列出在命令行的末尾即可命令c:\Dir1 C:\Dir2
我找到了一个对我来说非常有效的解决方案。几年前我复制了很多旧磁带,并将它们命名为:“1992-12-25圣诞节.mp4”等等。
当我尝试将它们上传到 Google 照片时,它们都按照我录制的日期排序,所以是 2020 年左右。我发现一些程序声称可以帮助我解决问题,但它们都没有按预期工作(File Date Corrector 和 BulkFileChanger)。最后我使用 exiftool 找到了一个可行的解决方案。
1:下载exiftool(-k).exe并将文件重命名为exiftool.exe(去掉(-k))
2:将exiftool.exe文件放在C:\文件夹中(以便于运行)
3:以管理员身份运行cmd命令。在开始菜单中写入“cmd”,右键单击它,然后按以管理员身份运行。
4:确保您位于cmd中放置exiftool.exe文件的正确文件夹中(写入“cd C:”并按回车键)
5:编写以下语法来编辑 .mp4 文件: exiftool -api QuickTimeUTC "-CreateDate
这将从文件名中获取日期并将其应用到 Google 照片使用的“媒体创建”选项卡。请确保在尝试此操作之前备份文件,以防出现问题。希望这对你们所有人都有效:)