我是 ffmpeg 的新手,正在尝试一些命令。我有一个包含多个输入和过滤器的命令,例如:
ffmpeg -y -f lavfi -i "color=c=red:s=1920x1080:d=10"
-i background.jpg
-i video.mp4
-i overlay_image_1.png
-i overlay_image_2.png
-filter_complex
"[1:v]scale=1920:-1[bg-color];
[0:v][bg-color]overlay=0:0[bg];
[2:v]scale=1000:-1[video];
[bg][video]overlay=(W-w)/2:(H-h)/2[bg_with_video];
[3:v]scale=300:800[scaled_3];
[bg_with_video][scaled_3]overlay=150:200[f_4];[4:v]scale=300:800[scaled_4];
[f_4][scaled_4]overlay=1470:200[f_5]"
-map "[f_5]" -map 2:a output.mp4
因此,我在这里选择不同的背景图片以适应 1920x1080,如果底部有可用空间,则用红色填充。然后可以有不同分辨率的视频,因此我将其缩放到 1000 宽度和响应高度。之后,我在视频的左侧和右侧放置一些 png 图像。它们的 X 位置很明显,因为我知道完整的输出宽度和视频。但我还想在视频上方放置另一张图片,并可能将侧面图片与视频顶部对齐。
我想知道我是否可以访问我的 [video] 过滤器输出宽度和高度,以及一些其他数据(例如位置)。在 filter_complex 中可以吗?