Skip to content

Repository files navigation

FF视频压缩助手

基于 PySide6 的桌面视频压缩工具,支持 NVENC 硬件编码与 CPU 软件编码,面向批量压缩场景提供可视化配置、任务日志和历史记录。

主界面

功能特性

  • ✅ 支持 H.265 / H.264,GPU(NVENC)与 CPU 编码
  • ✅ 支持分辨率与压缩策略快速配置,也可高级参数微调
  • ✅ 支持多文件并行处理与批量压缩
  • ✅ 支持输入文件高级匹配与处理前文件确认
  • ✅ 支持自定义 FFmpeg 命令模板
  • ✅ 支持命令预览复制、实时日志和压缩历史查看
  • ✅ 自动检测或手动指定 FFmpeg / FFprobe 路径
  • ✅ 配置自动保存,界面显示版本信息

快速开始

1) 安装依赖

python -m venv .venv

# Windows
.venv\Scripts\activate

# Linux/macOS
# source .venv/bin/activate

pip install -r requirements.txt

2) 运行程序

.venv\Scripts\python.exe main.py

3) 编译构建

参考文档 BUILD.md

使用说明

  1. 选择输入目录和输出目录。
  2. 按需选择编码格式、编码方式、分辨率和压缩策略。
  3. 可选:点击“高级匹配...”配置递归、正则、后缀筛选。
  4. 可选:启用“高级选项”进行参数细调,或切换到“自定义 FFmpeg 命令”。
  5. 点击“预览命令”查看并复制实际命令。
  6. 点击“开始压缩”,在“实时日志”与“压缩历史”页签查看执行情况。

说明:配置修改会自动保存,无需手动点击保存按钮。

编码组合参考

编码格式 编码方式 编码器 特点
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

FFmpeg 配置

  • 默认使用系统 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 编码)

常见问题

找不到 FFmpeg / FFprobe

优先检查 PATH;也可以在程序内手动指定可执行文件路径。

GPU 加速不可用

请确认显卡支持 NVENC 且驱动正常,或切换为 CPU 软件编码。

压缩后文件反而更大

程序会自动丢弃该压缩结果,保留原文件。

如何选择 CQ/CRF

不确定时建议使用普通模式(自动计算);手动调整时数值越小画质越高、文件越大。

许可证

MIT License

贡献

欢迎提交 Issue 与 Pull Request。

About

No description, website, or topics provided.

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages