master
- 两种截图模式:平均截图 / 按间隔截图 - 预览支持:网格/列表模式切换 - 列表模式:表格视图,支持按名称/分辨率/大小排序 - 双击放大、右键上下文菜单 - 可视化界面,PyInstaller 打包
VideoSnapper — 视频截图工具
一个轻量级的视频截图工具,不打开视频即可快速提取关键帧。
功能
- 选择视频 → 自动展示基本信息(时长、分辨率、大小、帧率等)
- 截图配置:
- 模式一:平均截图 — 根据总时长均匀取 N 张(含首尾),默认 12 张
- 模式二:按间隔截图 — 每隔 X 秒/分/小时截一张
- 截图预览 — 截图完成后在界面中以缩略图网格展示
- 智能命名 —
52s.png/10m.png/2m28s.png - 一键打开输出文件夹
技术栈
| 组件 | 选型 | 理由 |
|---|---|---|
| 语言 | Python 3.8+ | 开发快捷 |
| GUI | tkinter (内置) | 零额外依赖,内存小 |
| 视频处理 | OpenCV (cv2) | 纯 Python 包,无需外部二进制 |
| 打包 | PyInstaller | 一键打包成 exe |
零外部二进制依赖 — OpenCV 自带 ffmpeg 解码能力,不需要用户另外下载 ffmpeg.exe。
快速开始
方式一:源码运行
pip install -r requirements.txt
python main.py
方式二:打包为 exe(Windows)
# 双击 build.bat,或:
pip install -r requirements.txt
pyinstaller --onedir --noconfirm --clean --name "VideoSnapper" --windowed main.py
打包后在 dist/VideoSnapper/VideoSnapper.exe,双击运行。
提示: 可以发送给其他 Win11 用户直接使用,无需安装 Python。
项目结构
VideoSnapper/
├── main.py # 主程序(GUI + 截图逻辑)
├── requirements.txt # Python 依赖
├── build.bat # 一键打包脚本 (Windows)
└── README.md # 本文件
系统要求
- 运行: Windows 10/11(打包后)或任意平台(源码运行)
- 开发: Python 3.8+
- 内存: 运行时 ~50 MB
- 磁盘: 打包后 ~80 MB(含 Python 解释器)
截图命名规则
| 时间位置 | 文件名 |
|---|---|
| 第 52 秒 | 52s.png |
| 第 10 分钟 | 10m.png |
| 第 2 分 28 秒 | 2m28s.png |
| 第 1 小时 5 分 3 秒 | 1h5m3s.png |