这是一个智能的自动化工具,它通过快捷键启动,能够实时监控视频的字幕变化,并自动将包含新字幕的画面拼接成一张长图。项目使用 EasyOCR 进行文字识别,确保了截图的准确性,避免了重复和遗漏。
(这里建议您放一张您用这个工具生成的、效果最好的长图)
- 快捷键操作:使用全局快捷键开始/停止录制,以及安全退出程序。
- 智能检测:基于 OCR 技术,精准识别新出现的字幕内容,只有在字幕变化时才进行截图。
- 自动拼接:将捕获的第一帧作为完整背景,后续只拼接更新后的字幕区域,生成紧凑、清晰的长图。
- 高度可配置:可以轻松在代码中修改快捷键、字幕区域坐标、识别语言等参数。
- 多语言支持:支持同时识别多种语言(如简中、繁中、日语、英语),可按需配置。
- Python 3.8+
- pip (Python 包管理工具)
-
克隆或下载项目
git clone https://github.com/xjz6626/VideoSubtitleScreenshotStitcher.git
-
安装依赖库 项目依赖的所有库都记录在
requirements.txt文件中。运行以下命令进行安装:pip install -r requirements.txt
-
首次运行下载模型 (重要) 第一次运行脚本时,
EasyOCR会根据您配置的语言自动下载所需的 OCR 模型文件。这个过程需要联网,并可能持续几分钟,请耐心等待。 -
修改核心配置 (最重要的一步!) 打开
screenphoto.py(或者您的主脚本文件),在文件顶部的“用户配置区”进行修改:SUBTITLE_AREA: 必须修改! 这是字幕在您屏幕上的坐标{"top": Y, "left": X, "width": W, "height": H}。请使用截图工具精确测量。LANGUAGES: 根据您要识别的视频字幕,选择一组兼容的语言。注意EasyOCR限制繁中 (ch_tra) 不能和简中 (ch_sim)、日语 (ja) 同时使用。# 示例:识别简体中文和英语 LANGUAGES = ['ch_sim', 'en'] # 示例:识别繁体中文和英语 # LANGUAGES = ['ch_tra', 'en']
HOTKEY/EXIT_HOTKEY: 根据您的喜好修改开始/停止和退出的快捷键。
-
运行脚本 在终端中运行主程序:
python screenphoto.py
-
操作指令
- 按下
Ctrl + Alt + S(默认) 开始录制。程序会捕获第一帧作为背景。 - 视频播放时,程序会自动检测新字幕并截图。
- 再次按下
Ctrl + Alt + S停止录制。程序会自动完成拼接并保存图片。 - 按下
Ctrl + Alt + Q(默认) 可随时安全退出程序。
- 按下
-
查看结果 所有生成的长图都保存在项目根目录下的
captures文件夹中。
本项目采用 MIT 许可证。
