ffmpeg 添加视频水印,旋转+移动飘移效果 win linux

zsxwz 24/10.28 15:39 187

偶尔有来小店问给视频批量添加移动的方法,各种现成的软件应该挺多的,但是要满足自己需求的可能不多。

有的想这样移动,有的要那样移动,软件都是现成的移动轨迹。

有问要视频水印旋转+移动效果的,这确实有点麻烦。

 

移动效果:

ffmpeg -i input.mp4 -vf "drawtext=text='你的水印文字':fontfile=./simhei.ttf:fontsize=24: fontcolor=white:x='(W-tw)*abs(sin(t*0.2))':y='(H-th)*(1-abs(sin(t*0.2)))'" -c:a copy output.mp4

t*0.2 控制了水印的移动速度。增加该系数的值(如 t*2 或 t*3)会加快移动速度,减小该值(如 t*0.5)则会降低速度

 

旋转效果

ffmpeg -i input.mp4 -filter_complex "color=s=200x400:c=black@0[c];[c]drawtext=text='水印文字':fontfile=./simhei.ttf:fontsize=48:fontcolor=white:x=(w-text_w)/2:y=(h-text_h)/2:alpha=1,rotate=2*PI*t:c=none[txt];[0:v][txt]overlay=(W-w)/2:(H-h)/2:shortest=1" -codec:a copy output.mp4

转速:修改 2*PI*t 中的数字(如 PI*t 转得慢一倍)
水印大小:修改 s=200x100 中的数字
字体大小:修改 fontsize=48 的数值

 

移动+旋转效果:

ffmpeg -i input.mp4 -filter_complex "color=s=200x400:c=black@0[c];[c]drawtext=text='水印文字':fontfile=./simhei.ttf:fontsize=48:fontcolor=white:x=(w-text_w)/2:y=(h-text_h)/2:alpha=1,rotate=2*PI*t:c=none[txt];[0:v][txt]overlay=x='(W-w)*abs(sin(t*0.2))':y='(H-h)*(1-abs(sin(t*0.2)))':shortest=1" -codec:a copy output.mp4

 

如果需要不同的轨迹:

#圆形轨迹:
overlay=x='(W-w)/2 + (W/4)*sin(t)':y='(H-h)/2 + (H/4)*cos(t)'

#斜线移动:
overlay=x='(W-w)*abs(sin(t*0.2))':y='(H-h)*abs(sin(t*0.2))'

#弹跳效果:
overlay=x='(W-w)*abs(sin(t*0.2))':y='(H-h)*abs(sin(t*0.5))'

 

最终效果,速度已经调节到比较慢:

https://youtu.be/-Npjdzjq59I

https://www.bilibili.com/video/BV14C1jYmEtX

 

最后于 24/10.28 16:28 被zsxwz编辑 ,原因:

上一篇:小米桌面开启圈定即搜,magisk模块
下一篇:安卓防止屏幕休眠命令
最新回复 (0)
    • 姿势论坛—姿势小王子
      2
返回
发新帖
友情链接
免责声明:本站部分资源来源于网络,如有侵权请发邮件(mail@zsxwz.com)告知我们,我们将会在24小时内处理。