ffmpeg:仅通过元数据选择音频流

ffmpeg:仅通过元数据选择音频流

我有一个 MP4 文件,其中包含两个带有语言标签ger和的音频流fre。它包含的唯一视频流被标记为eng

ffmpeg 文档引用:

To pick the English audio stream:

ffmpeg -i INPUT -map 0:m:language:eng OUTPUT

在我的情况下,这不起作用。它将输出唯一带有标签的流eng(即视频流)。这与以下内容一致:https://ffmpeg.org/ffmpeg.html#Stream-specifiers-1

但是,是否有一个选项可以同时指定

  • 流类型(va, ...)
  • 提供元数据标签(例如language:eng

对于相同的-map参数?

答案1

无法直接实现。此解析器不考虑第二个限定符。解决方法是使用管道

ffmpeg -i IN -map 0:a -c copy -f nut - | ffmpeg -i - -c copy -map 0:m:language:eng OUT

相关内容