Skip to main content

Download and transcribe YouTube videos using yt-dlp and whisper-cpp

Project description

yt-transcribe

Download and transcribe YouTube videos using yt-dlp and whisper.cpp. Supports single videos and full channel batch mode with parallel workers.

Install

Homebrew (Apple Silicon Mac)

brew install pascalweiss/tap/yt-transcribe

pipx / uv (any platform, Python 3.10+)

pipx install yt-transcribe
# or
uv tool install yt-transcribe

Requirements: ffmpeg must be available on your PATH.

Usage

Single video

yt-transcribe "https://www.youtube.com/watch?v=VIDEO_ID"

Channel mode

Transcribe all videos from a channel (skips already-transcribed ones):

yt-transcribe --channel "https://www.youtube.com/@CHANNEL" -o ./transcripts --workers 4

Options

Flag Description Default
-m, --model Whisper model name or path to .bin file base
--no-gpu Disable GPU acceleration (Metal) off
-l, --language Language code (en, de, auto, ...) auto
-f, --output-format Output format: txt, vtt, srt, csv, json, all txt
-a, --audio-format Audio download format mp3
-k, --keep-audio Keep audio file after transcription off
-o, --output-dir Output directory $YT_TRANSCRIBE_OUTPUT_DIR or .
-c, --channel Channel URL for batch mode
--min-seconds Skip videos shorter than N seconds 60
--amount Max new videos to transcribe (0 = all) 0
--workers Parallel workers for channel mode 1
--version Show version and exit

License

MIT

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_transcribe-0.2.1.tar.gz (37.2 kB view details)

Uploaded Source

Built Distribution

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

yt_transcribe-0.2.1-py3-none-any.whl (13.0 kB view details)

Uploaded Python 3

File details

Details for the file yt_transcribe-0.2.1.tar.gz.

File metadata

  • Download URL: yt_transcribe-0.2.1.tar.gz
  • Upload date:
  • Size: 37.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for yt_transcribe-0.2.1.tar.gz
Algorithm Hash digest
SHA256 1ff515e8a76e1d8c79ecdbc82c5618602f033129e3ca35a41c3218ef9e080603
MD5 dc8876489b1a5b29af9351162bf5e5a3
BLAKE2b-256 d1589885453e78a019a7df3d7cc51e2108368961213ad7a8e2a7cb349773994e

See more details on using hashes here.

File details

Details for the file yt_transcribe-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: yt_transcribe-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 13.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for yt_transcribe-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 09c7552b5036d6a6713b860732f722b2c1efd8f397f0ebd74f2f15b9befc4dfd
MD5 00824dcb2a07da538d9ce19e3d26941a
BLAKE2b-256 e7394cf1587e7ccda05effa42bee1581601da2eb094254d0ab26888babd45f78

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