#4444th of 50 in Data and scraping for AIFor image, video and design, video and animation

video-subtitle-extractor

Desktop tool that OCRs hard-coded video subtitles into SRT files

Stars
9.7k
License
Apache-2.0
Last commit
Apr 2026
Last release
Apr 2026
Language
Python
Stars, last 29 weeks+1,156
20 Apr 2026: 8,566 stars27 Apr 2026: 8,614 stars4 May 2026: 8,648 stars11 May 2026: 8,715 stars18 May 2026: 8,754 stars25 May 2026: 8,801 stars1 Jun 2026: 8,841 stars8 Jun 2026: 8,897 stars15 Jun 2026: 8,940 stars22 Jun 2026: 8,987 stars29 Jun 2026: 9,024 stars6 Jul 2026: 9,067 stars13 Jul 2026: 9,107 stars20 Jul 2026: 9,159 stars27 Jul 2026: 9,208 stars3 Aug 2026: 9,249 stars10 Aug 2026: 9,292 stars17 Aug 2026: 9,328 stars24 Aug 2026: 9,366 stars31 Aug 2026: 9,401 stars7 Sept 2026: 9,431 stars14 Sept 2026: 9,467 stars21 Sept 2026: 9,501 stars28 Sept 2026: 9,523 stars5 Oct 2026: 9,552 stars12 Oct 2026: 9,581 stars19 Oct 2026: 9,617 stars26 Oct 2026: 9,657 stars2 Nov 2026: 9,687 stars9 Nov 2026: 9,722 stars

8,566 on 20 Apr 20269,722 on 9 Nov 2026

From GitHub's daily star counts.

Checked on GitHub.

Overview

Extracts burned-in subtitles from video by sampling key frames, locating text regions, running local PaddlePaddle-based OCR, and removing duplicate lines to write an srt or txt file. It has a GUI (gui.py) and a CLI (backend/main.py), supports batch extraction, and covers 87 languages. Fast, auto and accurate modes trade speed against missed lines and typos; CUDA, DirectML and CPU backends are supported.

Who it is for: Users who need SRT files from hard-subbed videos, offline, on their own machine

Strengths

  • OCR runs locally; no online OCR API keys or services needed
  • Supports 87 languages including Chinese, Japanese, Korean, Arabic and Russian
  • Batch extraction, plus typoMap.json to replace or strip specific recognized text
  • Runs on CPU, NVIDIA CUDA, or DirectML; prebuilt release archives available

Weaknesses

  • Accurate mode is described as very slow; fast mode may drop some subtitles
  • Paths to videos and program must avoid Chinese characters and spaces
  • ONNX path for macOS/ROCm is untested and the README says not to file issues
  • README is Chinese-first and CUDA setup targets 11.8; RTX 50 series needs DirectML

What it needs

  • GPU optional
  • Needs PaddlePaddle 3.3.1, VideoSubFinder, CUDA 11.8 and cuDNN 8.6.0 (NVIDIA GPU), ONNX Runtime DirectML (AMD/Intel GPU)
  • Models: PaddleOCR-based mini and large OCR models

What changed

From the release notes. No flag means the note does not say so, not that the upgrade is safe.

Quick answers

Is video-subtitle-extractor open source?

Yes. Its code is on GitHub under the Apache-2.0 license.

Does video-subtitle-extractor need a GPU?

No. It runs on a CPU and can use a GPU when you have one.

Also in Data and scraping for AI

See all 50
Also in Data and scraping for AI
RankProjectScore
1doclingPython library that converts PDFs, Office files and more into structured text70.4k stars+1,818 (+2.6%) in 30 daysMIT92 out of 100
2mineruParses PDFs, images and Office files into Markdown and structured JSON Live demo ↗ (opens in a new tab)83.5k stars+2,196 (+2.7%) in 30 dayscustom license91 out of 100
3opendataloader-pdfPDF parser that outputs Markdown, JSON with bounding boxes, and Tagged PDF30.3k stars+728 (+2.5%) in 30 daysApache-2.090 out of 100
#4agent-reachCLI that gives coding agents read access to login-gated and Chinese web platforms111.1k starsMIT88 out of 100
#5markitdownPython library and CLI that converts office files, PDFs and audio to Markdown194.9k stars+5,738 (+3.0%) in 30 daysMIT87 out of 100