ffmpeg一步裁剪和水印

ffmpeg一步裁剪和水印,ffmpeg,Ffmpeg,我们正在处理短视频。大多数是640x480,由手机录制。它们中的许多在左右两侧都有一个黑色的框架。 我想给视频加上水印,目前正在使用此命令 ffmpeg -i IN.mp4 -i WATERMARK.png -filter_complex "overlay=main_w-overlay_w-10:main_h-overlay_h-10" OUT.mp4 问题是,如果有一个帧,部分水印会出现在帧上,而只有一部分出现在实际内容上。要将水印放置在实际内容的右下角 这些都是可能的,还是其他的想法 a、

我们正在处理短视频。大多数是640x480,由手机录制。它们中的许多在左右两侧都有一个黑色的框架。 我想给视频加上水印,目前正在使用此命令

ffmpeg -i IN.mp4 -i WATERMARK.png -filter_complex "overlay=main_w-overlay_w-10:main_h-overlay_h-10" OUT.mp4
问题是,如果有一个帧,部分水印会出现在帧上,而只有一部分出现在实际内容上。要将水印放置在实际内容的右下角

这些都是可能的,还是其他的想法

a、 动态检测黑色帧并相应调整水印位置

b、 在同一步骤中裁剪黑色框架并正确地为内容添加水印

非常感谢你的帮助

编辑:

我发现这不可能一步到位

1,我可以得到作物的大小

ffmpeg -i INPUT.mp4 -t 2 -vf cropdetect -f null - 2>&1 | awk '/crop/ { print $NF }' | tail -1
2,然后裁剪视频

ffmpeg -i INPUT.mp4 -filter:v "crop=352:480:144:0" -c:a copy OUTPUT.mp4
3,然后添加水印

ffmpeg -i INPUT VIDEO.mp4 -i INPUT IMAGE.png -filter_complex "overlay=main_w-overlay_w-10:main_h-overlay_h-10" OUTPUT VIDEO.mp4
有没有办法将2和3合并为一个步骤

有没有办法将2和3合并为一个步骤

您可以使用分号连接各个过滤器链:

ffmpeg -i video.mp4 -i image.png -filter_complex "[0]crop=352:480:144:0[bg];[bg][1]overlay=main_w-overlay_w-10:main_h-overlay_h-10[v]" -map "[v]" -map 0:a -c:a copy output.mp4
有关更多信息,请参阅