基于 PySide6 的桌面视频压缩工具,支持 NVENC 硬件编码与 CPU 软件编码,面向批量压缩场景提供可视化配置、任务日志和历史记录。
- ✅ 支持 H.265 / H.264,GPU(NVENC)与 CPU 编码
- ✅ 支持分辨率与压缩策略快速配置,也可高级参数微调
- ✅ 支持多文件并行处理与批量压缩
- ✅ 支持输入文件高级匹配与处理前文件确认
- ✅ 支持自定义 FFmpeg 命令模板
- ✅ 支持命令预览复制、实时日志和压缩历史查看
- ✅ 自动检测或手动指定 FFmpeg / FFprobe 路径
- ✅ 配置自动保存,界面显示版本信息
python -m venv .venv
# Windows
.venv\Scripts\activate
# Linux/macOS
# source .venv/bin/activate
pip install -r requirements.txt.venv\Scripts\python.exe main.py参考文档 BUILD.md
- 选择输入目录和输出目录。
- 按需选择编码格式、编码方式、分辨率和压缩策略。
- 可选:点击“高级匹配...”配置递归、正则、后缀筛选。
- 可选:启用“高级选项”进行参数细调,或切换到“自定义 FFmpeg 命令”。
- 点击“预览命令”查看并复制实际命令。
- 点击“开始压缩”,在“实时日志”与“压缩历史”页签查看执行情况。
说明:配置修改会自动保存,无需手动点击保存按钮。
| 编码格式 | 编码方式 | 编码器 | 特点 |
|---|---|---|---|
| H.265 | GPU | hevc_nvenc | 速度快、压缩率高,需要 NVIDIA 显卡 |
| H.264 | GPU | h264_nvenc | 速度快、兼容性好,需要 NVIDIA 显卡 |
| H.265 | CPU | libx265 | 速度较慢、压缩率高 |
| H.264 | CPU | libx264 | 速度较慢、兼容性最好 |
推荐:通用场景可优先使用 H.265 + GPU(若硬件支持)。
压缩参数按分辨率、码率、帧率和三种压缩策略计算,具体规则解释见 COMPRESSION_STRATEGY.md
- 默认使用系统 PATH 中的 ffmpeg / ffprobe。
- 若系统未配置,可在界面“FFmpeg状态”区域点击“指定路径”手动选择。
- 自定义命令模板必须包含 {input} 与 {output} 两个占位符。
CompressVideos_ffmpeg_nvenc/
├── main.py
├── main_window.py
├── compress_worker.py
├── ffmpeg_runner.py
├── dialogs.py
├── video_analyzer.py
├── video_utils.py
├── requirements.txt
└── README.md
- Python 3.8+
- FFmpeg(含 ffmpeg 与 ffprobe)
- Windows / Linux / macOS
- 可选:支持 NVENC 的 NVIDIA 显卡(用于 GPU 编码)
优先检查 PATH;也可以在程序内手动指定可执行文件路径。
请确认显卡支持 NVENC 且驱动正常,或切换为 CPU 软件编码。
程序会自动丢弃该压缩结果,保留原文件。
不确定时建议使用普通模式(自动计算);手动调整时数值越小画质越高、文件越大。
MIT License
欢迎提交 Issue 与 Pull Request。
