ffmpeg:输入元数据映射文件语法

时间:2018-04-19 16:06:45

标签: docker ffmpeg metadata

我尝试将ffmpeg用于许多元数据参数,并且我想知道是否有任何方法使用文件传递元数据,从而最大限度地减少cli命令长度。

我在ffmpeg帮助和文档中看到有一个选项:

-map_metadata outfile[,metadata]:infile[,metadata]  set metadata information of outfile from infile

尽管如此,我还没有找到如何使用它,我找不到任何例子。

  

换句话说,我正在寻找一些可以提供给我的语法   跟随我的ffmpeg执行的变化:

来自此

ffmpeg -i input -metadata metadata1='asdf1' -metadata metadata2='asdf2' ... -metadata metadataN='asdfNN' [output]

到此

ffmpeg -i input -map_metadata filemetadata.txt [output]

文件filemetadata.txt

metadata1='asdf1'
metadata2='asdf2'
...
metadataN='asdfN'
  

我需要最小化命令行长度的原因是if   您在Docker容器中启动 FFmpeg ,ENTRYPOINT / CMD /命令   (在撰写中)对参数数量/字符串长度有限制。   我需要传递许多参数,并且我想避免创建bash   例如,使用FFmpeg调用文件,复制它并使用docker执行   EXEC键。

有任何线索吗?

1 个答案:

答案 0 :(得分:1)

检查此Stackoverflow链接以获取问题的答案:

How to add chapters into mp4/mkv file using ffmpeg?

简而言之:

ffmpeg -i "input.mp4" -i meta -map_metadata 1

文件“ meta”具有标签,并且首行为“; FFMETADATA1”。

例如:

;FFMETADATA1
major_brand=M4A
minor_version=512
compatible_brands=isomiso2
artist=Herman Melville
album=Moby Dick