This repository uses yt-dlp and OpenAI's Whisper to generate subtitle files for any youtube video.
To get started, you'll need Python 3.7 or newer. Install the binary by running the following command:
pip install git+https://github.com/m1guelpf/yt-whisper.git
You'll also need to install ffmpeg, which is available from most package managers:
# on Ubuntu or Debian
sudo apt update && sudo apt install ffmpeg
# on MacOS using Homebrew (https://brew.sh/)
brew install ffmpeg
# on Windows using Chocolatey (https://chocolatey.org/)
choco install ffmpegThe following command will generate a VTT file from the specified YouTube video
yt_whisper "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
The default setting (which selects the small model) works well for transcribing English. You can optionally use a bigger model for better results (especially with other languages). The available models are tiny, tiny.en, base, base.en, small, small.en, medium, medium.en, large.
yt_whisper "https://www.youtube.com/watch?v=dQw4w9WgXcQ" --model medium
Adding --task translate will translate the subtitles into English:
yt_whisper "https://www.youtube.com/watch?v=dQw4w9WgXcQ" --task translate
Run the following to view all available options:
yt_whisper --help
This script is open-source and licensed under the MIT License. For more details, check the LICENSE file.