LMLPHP后院

ffmepg delogo 的一些方法技术

maybe yes 发表于 2022-03-19 16:18

使用 ffmpeg 去除水印的步骤方法

首先,先截取一小段:

ffmpeg -ss 1:01 -i x.mp4 -t 10 -c:v copy -c:a copy output.mp4

解释:

-ss 指定从输入视频第 1:01 秒开始截取,-t 10 指明最多截取 10 秒,实际上测试发现可能是 15 秒。
-c:v 和 -c:a分别指定视频和音频的编码格式。
-c:v copy -c:a copy标示视频与音频的编码不发生改变,而是直接复制,这样会大大提升速度。

抽取帧 (IPB),这里抽取 I 帧。

ffmpeg -i x.MP4 -vf "select=eq(pict_type\,I)" -vsync vfr -qscale:v 2 -f image2 out.jpg

通过帧得出视频尺寸,这样有助于估算大概的坐标位置,估算就可以了。

最后,去除水印 delogo。

ffmpeg -i x.mp4 -filter_complex "delogo=x=1:y=1:w=1078:h=100:show=0" out.mp4

show=0 表示没有边框,其实不需要啦,反正是很耗时的。坐标不可以靠近边界,不可以是 0 开始,比如 1080 宽度的视频,宽度 1080 就会超出边界,这个时候写个 1078 就可以了。

封面截图

ffmpeg -i x.mp4 -y -f image2 -ss 9 -t 0.001 -s 352x240 cover.jpg
2024-12-22 15:54:55 1734854095 0.015928