Sun*_*nil 12 ffmpeg timestamps
我想将 mp4 文件的文件创建日期复制到文件的元数据中。我很确定这可以通过 ffmpeg 和一些漂亮的 Linux 命令来完成。
您可以通过-metadata参数使用 ffmpeg 设置元数据。
MP4根据this支持年份属性,但我只让它与VLC中显示的“日期”字段一起使用(如果它只有一年)以及mplayer和winamp中显示的完整日期没有问题。
我date通过 VLC 设置年份并使用 ffmpeg 转储元数据找到了该属性
要将日期设置为上次修改的时间(如完整日期,请2014-11-13使用以下内容:
ffmpeg -i inputfile.mp4 -metadata date="$(stat --printf='%y' inputfile.mp4 | cut -d ' ' -f1)" -codec copy outputfile.mp4
Run Code Online (Sandbox Code Playgroud)
最后修改的检测显然可以做得更好,而且我不确定日期元数据的使用范围如何,但它在我的测试用例中有效。
小智 7
使用 exiftool 的部分答案。
exiftool -tagsFromFile inputfile.mov -MediaCreateDate outputfile.mp4
Run Code Online (Sandbox Code Playgroud)
这可以在 ffmpeg 转换后完成。
这不依赖于文件修改时间,而是依赖于创建视频的时间,这可能与文件创建时间不同。
根据创建视频元数据的设备可以是 DateTimeOriginal、MediaCreateDate、ContentCreateDate 和其他可能的。检查
exiftool -s -time:all inputfile.mov
Run Code Online (Sandbox Code Playgroud)