Skip to main content

Download YouTube videos, generate and translate subtitles

Project description

yt-srt-gen

yt-srt-gen is a Python tool for downloading YouTube videos, generating subtitles using OpenAI Whisper, and translating them into another language (e.g., English) automatically.

Features

  • Download YouTube videos using yt-dlp.
  • Generate subtitles with OpenAI Whisper.
  • Translate subtitles to a target language using googletrans.
  • Supports multiple subtitle formats: srt, vtt, txt, tsv, json.

Installation

You can install yt-srt-gen via pip:

pip install git+https://github.com/fertkir/yt-srt-gen.git

Or clone the repository and install manually:

git clone https://github.com/fertkir/yt-srt-gen.git
cd yt-srt-gen
pip install .

Usage

yt-srt-gen <YouTube URL> [OPTIONS]

Arguments

  • <YouTube URL>: URL of the YouTube video.

Options

  • --ydl-format: Format for yt-dlp (default: bestvideo+bestaudio/best).
  • --model: Whisper model to use (default: turbo).
  • --device: Device for Whisper (cpu or cuda, default: cpu).
  • --source-language: Language spoken in the audio (default: sr).
  • --target-language: Language for translated subtitles (default: en).
  • --output-format, -f: Subtitle output format (txt, vtt, srt, tsv, json, all, default: srt).

Example

yt-srt-gen https://www.youtube.com/watch?v=dQw4w9WgXcQ --source-language es --target-language en --output-format srt

This will download the video, generate Spanish subtitles, and append English translations.

Dependencies

  • yt-dlp - for downloading YouTube videos.
  • openai-whisper - for automatic subtitle generation.
  • googletrans - for translating subtitles.
  • tqdm - for showing progress bars.

License

This project is licensed under the GPL-3.0-or-later license.

Author

Kirill Fertikov — kirill.fertikov@gmail.com

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

yt_srt_gen-0.1.1.tar.gz (15.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

yt_srt_gen-0.1.1-py3-none-any.whl (16.3 kB view details)

Uploaded Python 3

File details

Details for the file yt_srt_gen-0.1.1.tar.gz.

File metadata

  • Download URL: yt_srt_gen-0.1.1.tar.gz
  • Upload date:
  • Size: 15.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for yt_srt_gen-0.1.1.tar.gz
Algorithm Hash digest
SHA256 15c1b471a8386ae959319f0b0829e0ca757dcc4af58cee45fcacaf6266b605e9
MD5 e4af2742c1f74bf53fe8b28727b4a2b5
BLAKE2b-256 cb2800232d2537deff6da5f090593d42287542f506cde6d6176255574a2afc7a

See more details on using hashes here.

File details

Details for the file yt_srt_gen-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: yt_srt_gen-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 16.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for yt_srt_gen-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 00dee9c304102a1e00cf6896ebe83c84899323de585c91efe65e1810cb765879
MD5 c495dc5f6ec41ba97ad18d987604ea76
BLAKE2b-256 d81bbb2aca4ea8d43183a5dcd580871368bfb8021d595fa03560ad5060685e03

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page