ffmpeg:我如何堆叠 2 个视频并在视频区域外显示水印

ffmpeg: how can i hstack 2 videos and display a watermark outside the video area

我刚开始使用 ffmpeg,我想使用 hstack 合并两个 1920x1080 视频。输出视频也需要为 1920x1080。同时我想在屏幕底部(视频区域外)和屏幕顶部中间显示一个水印。

到目前为止,我设法制作了一个带填充的 hstack,但水印不会显示在视频区域之外。

这是我的第一次尝试:

ffmpeg -y -i input1.mp4 -i input2.mp4 -i watermark1.png -filter_complex "[0]pad=iw+5:color=black[left];[left][1]hstack=inputs=2","overlay=x=(main_w-overlay_w)*0.95:y=(main_h-overlay_h)*0.95","scale=w=1920:h=1080" Output.mp4

这是我得到的和我想要的比较:

wrong output desired output

如能就我的问题提供任何帮助,我们将不胜感激!

所需的基本操作顺序是

1) 缩小每个视频[,根据需要添加填充]

2) hstack 它们

3) 填充输出

4) 叠加徽标

(或者,在第 1 步中,填充足以摆脱第 3 步。)

ffmpeg -y -i input1.mp4 -i input2.mp4 -i watermark1.png -filter_complex "[0]scale=iw/2:-1[left];[1]scale=iw/2:-1[right];[left][right]hstack=inputs=2,pad=1920:1080:-1:-1,overlay=x=(main_w-overlay_w)*0.95:y=(main_h-overlay_h)*0.95" Output.mp4