python - Ffmpeg:缩放+裁剪视频然后叠加图像?

标签 python ffmpeg

这是我的第一个 SO 问题。帮帮我 帮帮我:这个问题需要澄清吗?

目标:制作带有音频和 Logo 覆盖的 Instagram 就绪视频的脚本。该脚本接收音频和视频源并将它们组合起来。重要提示:每个视频的 Logo 应具有一致的位置和大小。这可能意味着所有输出视频应具有相同的宽度 x 高度。

欢迎任何替代方法!

我从 python 调用的 ffmpeg 命令如下。我尝试将视频缩放到 720:-2(自动高度),然后从中心裁剪一个 500x500 的正方形。 720 和 500 的选择是任意的;欢迎更好的方法。

ffmpeg -i video.mp4 -i logo.png -i audio.mp3 -filter_complex "[0:v]scale=720:-2,crop=500:500[bg];[bg][1:v] overlay=(W-w)/2:(H-h)/2" -pix_fmt yuv420p -map 0:v -map 2:a -shortest + output.mp4

此脚本在某些视频上出错。
[Parsed_crop_1 @ 0x7fcf96401f00] Invalid too big or non positive size for width '500' or height '500'
[Parsed_crop_1 @ 0x7fcf96401f00] Failed to configure input pad on Parsed_crop_1

我是 ffmpeg 的新手,所以请指导我正确使用 filter_complex。谢谢!

最佳答案

利用
ffmpeg -i video.mp4 -i logo.png -i audio.mp3 -filter_complex "[0:v]scale=720:-2,crop=min(500\,min(iw\,ih)):min(500\,min(iw\,ih))[bg];[bg][1:v] overlay=(W-w)/2:(H-h)/2" -pix_fmt yuv420p -map 2:a -shortest output.mp4
新的裁剪参数将确保裁剪不会尝试选择大于框架的尺寸。

比例和裁剪值的选择取决于用例,并且必须由您决定。

关于python - Ffmpeg:缩放+裁剪视频然后叠加图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56918578/

相关文章:

python - 不可变类型与可变类型

python - 在python中通过windows cmd用记事本打开服务器上的文件

python - 元组列表中的列表列表,重新排序

ffmpeg - 用 libmp3lame 重新编译 ffmpeg

c - 检测图像中的十字

linux - 如何使用 ffmpeg(批处理)将新音频(不是混合)添加到视频中?

java - 如何将库导入到android项目中?

python - 如何向列表中的每个项目添加文本

python - numpy:创建具有条目 c_i * C_{ij} 的矩阵的快速方法

ffmpeg - 使用 FFMPEG 显示视频内视觉进度条?