Skip to content

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

FFmpeg 工具箱

一款基于 FFmpeg 的 Windows 图形化批量媒体处理工具。选择输入文件后自动匹配可用操作,多选操作并独立配置参数,一键批量执行。

特性

  • 42 种操作,覆盖格式转换、视频剪辑、音频处理、分辨率/帧率、压缩、截图/缩略图、GIF、字幕、水印、滤镜、图片处理等
  • 文件类型自动检测(视频 / 音频 / 图片),动态过滤可用操作列表
  • 多选 + 独立参数:可勾选多项操作,每项单独配置参数,一键批量执行
  • 实时执行日志:暗色终端风格日志,实时输出 FFmpeg 运行信息
  • 输出自动避重:同名文件自动追加序号,多帧输出自动使用序列命名

前提条件

  • Windows(依赖 tkinter,字体路径硬编码 Windows 路径)
  • Python 3(内置 tkinter,无需第三方依赖)
  • FFmpeg(ffmpeg + ffprobe 已安装并加入系统 PATH)

运行

python ffmpeg_toolbox.py

使用流程

  1. 选择输入文件(视频 / 音频 / 图片),系统自动识别类型
  2. 勾选操作,在右侧面板配置每项参数
  3. 选择输出目录(默认自动填入输入文件所在目录)
  4. 点击 开始执行,实时查看日志,完成后可一键打开输出目录

操作清单

分类 操作
基本信息 查看媒体信息 (ffprobe)
格式转换 转 MP4 / MKV / WebM / MOV
视频剪辑 按时间段截取、按时长截取
音频处理 提取 MP3 / WAV、去除音频、调整音量、替换音轨、音频转 MP3 / WAV / AAC / FLAC
分辨率与帧率 缩放自定义宽度、缩放 720p、改变帧率
压缩与码率 H.264 (CRF)、H.265/HEVC
截图与缩略图 单张截图、定时截图序列、缩略图网格
GIF 制作 基础 GIF、高质量 GIF(调色板)
字幕处理 嵌入软字幕、硬字幕烧录
水印 图片水印(5 位置)、文字水印(5 位置)
实用滤镜 水平/垂直翻转、旋转 90°、亮度/对比度/饱和度、黑白、模糊
实用技巧 加速播放、慢速播放、反转视频
图片处理 图片转 PNG / JPG、缩放图片

项目结构

FFmpegTool/
├── ffmpeg_toolbox.py   # 唯一源代码(单文件,约 930 行)
├── PRODUCT.md          # 产品说明
└── README.md           # 本文档

代码按职责分区:

区域 职责
文件类型定义 扩展名集合与 detect_file_type()
工具函数层 滤镜路径转义、字体查找、输出路径生成、变速链构建
命令构建层 每个操作对应的 FFmpeg 命令拼接函数
操作注册表 OPERATIONS 42 个操作的声明式元数据(id/类型/参数/构建函数)
可滚动框架 ScrollFrame Canvas + Scrollbar 复用的滚动容器
主界面 FFmpegToolbox 样式、UI 搭建、交互、后台任务调度、日志轮询

核心设计是数据驱动:新增操作只需在 OPERATIONS 列表追加一条记录并编写对应 build_xxx 函数,界面会自动生成参数面板。

说明与限制

  • 仅在 Windows 上运行(字体路径硬编码 C:/Windows/Fonts/)
  • 快速剪辑(-c copy)为流复制,起始帧可能不精确;如需精确请选择「精确帧(重新编码)」
  • 文字水印通过临时文本文件渲染,支持任意特殊字符(单引号、冒号、百分号、反斜杠等),执行完成后自动清理临时文件
  • 界面语言为简体中文

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages