转换多个文件FFmpeg的多个音轨

时间:2018-09-06 22:01:27

标签: ffmpeg sh

我正在使用脚本转换文件夹中的所有视频文件。这些文件具有多个音轨,我希望转换后的文件也具有每个音轨。我已经尝试过-c copy-c:a mp3,但都没有为我工作。有什么想法可以修改以复制所有音轨吗?

#!/bin/sh

for i in *.mkv; do ffmpeg -i "$i" -c:a mp3 -vcodec libx264 -crf 18 -r 60 "${i%.mkv}.mp4"; done

1 个答案:

答案 0 :(得分:0)

您可以通过设置-c:a copy来实现。在您的示例中,您尝试将音频编解码器设置为mp3,实际上它只是容器。希望有帮助!


我应该对此进行修改...我的第一个想法只是从输入文件中复制单个最高质量的音频流。要复制所有流,我们将要使用map选项1。您的示例复制所有音频流如下所示:

#!/bin/sh

for i in *.mkv; do
    ffmpeg -i "$i" -map 0 -c copy -c:v libx264 -crf 18 -r 60 "${i%.mkv}.mp4"; 
done