CapScript-Youtube-Subtitle-Search-Tool GitHub Details, Stars and Alternatives | OpenRepoFinder
serptail / repository
CapScript-Youtube-Subtitle-Search-Tool
A desktop app for searching YouTube captions across channels or videos, viewing transcripts synced to a video player, downloading clips around matched timestamps, and rendering them into a single file. Also includes a CLI for scripting and automation.
A transparent discovery signal based on current public GitHub metadata.
Recent activity35% weight
100
Community adoption25% weight
23
Maintenance state20% weight
100
License clarity10% weight
0
Project information10% weight
100
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
README preview
CapScript Pro
CapScript Pro is a Windows desktop application for searching YouTube captions at scale, then turning those findings into usable media outputs.
This repository includes:
A modern Qt/C++ desktop app.
An embedded Python engine for yt-dlp transcript fetching and search logic.
A standalone Python CLI for headless/automation workflows.
Find subtitle matches for a keyword across videos.
Review exact timestamps inside the built-in viewer.
Extract clips from the matched moments.
Render clips into a final output video.
Build reusable video ID lists for future runs.
The UI is native Qt (C++), while core YouTube logic is powered by Python.
v2.5 — No more YouTube Data API.
The app no longer uses the YouTube Data API at all. It was too restrictive, had an embarrassingly low quota, and broke constantly — sometimes for no apparent reason. Everything now runs through yt-dlp directly, which is faster, more reliable, and doesn't require you to register an API key, manage credentials, or hit an arbitrary daily limit. Good riddance.
Desktop App Features
Search Page: Handles flexible search queries for videos or channels. Includes advanced network settings (proxy, cookies), language selection, and encrypted credential persistence.
Viewer Page: Displays structured transcripts with clickable timestamps and supports in-app video playback. Allows users to export or import transcript files.
Clip Downloader: Parses transcripts to identify specific clips for download. Supports various formats (mp4, mkv, webm, mp3), quality controls, and uses worker threads for efficient background processing.
Renderer Page: Merges downloaded clips into a single final video using FFmpeg. Auto-detects formats and utilizes stream copying for fast, lossless concatenation.
List Creator: Fetches channel videos based on date ranges or keywords. Provides a selectable list with thumbnail previews and options to export video IDs.
System & Support: Includes an integrated update checker that stages updates automatically.
How the Embedded Python Engine Works
The desktop app starts a bundled Python runtime and imports capscript_engine.py through a C++ bridge.
High-level flow:
The app resolves Python runtime paths near the executable.
PythonBridge initializes Python with controlled module search paths.
C++ invokes Python functions for:
Proxy settings storage/loading.
Channel resolution and video lookups.
Transcript search execution.
Search progress is sent back into C++ via callback trampolines and displayed in UI/CLI.
This split keeps the UI native and fast while preserving Python ecosystem advantages for YouTube-related operations.
python cli.py --proxy-type generic --proxy-url "http://1.2.3.4:8080" --save-proxy
python cli.py --search-type video --video-ids abc123 --keyword test
Troubleshooting
Python engine fails to initialize in app: Ensure python/ exists near the executable and contains runtime artifacts (Lib, python3xx zip, required modules).
No transcript results: Try --cookies-from-browser or a cookies.txt file, and verify the language code is available for each video.
Clip download/render not working: Confirm yt-dlp and ffmpeg are installed and discoverable. Check app logs for tool path and process errors.
Rate limiting or access errors: Use --cookies-from-browser to pass your browser session. Reduce parallel activity and retry later.
Bugs
Please report bugs by opening an issue on GitHub.
License
This project is licensed under the MIT License + Commons Clause v1.0.
You are free to use, modify, and distribute this software for free, but you may not sell it or offer it as a paid/SaaS service.