视频添加水印
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md 安装 @org-z32n0sms/shipingshuiying 技能。
技能介绍
为什么需要这个技能
给视频叠加文字水印看似简单,但直接操作 ffmpeg 的 overlay 滤镜会遇到三个具体问题:不同字体和强调字符的混排需要精确控制垂直居中,多位置水印的串联需要构建复杂的 filter 表达式,动态水印的时间函数调试成本高。特别是处理知识付费课程切片时,批量生成带品牌标识的短视频需要重复调整参数,手动维护成本高且易出错。
核心能力与工作方式
本技能通过 scripts/watermark.py 实现确定性处理流程:
- 参数化输入:支持
--text指定水印内容,--font选择中文字体(雅黑/黑体/宋体/楷体)或直接传入.ttf文件,--emph-char可对特定字符放大渲染(如品牌名中的·符号) - 智能渲染:使用 Pillow 生成透明 PNG 水印层,直接将
--opacity参数写入 alpha 通道,--shadow自动添加黑色描边保证可读性 - 双模式处理:静态模式通过串联多个
overlay实现多角标布局;动态模式构建t时间轴表达式,支持drift(正弦漫游)、scroll(底部跑马灯)、bounce-h/v(双向弹跳)三种运动轨迹 - 生产级编码:统一采用
-crf 20保证画质,-pix_fmt yuv420p确保兼容性,+faststart优化网页播放,音频流直接拷贝避免重编码
适用边界
- 仅限文字水印处理,图片/Logo 叠加需其他方案
- 动态水印的运动轨迹基于固定算法,不支持自定义曲线
--position all模式会生成四角水印,慎用于竖屏视频- Windows 下处理中文路径需注意 Git Bash 的路径编码问题
技术备注
首次运行时会自动通过 imageio-ffmpeg 获取静态版 ffmpeg 二进制文件。若环境已存在 ffmpeg,脚本仍会优先使用缓存版本以保证行为一致性。字体渲染遵循 Pillow 的 fallback 机制,当指定字体不可用时会自动回退到系统默认中文字体。
使用场景
- 把课程直播回放切片为短视频,叠加课程名称水印后分发到抖音
- 为知识付费视频添加防搬运动态水印,保持品牌识别同时增加移动效果
- 给系列教学视频批量添加品牌角标,统一输出到指定文件夹
- 为社群宣传视频添加透明文字水印,在画面漂移增强视觉引导
适合人员
- 在线教育课程运营,需要为直播回放切片添加课程标识并分发到短视频平台
- 知识付费内容创作者,希望保护原创视频不被搬运并保持品牌露出
- 自媒体矩阵管理者,需批量为系列视频添加统一品牌水印保持视觉一致
- 社群运营人员,为社群宣传视频添加透明水印引导用户关注或加入