【问题标题】:FFmpeg PNG overlayed on background image to videoFFmpeg PNG覆盖在背景图像上的视频
【发布时间】:2020-03-24 01:18:54
【问题描述】:

我正在尝试将图像叠加在背景图像上,并从中制作一段特定持续时间的视频。

我在某个 2011 年的旧线程上发现了一些东西,但 FFmpeg 似乎没有找到“-loop_input”,所以我猜这是一个过时的命令。

ffmpeg -loop_input -f image2 -i background.png -r 25 -vframes 250 -an -vcodec png test.mov

如何在当前的 ffmpeg 版本中进行这项工作?

【问题讨论】:

  • “仅关于以编程方式使用 FFmpeg 库、API 或工具的问题是主题。有关命令行工具的交互使用的问题应在超级用户或视频制作中提出”——这些问题与Stack Overflow 无关,应该在其他地方询问
  • @talonmies 这怎么不是程序化的?我显然是在问一个功能,而不是“命令行工具的交互式使用”

标签: ffmpeg png overlay


【解决方案1】:

image demuxer 使用-loop 选项:

ffmpeg -loop 1 -i background.png -frames:v 250 -c:v png test.mov

但是因为您要从 PNG 转到 PNG,所以您可以 stream copy 它:

ffmpeg -loop 1 -i background.png -frames:v 250 -c:v copy test2.mov
  • 默认帧率为 25,所以我删除了-r 25。如果您想使用图像输入设置帧速率,请使用图像分离器-framerate 输入选项,例如ffmpeg -loop 1 -framerate 24 -i background.png ...

  • 您的输入没有音频,所以我删除了-an

  • -f image2 不需要:它会自动确定合适的解复用器。

【讨论】: