Skip to content

zaydkhalid/yt-transcriber

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 

Repository files navigation

YT Transcriber

YT Transcriber is a Windows desktop app that turns any YouTube video or playlist into a transcript saved as a plain text file. Paste one link or a hundred, pick an output folder, and hit Start. The app downloads the audio using yt-dlp, converts it to MP3 with ffmpeg, and transcribes it using Groq's Whisper large-v3 model. Files larger than 24MB are automatically split into 15-minute chunks, transcribed in parts, and reassembled into a single clean output. Playlists expand automatically into individual videos. Everything runs locally on your machine. No browser, no server, no terminal window.

Requirements

Download

Option A: Browser

  1. Click the green Code button at the top of this page
  2. Click Download ZIP
  3. Extract the ZIP to a folder on your computer

Option B: Terminal

git clone https://github.com/zaydkhalid/yt-transcriber.git

Install Dependencies

Open a terminal and run:

pip install groq customtkinter

Install yt-dlp:

pip install yt-dlp

Install ffmpeg by downloading it from ffmpeg.org and adding it to your system PATH. If you use Chocolatey or winget:

winget install ffmpeg

Set Your Groq API Key

The app reads your key from a system environment variable called GROQ_API_KEY. You only need to do this once.

  1. Press Windows + S and search for Edit the system environment variables
  2. Click Environment Variables
  3. Under User variables, click New
  4. Set Variable name to GROQ_API_KEY
  5. Set Variable value to your key from console.groq.com
  6. Click OK on all windows
  7. Restart any open terminals or apps

To verify it is set, open a new terminal and run:

echo %GROQ_API_KEY%

It should print your key.

Run

Double-click YT Transcriber.pyw to launch the app. No terminal window will appear.

If double-clicking opens a text editor instead, right-click the file, select Open with, and choose Python.

Usage

  1. Click Browse to select an output folder (or type a folder name to create one next to the script)
  2. Paste one or more YouTube links into the links box, one per line
  3. Click Start

Transcripts are saved inside your chosen folder under a Transcripts subfolder. Audio files are saved under MP3s. If a transcript already exists for a video, it is skipped automatically.

Optional: Cookies File

Some videos require authentication (age-restricted content, private playlists). To handle these, export your YouTube cookies from your browser and save the file as www.youtube.com_cookies.txt in the same folder as the script. The app will pick it up automatically. This file is listed in .gitignore and will never be committed to version control.

Tech Stack

  • customtkinter for the UI
  • yt-dlp for audio extraction
  • ffmpeg for audio splitting
  • Groq Whisper large-v3 for transcription

Releases

No releases published

Packages

 
 
 

Contributors

Languages