视频添加水印批处理-漫剧版

视频添加水印批处理-漫剧版

前言

之前发过一篇"使用ffmpeg+python实现自动给视频添加移动水印",对于视频教学可以,但用在漫剧制作的话,会特别影响观看体验。需提先安装好ffmpeg和设置好环境变量。

单独放一个目录,路径不要有中文,要处理的视频名称不要有中文,水印图片和批处理放在同一个目录下,水印名称"logo.png"

参考水印:

参考目录:

一、漫剧左下角平滑水印 (极致微动版)

bash 复制代码
@echo off
chcp 65001 >nul
title GPU 编码 - 漫剧左下角平滑水印 (极致微动版)

echo ==========================================
echo 🚀 功能:左下角超低频平滑位移水印
echo 🎬 目的:防盗录的同时,最大程度减小视觉干扰
echo ⏱️ 效果:约 2 分钟完成一次极小范围的"呼吸"运动
echo ==========================================

:: --- 配置区域 ---
:: 基础边距:距离左侧和底部的像素距离
set "PADDING=60"
:: 移动范围:在 15 像素内微调,确保不遮挡主要画面或字幕
set "MOVE_RANGE=15"
:: 速度系数:0.05 为极慢速,视觉上几乎感知不到在动
set "SPEED=0.05"
:: 输出文件名
set "OUTPUT_FILE=output_bottom_left.mp4"

:: --- 自动查找视频文件 ---
for %%f in (*.mp4 *.mov *.avi *.mkv) do (
    if "%%f" neq "%OUTPUT_FILE%" (
        set "INPUT_FILE=%%f"
        goto found
    )
)

:found
if "%INPUT_FILE%"=="" (
    echo ❌ 错误:文件夹内未发现视频文件!
    pause
    exit /b
)

if not exist "logo.png" (
    echo ❌ 错误:未找到 logo.png 水印文件! [cite: 2]
    pause
    exit /b
)

echo ✅ 匹配视频:%INPUT_FILE%
echo ✅ 目标位置:左下角 (呼吸感微动)

:: --- 坐标修改说明 ---
:: X 坐标:%PADDING% 确保从左侧开始,sin 函数提供横向平滑波动
:: Y 坐标:H-h-%PADDING% 定位到底部,减去波动值使其产生纵向平移 
set "X_COORD=%PADDING%+(%MOVE_RANGE%*(1+sin(t*%SPEED%))/2)"
set "Y_COORD=H-h-%PADDING%-(%MOVE_RANGE%*(1+cos(t*%SPEED%))/2)"

:: 封装滤镜表达式
set "FILTER=[0:v][1:v]overlay=x='%X_COORD%':y='%Y_COORD%'"

echo ⏳ 正在调用显卡硬件加速 (NVENC) 渲染... 

:: --- 执行渲染命令 ---
:: -c:v h264_nvenc: 使用 NVIDIA 显卡硬件编码 
:: -b:v 8M: 针对 1080p 画质的稳定码率
ffmpeg -i "%INPUT_FILE%" -i logo.png -filter_complex "%FILTER%" -c:v h264_nvenc -preset p4 -b:v 8M -c:a aac -y "%OUTPUT_FILE%"

if %errorlevel% equ 0 (
    echo.
    echo ==========================================
    echo ✅ 任务完成!保存为:%OUTPUT_FILE%
    echo ==========================================
) else (
    echo.
    echo ❌ 渲染失败,请检查 FFmpeg 路径或显卡驱动。
)

pause

二、 漫剧边缘环绕水印 (慢速平滑版)

bash 复制代码
@echo off
chcp 65001 >nul
title GPU 编码 - 漫剧边缘环绕水印 (慢速平滑版)

echo ==========================================
echo 🚀 功能:超低频、慢速平滑的边缘环绕水印
echo 🎬 目的:防盗录的同时,大范围移动增加干扰,速度更慢更平滑
echo ⏱️ 效果:约 10 分钟完成一次画面的边缘椭圆环绕
echo ==========================================

:: --- 配置区域 ---
:: 基础边距:距离各边缘的最小像素距离
set "PADDING=60"
:: 速度系数:将速度调至 0.01,使得移动极其缓慢和平滑
set "SPEED=0.01"
:: 输出文件名
set "OUTPUT_FILE=output_edge_slow_orbit.mp4"

:: --- 自动查找视频文件 ---
for %%f in (*.mp4 *.mov *.avi *.mkv) do (
    if "%%f" neq "%OUTPUT_FILE%" (
        set "INPUT_FILE=%%f"
        goto found
    )
)

:found
if "%INPUT_FILE%"=="" (
    echo ❌ 错误:文件夹内未发现视频文件!
    pause
    exit /b
)

if not exist "logo.png" (
    echo ❌ 错误:未找到 logo.png 水印文件!
    pause
    exit /b
)

echo ✅ 匹配视频:%INPUT_FILE%
echo ✅ 目标位置:全画面的边缘慢速环绕

:: --- 坐标修改说明 ---
:: X 坐标:以画面中心为基础,结合 cos 产生沿画面边缘的大范围椭圆环绕
:: Y 坐标:以画面中心为基础,结合 sin 产生沿画面边缘的大范围椭圆环绕
set "X_COORD=(W-w)/2+((W-w-2*%PADDING%)/2)*cos(t*%SPEED%)"
set "Y_COORD=(H-h)/2+((H-h-2*%PADDING%)/2)*sin(t*%SPEED%)"

:: 封装滤镜表达式
set "FILTER=[0:v][1:v]overlay=x='%X_COORD%':y='%Y_COORD%'"

echo ⏳ 正在调用显卡硬件加速 (NVENC) 渲染... 

:: --- 执行渲染命令 ---
ffmpeg -i "%INPUT_FILE%" -i logo.png -filter_complex "%FILTER%" -c:v h264_nvenc -preset p4 -b:v 8M -c:a aac -y "%OUTPUT_FILE%"

if %errorlevel% equ 0 (
    echo.
    echo ==========================================
    echo ✅ 任务完成!保存为:%OUTPUT_FILE%
    echo ==========================================
) else (
    echo.
    echo ❌ 渲染失败,请检查 FFmpeg 路径或显卡驱动。
)

pause
  • end
相关推荐
音视频牛哥2 小时前
SmartMediaKit 推拉流MP4录像实践:实时传输与本地留存一体化
音视频·rtmp推流录像·rtmp播放端录像·rtsp播放端录像·rtsp流录制·rtmp流录制·rtsp服务器录像
石臻臻的杂货铺3 小时前
做 AI 视频,先让 Blender 把镜头演一遍
人工智能·音视频·blender
ALINX技术博客4 小时前
【黑金云课堂】FPGA技术教程Vitis开发:SD卡WAV文件读取音频播放实验
fpga开发·音视频
沐禾安信20 小时前
AVI 视频打不开?2026 四款转 MP4 工具封神
音视频·电脑录屏
兵叔物联1 天前
基于FFmpeg的短视频自动剪辑工具
ffmpeg·音视频
AORUO奥偌1 天前
从“拼凑”到“集成”:音视频系统如何重塑弱电智能化建设逻辑
音视频·公共广播系统·音视频系统·多媒体会议与ip广播系统·多媒体会议系统
禹亮科技1 天前
大型国企会议室音视频集成实战:3间120㎡空间Poly G7500+LED大屏+讯飞多语言会议系统落地方案
音视频·视频会议系统集成·上海禹亮科技·讯飞听见多语言会议系统·poly g7500
音视频牛哥1 天前
SmartMediaKit macOS版RTSP/RTMP低延迟播放器:技术架构、核心能力与应用实践
音视频·低延迟rtsp播放器·macos直播播放器·macos rtsp播放器·macos rtmp播放器·rtsp播放器mac版·rtmp播放器mac版
潜创微科技1 天前
沁恒CH9339:USB3.0超高速对拷,两台电脑一根线共享一切
音视频
Cxiaomu1 天前
从 TRTC Demo 到独立音视频服务:React + TRTC Web SDK 服务化实践
前端·react.js·音视频