我已经成功地从一系列静态png创建了动画。我还想添加水印,但在尝试添加水印源时遇到了一些问题。
使用它可以生成动画:
ffmpeg -v warning -framerate 4 -i /tmp/img-%d.png -i /tmp/img-palette.png -lavfi "paletteuse" -y -loop 0 -vcodec libx264 -crf 25 -pix_fmt yuv420p -hide_banner /tmp/output.mp4
当我添加以下内容以指定水印源(透明png)时,会生成错误:
-i /tmp/logo.png -filter_complex "overlay=x=(main_w-100):(main_h-50)"
完整命令:
ffmpeg -v warning -framerate 4 -i /tmp/logo.png -filter_complex "overlay=x=(main_w-100):(main_h-50)" -i /tmp/img-%d.png -i /tmp/img-palette.png -lavfi "paletteuse" -y -loop 0 -vcodec libx264 -crf 25 -pix_fmt yuv420p -hide_banner /tmp/output.mp4
错误:
video:1kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
我是否需要先生成动画,然后将水印应用于该工件,还是有办法在创建过程中将所有内容组合在一起?
答案 0 :(得分:0)
使用
ffmpeg -v warning -framerate 4 -i /tmp/img-%d.png -i /tmp/img-palette.png -i /tmp/logo.png -filter_complex "[0][2]overlay=x=(main_w-100):(main_h-50)[v];[v][1]paletteuse" -y -vcodec libx264 -crf 25 -pix_fmt yuv420p -hide_banner /tmp/output.mp4
预先指定所有输入。您只能指定一个filter_complex。 -lavfi
是filter_complex
的别名。