CapScript Pro is a comprehensive desktop application for searching, viewing, and processing YouTube video captions, featuring an integrated transcript viewer, clip downloader, video list creator, and renderer.
- β¨ Overview
- π Core Features
- π οΈ Prerequisites
- π Installation & Usage
- π Obtaining a YouTube Data API Key
- π Finding a YouTube Channel ID
- π Notes
- π License
- β€οΈ Support Me
- π Issues & Feature Requests
CapScript Pro, built with Python and PySide6, extends beyond simple caption searching. It offers an integrated transcript viewer with a synchronized video player, a clip downloader, a video list creator, and a clip rendering tool. This powerful suite allows users to efficiently find specific content within YouTube videos, extract relevant segments, and manage video lists.
- π₯οΈ Intuitive GUI: Modern user interface with a collapsible sidebar and custom title bar.
- π Advanced Caption Search: By Channel ID or multiple Video IDs (direct input or
.txtfile), with keyword/phrase and language specification. Includes real-time progress and logging. - πΊ Integrated Transcript Viewer: Load search results or standalone transcript files. Clickable timestamps synchronize with an embedded YouTube video player for instant playback.
- βοΈ Clip Downloader: Download short video clips around matched timestamps using
yt-dlpandffmpeg. Features automatic download and setup of these dependencies. - β Video List Creator: Discover videos by channel, date range, or title keywords. View thumbnails and drag & drop YouTube URLs to add videos. Save lists for use in the Search tab.
- ποΈ Clip Renderer: Concatenate multiple downloaded clips into a single video file using
ffmpeg, with progress updates. - π API Key Management: Securely save your YouTube Data API key locally, with an option to show/hide the key.
- π Dependency Management: Automatically checks for and offers to download
yt-dlpandffmpeg. - π Organized Output: Saves results into structured folders (
transcripts,transcripts/clips,video_lists). - βοΈ Developer & Automation Support: Includes a powerful Command-Line Interface (CLI) for scripting and automated tasks.
- Python: Version 3.8+ recommended. Download Python.
- Python Libraries:
(Or install from
pip install PySide6 google-api-python-client google-auth-httplib2 google-auth-oauthlib youtube-transcript-api requests
requirements.txt:pip install -r requirements.txt)
CapScript Pro can be run in two main ways:
- Download the Latest Release:
- Navigate to the Releases page.
- Download the
CapScriptPro.exefile (or a.ziparchive containing it).
- Run the Application:
- Place the executable (and any accompanying files/folders if from a zip) in a directory.
- Run
CapScriptPro.exe.
- API Key Configuration:
- On first launch, go to the Search tab, enter your YouTube Data API key, and click "Save Key". It's stored locally in
preferences.ini.
- On first launch, go to the Search tab, enter your YouTube Data API key, and click "Save Key". It's stored locally in
- Clone the Repository:
git clone https://github.com/bitArtisan1/CapScript-Pro.git cd CapScript-Pro - Install Dependencies:
pip install -r requirements.txt
- API Key Configuration & Run:
- Launch by running:
python gui_main.py - Configure the API key in the Search tab as described in Method 1.
- Launch by running:
- Run the GUI Application:
python gui_main.py
For automation or command-line preference, use cli.py.
Running the CLI: Navigate to the project directory and execute:
python cli.py [ARGUMENTS]Key CLI Arguments:
--api-key YOUR_API_KEY: (Optional) Provide API key directly.--save-api-key: (Optional) Saves the--api-keytopreferences.ini.--search-type {channel,video}: (Required)--keyword "YOUR_SEARCH_TERM": (Required)--language LANG_CODE: (Optional, default: "en")--output-dir PATH_TO_DIR: (Optional, default: "transcripts")- For
--search-type channel:--channel-id CHANNEL_ID: (Required)--max-results NUMBER: (Optional, default: 10)
- For
--search-type video:--video-ids "ID1,ID2" OR path/to/ids.txt: (Required)
CLI Example: Search the last 5 videos of a channel for "python tutorial":
python cli.py --search-type channel --channel-id "UCxxxxxxxxxxxxxxxxxxxxxx" --keyword "python tutorial" --language "en" --max-results 5 --api-key "YOUR_API_KEY" --save-api-keySearch specific video IDs for "data science":
python cli.py --search-type video --video-ids "dQw4w9WgXcQ,anotherVideoID" --keyword "data science"The CLI shares preferences.ini with the GUI if run from the same root.
- Go to the Google Developer Console and create a new project.
- Navigate to "APIs & Services" > "Dashboard", click "+ ENABLE APIS AND SERVICES", search for "YouTube Data API v3", and enable it.
- Go to "Credentials" > "Create Credentials" > "API key".
- Restrict API Key (Recommended) for security.
- Go to the YouTube channel in your browser.
- The Channel ID is often in the URL:
https://www.youtube.com/channel/UCxxxxxxxxxxxxxxxxxxxxxx. - If not, right-click page > "View Page Source" or "Inspect". Search (
Ctrl+ForCmd+F) forchannelIdorexternalId.
preferences.ini(in application root) stores API key and UI settings.- Downloaded
yt-dlp.exeandffmpeg.exeare in a localbinfolder. - Default output folders:
transcripts,transcripts/clips,video_lists. - Videos without captions in the selected language are skipped.
- Important: Respect YouTube Data API quotas.
This project is licensed under the GNU-GPL-v3.0 License - see the LICENSE file for details.
If you find CapScript Pro useful, consider supporting by:
- β Starring the repository on GitHub
- π£οΈ Sharing the tool
- π‘ Providing feedback and suggestions
- β Following for more updates
Keywords to help users find CapScript Pro:
YouTube SEO, Video Content Strategy, Content Repurposing, Video Clipping Tool, Transcription Software, YouTube Channel Growth, Video Marketing, Python Video Utilities, Open Source Video Projects, Multimedia Tools, YouTube Caption Search, YouTube Transcript Viewer, YouTube Clip Downloader, Subtitle Search Tool, Closed Caption Finder, Timestamped Captions, Batch Video Processing, Automated Video Downloads, Video Keyword Search, yt-dlp GUI, ffmpeg GUI, Desktop Application, Python YouTube Tool
For any issues or feature requests, please open an issue on GitHub. Happy coding!

