如何使用 ffmpeg 从 mp4 中提取音频并将其添加到另一个

如何使用 ffmpeg 从 mp4 中提取音频并将其添加到另一个

我使用 Final Cut Pro X (10.1.4) 制作了一个视频,并使用画外音功能添加了评论。我惊讶地发现 FCPX 不支持输出具有多个音轨的文件。

我禁用了评论音轨并以 1080p 格式保存了项目,仅保留了常规音频 (main.m4v)。

然后我重新启用评论并调整常规音频,并导出仅带有评论曲目的 720p 版本(commentary.m4v)。

如何使用 ffmpeg 创建 final.m4v,它将是 main.m4v,但以 commentary.m4v 中的音轨作为辅助音轨?

答案1

使用映射选项

ffmpeg -i main.m4v -i commentary.m4v -c copy -map 0:v -map 0:a -map 1:a final.m4v

使用 时-map,选项中的第一个数字指的是输入文件的索引(即0第一个)。因此,选项的含义是:

  • 复制所有比特流而不是重新编码
  • 获取第一个输入的(第一个)视频流
  • 获取第一个输入的(第一个)音频流
  • 获取第二个输入的(第一个)音频流

然后所有具有map选项的流都会被复制。

您还可以明确引用编号的视频/音频流,例如0:a:1,引用第一个文件中的第二个音频流(如果有的话)。

答案2

如果不是特定于ffmpeg你可以使用这个例子

MKV合并或者MP4盒工具可以在现有视频上添加轨道。

相关内容