Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/m1guelpf/yt-whisper
Using OpenAI's Whisper to automatically generate YouTube subtitles
https://github.com/m1guelpf/yt-whisper
ffmpeg openai openai-whisper subtitles subtitles-generated transcribe whisper youtube youtube-dl
Last synced: 1 day ago
JSON representation
Using OpenAI's Whisper to automatically generate YouTube subtitles
- Host: GitHub
- URL: https://github.com/m1guelpf/yt-whisper
- Owner: m1guelpf
- License: mit
- Created: 2022-09-22T16:29:29.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-01-16T09:18:11.000Z (10 months ago)
- Last Synced: 2024-10-29T17:28:14.862Z (10 days ago)
- Topics: ffmpeg, openai, openai-whisper, subtitles, subtitles-generated, transcribe, whisper, youtube, youtube-dl
- Language: Python
- Homepage:
- Size: 15.6 KB
- Stars: 1,360
- Watchers: 18
- Forks: 139
- Open Issues: 24
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-whisper - yt-whisper - YouTube subtitle generation. (CLI tools / Self-hosted)
- awesome-openai-whisper - Automatic YouTube subtitle generation
- StarryDivineSky - m1guelpf/yt-whisper
README
# Automatic YouTube subtitle generation
This repository uses `yt-dlp` and [OpenAI's Whisper](https://openai.com/blog/whisper) to generate subtitle files for any youtube video.
## Installation
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`](https://ffmpeg.org/), which is available from most package managers:
```bash
# 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 ffmpeg
```## Usage
The 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
## License
This script is open-source and licensed under the MIT License. For more details, check the [LICENSE](LICENSE) file.