explaingit

yaofanguk/video-subtitle-extractor

8,809PythonAudience · generalComplexity · 2/5LicenseSetup · moderate

TLDR

Desktop tool that detects and extracts burned-in subtitles from video files and saves them as SRT files, supporting 87 languages and running fully offline on your own computer.

Mindmap

mindmap
  root((Subtitle Extractor))
    What It Does
      Extracts burned-in text
      Saves as SRT files
      87 languages supported
    Processing Modes
      Fast mode
      Auto mode
      Precise mode
    GPU Support
      NVIDIA via CUDA
      AMD and Intel DirectML
      Apple Silicon ONNX
    Interfaces
      Graphical desktop app
      Command-line version
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Extract hardcoded subtitles from a foreign-language video so you can translate or edit the text.

USE CASE 2

Batch process a folder of videos with the same resolution to produce SRT subtitle files for each one.

USE CASE 3

Strip recurring watermarks or channel logos from extracted subtitle text using a filter config file.

USE CASE 4

Use GPU acceleration on NVIDIA, AMD, Intel, or Apple Silicon hardware for faster subtitle extraction.

Tech stack

PythonCUDAONNXDirectML

Getting it running

Difficulty · moderate Time to first run · 30min

GPU acceleration is optional but significantly faster, CUDA for NVIDIA, DirectML for AMD/Intel on Windows, ONNX for Apple Silicon.

Apache 2.0, use freely for any purpose including commercial, modify and distribute, as long as you include the license and copyright notice.

In plain English

Video Subtitle Extractor is a desktop tool that reads a video file and pulls out any text that has been burned directly into the picture, then saves those words as a standard subtitle file (SRT format) that media players can load separately. This is useful when you have a video with captions baked into the image rather than stored as a separate track, and you want to edit, translate, or search through that text. The tool runs a text-detection process entirely on your own computer, so you do not need to sign up for or pay any online service. It supports 87 languages, including Chinese, English, Japanese, Korean, Arabic, French, German, Russian, Spanish, Portuguese, Italian, and more. You can process a single video or a whole folder of videos at once, as long as the videos share the same resolution and subtitle position. There are three processing modes. Fast mode uses a lighter detection model and finishes quickly, though it may occasionally miss a line or misread a word. Auto mode picks the right model based on whether your computer has a compatible graphics card: lightweight when running on the CPU alone, more thorough when GPU acceleration is available. Precise mode checks every frame with the most accurate model but runs very slowly and is not recommended for routine use. For graphics card support, the tool works with NVIDIA cards via CUDA, AMD and Intel cards via DirectML on Windows, and Apple Silicon or AMD GPUs via ONNX on macOS and Linux. A CPU-only mode is also available for machines with no compatible GPU at all. If a video contains recurring on-screen labels, channel logos, or watermarks you want stripped from the output, you can list those strings in a small configuration file and the tool will remove or replace them in the extracted text. The project is open source under the Apache 2 license and provides both a graphical interface and a command-line version.

Copy-paste prompts

Prompt 1
How do I run video-subtitle-extractor on a folder of MP4 files to extract burned-in Chinese subtitles as SRT files?
Prompt 2
What is the difference between fast mode, auto mode, and precise mode in video-subtitle-extractor, and which should I use for a 1-hour video?
Prompt 3
How do I configure video-subtitle-extractor to strip a recurring watermark text from the extracted subtitle output?
Prompt 4
How do I enable GPU acceleration on an NVIDIA card when running video-subtitle-extractor on Windows?
Open on GitHub → Explain another repo

← yaofanguk on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.