使用ffmpeg命令给视频添加水印
2020-04-19 本文已影响0人
HarveyYang777
1、添加图片水印:
ffmpeg -i src.mp4 -acodec copy -b:v 42695k -vf "movie=logo.png[watermark];[in][watermark]overlay=20:20" out.mp4
说明
- -i src.mp4:要处理的视频文件
- -acodec copy:保持音频不变
- -b:v 42695k:设置视频比特率,默认200k,最好设置与原视频一致,不然清晰度可能变差
- -vf “…”:水印处理参数。其中,logo.png是水印图片;overlay=20:20是图片左上角距离视频左上角的距离。
- out.mp4为输出文件名
水印效果如下:
image.png
如需修改水印图片的尺寸,可以用如下命令:
ffmpeg -i logo.png -strict -2 -s 240x240 logo1.png
2、添加文字水印
ffmpeg -i src.mp4 -vf "drawtext=fontfile=simhei.ttf: text='1':x=300:y=500:fontsize=100:fontcolor=yellow:shadowy=2" drawtext.mp4
image.png
如报错则需安装freetype,并配置ffmpeg的configure参数,使其支持freetype
brew install freetype
重新编译ffmpeg,configure参数,使其支持freetype,详情请参考:
https://www.jianshu.com/p/42ac5212e848
3、添加本地时间水印
ffmpeg -i src.mp4 -vf "drawtext=fontsize=160:text='%{localtime\:%T}'" -c:v libx264 -an -f mp4 output.mp4 -y
image.png
4. 把视频的pts时间戳添加为视频水印,精度到毫秒
ffmpeg -t 5 -i src.mp4 -vf "drawtext=fontsize=160:text='%{pts\:hms}'" -c:v libx264 -an -f mp4 output.mp4 -y
image.png