FFmpeg 水印
时间:2020-07-15 06:50:40 +0800 CST 浏览:1796

图片水印、文字水印、画中画

图片水印

ffmpeg -i input.mp4 -vf "movie=wenzi.png[watermark];[in][watermark] overlay=main_w-overlay_w-10:main_h-overlay_h-10[out] " output.mp4

-i :一般表示输入

input.mp4:这里表示要处理的视频源

-vf:滤镜相关,视频裁剪,水印等等操作都需要它完成

wenzi.png: 要添加的水印图片地址

overlay:水印参数

main_w-overlay_w-10 : 水印在x轴的位置,也可以写成x=main_w-overlay_w-10

main_h-overlay_h-10:水印在y轴的位置

ffmpeg -i input.mp4 -i logo.png -filter_complex 'overlay=x=10:y=main_h-overlay_h-10' output.mp4

-filter_complex: 相比-vf,
filter_complex适合开发复杂的滤镜功能,如同时对视频进行裁剪并旋转。参数之间使用逗号(,)隔开即可

main_w:视频宽度

overlay_w: 要添加的图片水印宽度

main_h : 视频高度

overlay_h:要添加的图片水印宽度

文字水印

ffmpeg -i input.mp4 -vf "drawtext=fontfile=simhei.ttf: text=‘技术是第一生产力’:x=10:y=10:fontsize=24:fontcolor=white:shadowy=2" output.mp4

fontfile:字体类型

text:要添加的文字内容

fontsize:字体大小

fontcolor:字体颜色

画中画

只显示1遍,后边重复显示最后一帧。

ffmpeg -i bunny.mp4 -vf "movie=test.mov[logo];[0:v][logo]overlay=x=100:y=100"  -y out.mp4

mov一直循环显示。 添加 loop=0,setpts=N/FRAME_RATE/TB 即可。

ffmpeg -i bunny.mp4 -vf "movie=test.mov:loop=0,setpts=N/FRAME_RATE/TB[logo];[0:v][logo]overlay=x=100:y=100"  -y out.mp4

只显示一遍 添加eof_action即可。

ffmpeg -i bunny.mp4 -vf "movie=test.mov[logo];[0:v][logo]overlay=x=100:y=100:eof_action=pass" -vframes 1000 -y out.mp4


如果这篇文章对你有所帮助,可以通过下边的“打赏”功能进行小额的打赏。

本网站部分内容来源于互联网,如有侵犯版权请来信告知,我们将立即处理。


来说两句吧