组合多个音频文件和一张图片来制作视频

组合多个音频文件和一张图片来制作视频

我读了此主题另一个。他们都很好地解释了如何将图片和音频文件合并制作视频(使用 ffmpeg)。

不过,我正在寻找一个可以合并的 ffmpeg 命令一个列表mp3 文件和一张图片来制作一个视频文件。我想在 mp3 音频列表的持续时间内显示图像。

有人可以建议一个可行的命令并解释它吗?

答案1

如果我理解正确的话,您希望合并所有 MP3 并将视频合并为一张图片。如果是这样,

准备一个文本文件,其中包含按您想要的顺序排列的 MP3 列表

file 'ABC.mp3'
file 'PQR.mp3'
file 'DEF.mp3'
...
file 'XYZ.mp3' 

现在,运行

ffmpeg -loop 1 -framerate 5 -i image.png -f concat -i mp3list.txt -c:v libx264 -pix_fmt yuv420p -c:a copy -shortest output.mkv

答案2

您可以使用 Bash for 循环:

mkdir outputdir
for f in *.mp3; do ffmpeg -i "$f" -framerate 5 -loop 1 -i image.jpg -c:v libx264 -c:a copy -pix_fmt yuv420p -shortest outputdir/"${f%.*}.mkv"; done

我假设您使用的是 Linux。您也可以在 Windows 中执行此操作,但我不是 Windows 用户,所以其他人必须添加该示例。

更新:我的示例将为每个 MP3 输入制作一个视频;所有视频都使用相同的图像。如果我误解了您的问题,请参阅 Mulvya 的回答,了解如何从所有 MP3 输入制作一个视频。

相关内容