Repository navigation
Releases: Interstellar0verdrive/SubVision
Release list
SubVision v1.0.0
📦 Install
- Download Source code (zip) from the Assets list at the bottom of this page.
- Unzip it.
- Double-click
run.command(first time: right-click → Open). It sets up everything and opens the app in your browser.
Requires macOS 10.15+, Python 3.10+ and ffmpeg (brew install ffmpeg).
Sample material to try the tool: see the Demo material release.
First public release of SubVision: extract hardcoded (burned-in) subtitles from videos into clean .srt files using Apple's native OCR (Vision / LiveText), with a review step so you can fix what the OCR got wrong.
Highlights
- Multi-engine OCR voting: every frame is read in several versions (raw, contrast+sharpen, grayscale, plus the LiveText engine on macOS 13+), and the text is picked by a confidence-weighted majority vote, per frame and per subtitle.
- Timing refined at the native frame rate: subtitle start/end are recomputed frame by frame at the video's own frame rate (~±20 ms).
- Signs band
{\an8}: an optional top band for translated signs/banners, written as top-positioned subtitles. - Interactive review report (
.revisione.html): a single offline HTML file where you can edit lines, pick alternative readings with one click, recover dropped lines, fill long gaps, fix times and save the reviewed SRT. - Balanced line wrapping: 2–3 line breaks placed after punctuation, never right after articles or prepositions.
- Bilingual UI (English / Italian) with a remembered language preference; the review report follows the UI language.
- Preview tab (sample frames with text, crop overlay, live OCR test) and a Sub fix tab to clean up existing SRTs.
- Version footer and a lightweight update check (at most once a day, silent offline).
Requirements
- macOS 10.15+ (Apple Vision; LiveText on macOS 13+)
- ffmpeg:
brew install ffmpeg - Python 3.10+
Install with git
git clone https://github.com/Interstellar0verdrive/SubVision.git
cd SubVision
./run.commandrun.command creates a virtualenv, installs the dependencies on first run and starts the GUI in your browser. Put your videos in ./videos.
Demo material
Sample clips (Sintel, CC-BY), the SRTs extracted from them and the review reports are in the separate Demo material release.
See the README for the options guide and the Sintel demo.
Demo material (Sintel, CC-BY)
Sample material to try SubVision — not needed to use the tool. To get SubVision itself, download the latest release.
What's here
| File | What it is |
|---|---|
sintel_ita_hardsub_demo.mp4 / sintel_eng_hardsub_demo.mp4 |
55-second dialogue clips from Sintel with Italian / English hardcoded (burned-in) subtitles, ~9 MB each |
sintel_ita_hardsub_demo.srt / sintel_eng_hardsub_demo.srt |
the SRT files extracted by SubVision from those clips |
sintel_ita_hardsub_demo.revisione.html / sintel_eng_hardsub_demo.revisione.html |
the interactive review report of each run (download, then open it in a browser) |
To try it: put a clip in SubVision's ./videos folder, start the app and press Start OCR, then compare the result with the SRT here.
(The "Source code" archives of this release only contain the README screenshots, not the tool.)
Attribution
Video: clips from Sintel, the Blender Foundation open movie — © copyright Blender Foundation | durian.blender.org — licensed under CC-BY 3.0. Subtitles burned in for demo purposes.