为 YouTube 创建包含多个音频和一个静止图像的视频

为 YouTube 创建包含多个音频和一个静止图像的视频

我想创建多个具有多个音频流和一张图片的视频。

例如我有

  • song1.mp3
  • song2.mp3
  • song3.mp3

和一张图片。我需要做的是创建多个视频,并将这些视频命名为:song1.mp4,,song2.mp4song3.mp4

我想一次创建多个视频。我的脚本只适用于一张图片和一个 mp3,但我需要创建大量视频。

ffmpeg -loop 1 -shortest -r 0.1 -i online.mp3 -i imagen.png -ab 128k output.avi

你能帮助我吗?

答案1

首先,你需要稍微重新排列一下 ffmpeg 选项。 应该-loop 1放在输入图像之前, 最好-r 0.1作为输出选项图像。查看更多FFmpeg wiki 关于如何通过图像创建幻灯片

然后,确保您运行的是最新版本的 ffmpeg。点击此处下载不要使用您安装的那个apt-get——它已经非常过时了。

此外,您希望分别使用 H.264 和 AAC 作为视频和音频编解码器,并使用 MP4 作为容器,而不是使用当前命令获得的 AVI 中的 MPEG-4 和 MP3 组合。

循环遍历所有 MP3 文件,删除扩展名,然后运行 ​​ffmpeg 脚本:

for f in *.mp3; do
    # create output filename songX.mp4
    name="${f%%.mp3}.mp4"
    # run ffmpeg command
    ffmpeg -loop 1 -i imagen.png -i "$f" \
      -r 0.1 -shortest \
      -c:v libx264 -pix_fmt yuv420p -c:a aac -strict experimental \
      -crf 18 -b:a 128k "$name"
done

我还添加了以下内容:

  • CRF(恒定速率因子)设置视频质量(使用 18 到 28 之间的值,越低越好)
  • 显式转换为4:2:0 子采样– 否则,如果您使用 PNG 作为输入,您将得到 4:4:4,并且无法在所有播放器中播放

相关内容