使用ffplay 预览一下效果:
ffplay -i cctvhttp.flv -vf “drawtext=fontsize=100:fontfile=Arial.ttf:tex
t=‘hello world’:x=20:y=20:fontcolor=blue:alpha=0.5” -x 640 -y 480
使用ffmpeg保存为文件 :
ffmpeg -i cctvhttp.flv -vf “drawtext=fontsize=100:fontfile=Arial.ttf:tex
t=‘hello world’:x=20:y=20:fontcolor=blue:alpha=0.5” drawtext.flv
简单参数介绍:-vf 选择过滤器
drawtext:过滤器名称
fontsize=100:字体大小
fontfile=Arial.ttf:字体
text=‘hello world’:显示内容
x=20:x坐标
y=20:y坐标
fontcolor=blue:字体颜色
alpha:0.5:透明度
增加背景框:
ffplay -i cctvhttp.flv -vf “drawtext=fontsize=100:fontfile=Arial.ttf:text=‘hello w
orld’:x=20:y=20:fontcolor=blue:alpha=0.5:box=1:boxcolor=red” -x 640 -y 480
使用时间作为水印:
ffplay -i cctvhttp.flv -vf “drawtext=fontsize=100:fontfile=Arial.ttf:text=’%{local
time:%Y-%m-%d %H-%M-%S}’:x=20:y=20:fontcolor=blue:alpha=0.5:box=1:boxcolor=red” -x 640
-y 480
时间作为水印存上文件上:
(需要添加-re 参数)
ffmpeg -re -i cctvhttp.flv -vf “drawtext=fontsize=100:fontfile=Arial.ttf:text=’%{loca
ltime:%Y-%m-%d %H-%M-%S}’:x=20:y=20:fontcolor=blue:alpha=0.5:box=1:boxcolor=red” drawtext.flv
定时显示水印:
隔两秒显示一秒时间
ffplay -i cctvhttp.flv -vf “drawtext=fontsize=100:fontfile=Arial.ttf:text=‘hello friend’:enable=lt(mod(t,2),1):x=20:y=20:fontcolor=blue:alpha=0.5:box=1:boxcolor=red” -x 6
40 -y 480
enable:关启水印\关闭水印
mod(t,2):将当前时间取模2
lt(x,y):x < y 返回1,否则返回0
保存文件时也要增加 -re
ffmpeg -re -i cctvhttp.flv -vf “drawtext=fontsize=100:fontfile=Arial.ttf:text=‘hello friend’:enable=lt(mod(t,2),1):x=20:y=20:fontcolor=blue:alpha=0.5:box=1:boxcolor=red” -x 6
40 -y 480
水印跑马灯效果:
ffplay -i cctvhttp.flv -vf “drawtext=fontsize=100:fontfile=Arial.ttf:text=‘hello f
riend’:x=mod(1000*t,w):y=20:fontcolor=blue:alpha=0.5:box=1:boxcolor=red” -x 640 -y 480
更详细的过滤器参数查询ffmpeg官网