A high-performance, modern cross-platform desktop application to retrieve, clean, and format YouTube video transcripts. It strips timestamps, collapses annotations, resolves spacing, and formats transcripts into readable paragraphs—all packaged in a zero-dependency, standalone application using Qt6.
- Head over to the Releases page.
- Download the package for your operating system:
- Windows: Download
YouTubeTranscribeExtractor-Windows.exeand run it directly. - macOS: Download
YouTubeTranscribeExtractor-macOS.dmg, double-click to mount, and drag the app to yourApplicationsfolder. - Linux: Download
YouTubeTranscribeExtractor-Linux.tar.gz, extract, and runYouTubeTranscribeExtractor.
- Windows: Download
| Feature | Description |
|---|---|
| 🚀 Auto-Extraction | Simply paste any YouTube URL or Video ID to fetch the transcript instantly. |
| 🇩🇪 Unicode/Umlaut Support | Flawless handling of German characters (ä, ö, ü, ß) and international symbols. |
| 🧠 Smart Paragraphing | Automatically inserts paragraph breaks where speaker pauses exceed 10 seconds. |
| 📄 PDF & TXT Export | Export fully wrapped transcripts straight to .txt files or formatted .pdf documents via Qt's native layout engine. |
| 🔌 Cross-Platform Standalone | Compiles to native executables on Windows (.exe), macOS (.app / .dmg), and Linux (.tar.gz). |
The application operates as a hybrid C++ Qt GUI and Python scraping backend. The Qt application extracts and runs the Python helper binary dynamically at runtime:
graph TD
A[YouTubeTranscribeExtractor] -->|1. Runs Qt6 GUI| B(App Window)
A -->|2. Extracts Resource| C(TEMP: YouTubeTranscribeExtractor_get_transcript)
B -->|3. Paste URL & click Fetch| D{Execution Mode}
D -->|Dev Mode: get_transcript.py exists| E[Execute python get_transcript.py]
D -->|Prod Mode: standalone| F[Execute TEMP get_transcript]
E -->|Scrapes captions| G[YouTube Captions API]
F -->|Scrapes captions| G
G -->|Return raw UTF-8 text| H[C++ Process: regex clean & auto-formatting]
H -->|Format output| I[Neat Transcript Paragraphs]
If you'd like to clone the repository and make further edits, follow this workflow:
- CLion IDE or CMake
- Qt6 SDK installed (Make sure CMake can locate the library using
-DCMAKE_PREFIX_PATH=<path_to_qt>) - Python 3.10+ (Added to your system PATH)
- Python libraries:
pip install youtube-transcript-api pyinstaller
- Edit Scraper Logic: Edit
get_transcript.py. When you run the C++ app in debug mode, it detects this script locally and executes it using your Python interpreter. - Package the Helper: Once your Python changes are complete, bundle it before compiling the C++ target:
# Windows py -m PyInstaller --onefile get_transcript.py # macOS/Linux pyinstaller --onefile get_transcript.py
- Edit GUI & Build: Make modifications to
main.cppand compile using CMake.
This project is licensed under the MIT License - see the LICENSE file for details.
