使用ffmpeg创建MP4文件时如何写入exif标记

使用ffmpeg创建MP4文件时如何写入exif标记,ffmpeg,Ffmpeg,我看到很多关于如何将EXIF标签添加到MP4的问题,以及其他使用ffmpeg的媒体文件。我对此不感兴趣。我目前有一个exiftool命令,我正在事后运行,但这需要一些时间,因为它必须重写整个文件 我想做的是在我最初创建MP4文件时将标记添加到该文件中,这样我只需编写一次该文件 我在创建元数据时找到了,但它没有列出我要设置的任何元数据。在我尝试设置所有时间戳标记时,确保它们在适用时正确设置为UTC,就像某些曲目/媒体时间戳一样 更新:我看到这个问题已经吸引了一个否决票和一个即将结束的投票,因为有人

我看到很多关于如何将EXIF标签添加到MP4的问题,以及其他使用ffmpeg的媒体文件。我对此不感兴趣。我目前有一个exiftool命令,我正在事后运行,但这需要一些时间,因为它必须重写整个文件

我想做的是在我最初创建MP4文件时将标记添加到该文件中,这样我只需编写一次该文件

我在创建元数据时找到了,但它没有列出我要设置的任何元数据。在我尝试设置所有时间戳标记时,确保它们在适用时正确设置为UTC,就像某些曲目/媒体时间戳一样


更新:我看到这个问题已经吸引了一个否决票和一个即将结束的投票,因为有人声称它是离题的,因为它据称与编程无关。我在bash脚本中使用ffmpeg,它实现了一些自动化,所以我不确定为什么会有这种说法。当然还有其他类似的问题,只需看看带有ffmpeg标签的一些问题。

您在寻找这个吗

ffmpeg -y -i in.mp4 -metadata creation_time="2015-10-21 07:28:00" -map 0 -c copy out.mp4

使用-metadata creation\u time=$date+'%F%T'记录命令启动的时间。

我不太清楚您的意思,尝试设置所有时间戳标记,确保在适用时将其正确设置为UTC,就像某些曲目/媒体时间戳一样。@像DateTimeOriginal这样的llogan标记存储在本地时区中,而像TrackCreateDate这样的其他标记存储在UTC中。在exiftool中,有一个选项QuickTimeUTC,用于确保时区存储在每个标记的适当区域。这看起来不错,但我在链接文档页面中没有看到创建时间作为有效标记。我还有另外五个时间戳要设置,我会尝试在我通过exiftool知道的标记名部分之间加一个下划线,看看ffmpeg是否能识别它们。我是从ffmpeg邮件列表中得到的。你能确认它会更改exiftool中的以下键吗:创建日期、修改日期、文件修改日期/时间,文件访问日期/时间、文件索引节点更改日期/时间、曲目创建日期、曲目修改日期、媒体创建日期、媒体修改日期创建时间可以是本地时间或UTC时间。根据:时间是当地时间,除非附加Z,在这种情况下,它被解释为UTC。如果未指定年-月-日部分,则采用当前的年-月-日。我尝试了该部分,并以exiftool-s格式创建了时间集CreateDate、ModifyDate、TrackCreateDate、TrackModifyDate、MediaCreateDate和MediaModifyDate。但是,我尝试了一些方法,但无法确定如何设置DateTimeOriginal。此外,即使我在本地时间中指定了一次时间,所有时间字段都设置为UTC,即使ModifyDate和CreateDate应设置为本地时间。