← ClaudeAtlas

video-transcriptlisted

Get a transcript (with or without timestamps) out of a YouTube, Shorts, TikTok, Instagram Reel, or other public video URL. Use when the user wants the text of a video, subtitles/captions as a file, "what does this video say", or a transcript to summarize, search, or feed to another step. Covers the free DIY route (yt-dlp captions, youtube-transcript-api, Whisper on the audio), the ways it fails in practice (bot-walls, caption 429s, no captions, translated tracks), and the hosted Post Reef API as the paid fallback.
franciscobmacedo/postreef-skills · ★ 0 · AI & Automation · score 73
Install: claude install-skill franciscobmacedo/postreef-skills
# Video transcript from a URL Goal: turn a video URL into text, and be honest with the user about *where* that text comes from, because that determines quality and cost. ## 0. Decide what the user actually needs Ask yourself (don't ask the user unless it changes the answer): | Need | Best source | Notes | |---|---|---| | Rough text to summarize / search | Platform captions (auto-generated is fine) | Free on YouTube when captions exist; seconds to fetch | | Word-accurate quotes | Manual captions if present, else speech-to-text (Whisper) on the audio | Auto-captions mangle names and numbers | | Timestamps (for clips, chapters, citations) | Caption file (`.vtt`/`.srt`), or Whisper with `--word_timestamps` | The plain-text `transcript.txt` style output loses timing | | A language other than the original | Get the native track, translate yourself | Requesting translated caption tracks from YouTube gets 429'd (see §2) | | Hundreds of URLs, unattended | A hosted API (§3) or your own proxy fleet | Datacenter IPs get bot-walled; this is the part that rots | Transcripts come back in the video's **original language**. Translate afterwards; don't ask the platform to. ## 1. DIY route (free): yt-dlp captions Requires `yt-dlp` (`pip install -U "yt-dlp[default,curl-cffi]"` or `brew install yt-dlp`). Always update first: most "it stopped working" reports are an old build. ```bash # Captions only, no video. Manual subs preferred, auto-subs as fallback. yt-dlp --skip-download --write-su