Skip to content

xjz6626/VideoSubtitleScreenshotStitcher

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

字幕拼接截图工具 (Video Subtitle Screenshot Stitcher)

这是一个智能的自动化工具,它通过快捷键启动,能够实时监控视频的字幕变化,并自动将包含新字幕的画面拼接成一张长图。项目使用 EasyOCR 进行文字识别,确保了截图的准确性,避免了重复和遗漏。

效果演示

(这里建议您放一张您用这个工具生成的、效果最好的长图)

alt text

主要功能

  • 快捷键操作:使用全局快捷键开始/停止录制,以及安全退出程序。
  • 智能检测:基于 OCR 技术,精准识别新出现的字幕内容,只有在字幕变化时才进行截图。
  • 自动拼接:将捕获的第一帧作为完整背景,后续只拼接更新后的字幕区域,生成紧凑、清晰的长图。
  • 高度可配置:可以轻松在代码中修改快捷键、字幕区域坐标、识别语言等参数。
  • 多语言支持:支持同时识别多种语言(如简中、繁中、日语、英语),可按需配置。

环境要求

  • Python 3.8+
  • pip (Python 包管理工具)

安装与配置

  1. 克隆或下载项目

    git clone https://github.com/xjz6626/VideoSubtitleScreenshotStitcher.git
  2. 安装依赖库 项目依赖的所有库都记录在 requirements.txt 文件中。运行以下命令进行安装:

    pip install -r requirements.txt
  3. 首次运行下载模型 (重要) 第一次运行脚本时,EasyOCR 会根据您配置的语言自动下载所需的 OCR 模型文件。这个过程需要联网,并可能持续几分钟,请耐心等待。

  4. 修改核心配置 (最重要的一步!) 打开 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: 根据您的喜好修改开始/停止和退出的快捷键。

如何使用

  1. 运行脚本 在终端中运行主程序:

    python screenphoto.py
  2. 操作指令

    • 按下 Ctrl + Alt + S (默认) 开始录制。程序会捕获第一帧作为背景。
    • 视频播放时,程序会自动检测新字幕并截图。
    • 再次按下 Ctrl + Alt + S 停止录制。程序会自动完成拼接并保存图片。
    • 按下 Ctrl + Alt + Q (默认) 可随时安全退出程序。
  3. 查看结果 所有生成的长图都保存在项目根目录下的 captures 文件夹中。

许可证

本项目采用 MIT 许可证

About

这是一个智能的自动化工具,它通过快捷键启动,能够实时监控视频的字幕变化,并自动将包含新字幕的画面拼接成一张长图。项目使用 `EasyOCR` 进行文字识别,确保了截图的准确性,避免了重复和遗漏。

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages