视频伪原创工具 - 基于 ffmpeg 的视频去重处理
Project description
revideo — 视频伪原创工具
基于 ffmpeg 的视频去重处理工具,通过多种手段修改视频以应对平台原创检测。
安装
前置依赖
- Python ≥ 3.12
- ffmpeg(需在 PATH 中可用)
# 克隆项目
git clone https://git.des8.com/heibai2006/revideo.git
cd revideo
# 安装依赖(uv 自动处理)
uv sync
验证安装:
uv run revideo --help
快速开始
# 处理单个视频(输出到 output/ 目录)
uv run revideo video.mp4 -o output/
# 处理目录下所有 mp4
uv run revideo ./videos/ -o output/
# 多文件处理后拼合为一个视频
uv run revideo a.mp4 b.mp4 c.mp4 -o output/ --concat
# 添加片头片尾 + 背景音乐
uv run revideo video.mp4 --intro 片头.mp4 --outro 片尾.mp4 --bgm music.mp3
# MCP 模式(接入大模型)
uv run revideo --mcp
输出格式
处理完成后,单文件输出 源文件_已处理.mp4,合并输出 源文件_合并.mp4:
视频A.mp4→视频A_已处理.mp4
视频B.mp4→视频B_已处理.mp4
已合并到 视频A_合并.mp4
参数说明
| 参数 | 说明 |
|---|---|
input |
输入视频文件或目录(可多个) |
-o, --output |
输出目录,默认 output |
--preset {light|standard|heavy} |
预设力度,默认 standard |
--no-video |
禁用视频层面所有处理 |
--no-audio |
禁用音频层面所有处理 |
--no-metadata |
禁用元数据层面所有处理 |
--only-video |
仅启用视频层面(可叠加 --only-audio) |
--only-audio |
仅启用音频层面 |
--only-metadata |
仅启用元数据层面 |
--concat |
多文件处理完成后拼合为单个视频 |
--intro |
片头文件 |
--outro |
片尾文件 |
--bgm |
背景音乐文件 |
--mcp |
启动 MCP stdio 服务器 |
--keep-original |
保留中间文件(调试用) |
预设说明
| 预设 | 启用组 | 说明 |
|---|---|---|
light |
video | 仅画面处理,快速去重 |
standard |
video + audio + metadata | 全组启用(默认) |
heavy |
全部 | 全组启用 + 更激进参数 |
伪原创手段详解
1. 视频层面 (video) — 影响画面像素
| 方法 | 说明 | 随机范围 |
|---|---|---|
| 裁切 (crop) | 切除画面边缘像素 | 1%~3% 边缘 |
| 缩放 (scale) | 轻微放大缩小 | 1.01x~1.05x |
| 镜像翻转 (mirror) | 水平或垂直翻转 | 随机二选一 |
| 旋转 (rotate) | 小角度倾斜 | ±0.5°~2° |
| 色彩调整 (color) | 微调色相/饱和度/亮度 | 色相±10, 饱和度0.95~1.05 |
| 锐化/模糊 (sharpen) | 轻微锐化或高斯模糊 | — |
| 变速 (speed) | 微变速并补偿音频音调 | 0.95x~1.05x |
| 帧率修改 (framerate) | 修改输出帧率后平滑 | — |
| 场景分割重组 (scene-split) | 场景/静音检测→乱序→拼接 | 阈值可调 |
| 片段倒放 (reverse) | 随机短片段倒放 | — |
| 画中画 (pip) | 角落叠加缩小版画面 | 右下角 |
| 水印/蒙版 (watermark) | 半透明图层 | — |
| 边框特效 (border) | 装饰边框/模糊边框 | — |
| 字幕/贴图 | 硬编码文字或贴图 | — |
| 片头/片尾拼接 | 拼接指定素材到首尾 | — |
| 片段插入 | 插入无关素材片段 | — |
| 总时长修改 | 综合变速+抽帧 | — |
2. 音频层面 (audio) — 音频流处理
| 方法 | 说明 |
|---|---|
| 背景音乐 (bgm) | 叠加 BGM,自动降低原声音量 (ducking) |
| 音调调整 (pitch) | 轻微升降调而不改变速度 |
| 音量曲线 (volume) | 随机化音量变化包络 |
| 静音检测分割 | 在静音处分割视频片段 |
| 静音移除 | 去除静音段落,压缩节奏 |
3. 元数据层面 (metadata) — 容器/编码/文件
| 方法 | 说明 |
|---|---|
| 格式转换 | 更换容器格式 (mp4↔mkv↔avi↔mov) |
| 编码器变更 | 更换视频编码 (H.264↔H.265↔VP9) |
| 元数据擦除 | 清除旧元数据,写入随机新数据 |
| 文件哈希修改 | 末尾添加填充字节改变 MD5 |
MCP 模式
启动 MCP 服务器后,大模型可通过 STDIO 调用:
uv run revideo --mcp
可用工具:
process_video— 处理单个视频,支持所有参数process_directory— 批量处理目录,支持 concat 合并
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
revideo-1.0.0.tar.gz
(11.9 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
revideo-1.0.0-py3-none-any.whl
(14.6 kB
view details)
File details
Details for the file revideo-1.0.0.tar.gz.
File metadata
- Download URL: revideo-1.0.0.tar.gz
- Upload date:
- Size: 11.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c7b68b32d8ace71a152443884458d1446ed2dd246815de1d12a87a803c3373c4
|
|
| MD5 |
a4cc05eb6dfb1dcb83b75086073b41e5
|
|
| BLAKE2b-256 |
4b003a121bab089a004c80fc1a61d5a39313f66e6420b5e8a7822df985405d76
|
File details
Details for the file revideo-1.0.0-py3-none-any.whl.
File metadata
- Download URL: revideo-1.0.0-py3-none-any.whl
- Upload date:
- Size: 14.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
763f85338fbb3587fb734cf15dca14c7bf8740b8bb818a4c93a05d3891533a42
|
|
| MD5 |
9e718e7a9689e70d43f87791b25d5073
|
|
| BLAKE2b-256 |
17f5143b69326fb162b775146edb15d0eb90c23396c54ab31a81375be842e67d
|