[HN Gopher] Yt-transcriber - Give a YouTube URL and get a transc...
___________________________________________________________________
Yt-transcriber - Give a YouTube URL and get a transcription
Author : Bluestein
Score : 148 points
Date : 2025-07-22 13:51 UTC (9 hours ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| cmaury wrote:
| Thanks for sharing. This is exactly the type of utility that
| vibecoding is for. It takes 5 secons to ask GPT to write a scripr
| to do this tailored to your specific use case. It's way faster
| than trying to get someone elses repo up and running.
| Bluestein wrote:
| Sure thing ...
|
| And, yes, indeed, AI-coding is order-of-magnitude having an
| effect along the lines that "low-code" was treading ...
|
| ... also, for less-capable coders or "borderline" coders the
| effort/benefit equation has radically shifted.-
| sannysanoff wrote:
| Selfware.
|
| https://old.reddit.com/r/ChatGPTCoding/comments/1lusr07/self...
|
| Gonna be lots of posts of selfware like that soon.
| Bluestein wrote:
| I think you either coined (kudos) or spotted the true "term
| du jour" here.-
| sannysanoff wrote:
| people don't even get it :-]
| cmaury wrote:
| I like it, though I'm sure we'll end up being stuck with
| "vibe ware"
| mikeve wrote:
| Interesting project! I've been working on a project in this space
| myself (WaveMemo)
|
| I must say, speaker diarization is surprisingly tricky to do. The
| most common approach seems to be to use pyannote, but the quality
| is not amazing...
| ethan_smith wrote:
| For better diarization quality than pyannote, check out
| Whisper-DiarizationX which combines Whisper with ECAPA-TDNN
| speaker embeddings and spectral clustering.
| paulirish wrote:
| Can also just fetch the subs already in YouTube rather than
| retranscribing. eg:
|
| yt-dlp --write-auto-subs --skip-download
| "https://www.youtube.com/watch?v=7xTGNNLPyMI"
| toomuchtodo wrote:
| It's a good call out. I leverage yt-dlp as a library for
| downstream tooling (archival of media to long term storage
| repositories), and always recommend folks rely on yt-dlp
| whenever possible due to the ecosystem of folks grinding to
| keep their extractors current. Their maintainers are both
| helpful and responsive.
|
| (with that said, I do not want to diminish OP's work in any
| way; great job! "What I cannot build, I do not understand" -
| Feynman)
| paulirish wrote:
| Same, yup. OP is indeed already using yt-dlp for the video
| download. (Then Whisper for transcribing,
| Ollama/lmstudio/OpenAI for summarizing)
| hiAndrewQuinn wrote:
| Minus the summarization, that is the same pipeline I use in
| [1] for generating listening practice Anki flashcards for
| foreign language students. It surprised me that nobody had
| really built out a program I could find around yt-dlp and
| Whisper for this kind of use case even a few years after it
| came out.
|
| [1]: https://github.com/hiAndrewQuinn/audio2anki
| Jerry2 wrote:
| Yep. You can also automatically save them if you use mpv to
| watch YT: https://github.com/nick-s-b/mpv-transcript discovered
| this script yesterday.
| adamgordonbell wrote:
| Recently, I was working on a similar project and I found that
| grabbing the transcripts quickly leads to your IP being blocked
| for the transcripts.
|
| I ended up doing the same as this person, downloading the MP4s
| and then transcribing myself. I was assuming it was some sort
| of anti LLM scraper feature they put in place.
|
| Has anyone used this --write-auto-subs flag and not been
| flagged after doing 20 or so videos?
| hamiecod wrote:
| ---write-auto-subs gets your IP banned for 12/24 hours if you
| download video subtitles in bulk but if the subtitles are
| downloaded with sufficient time gap in between, the ban is
| not triggered.
|
| My startup has to utilize youtube transcriptions so we just
| subscribe to a youtube transcriptor api hosted on rapidapi
| that downloads subtitles. 1$ per 1000 reqs. Pretty cheap
| MysticOracle wrote:
| Yep, this happened to me & got IP banned for a day.
| ldenoue wrote:
| Unless you fetch directly from your browser. It works by
| getting the YouTube json including the captions track. And
| then you get the baseUrl to download the xml.
|
| I wrote this webapp that uses this method: it calls Gemini in
| the background to polish the raw transcript and produce a
| much better version with punctuation and paragraphs.
|
| https://www.appblit.com/scribe
|
| Open source with code to see how to fetch from YouTube
| servers from the browser
| https://ldenoue.github.io/readabletranscripts/
| thangalin wrote:
| systemctl start tor yt-dlp --proxy
| socks5://127.0.0.1:9050 --write-subs --write-auto-subs
| --skip-download [URL]
|
| See: https://github.com/noobpk/auto-change-tor-ip
| mckirk wrote:
| I've found the YT transcripts to be severely lacking sometimes,
| in accuracy and features. Especially speaker identification is
| really useful if you want to e.g. summarize podcasts or
| interviews, so if this project here delivers on that then it's
| definitely better than the YT transcripts.
| stanleykm wrote:
| I've had some success with running them through another LLM
| to have it clean up the transcription errors based on the
| context. But this obviously does nothing for speaker
| identitication.
| paulirish wrote:
| An approach I've been using recently is to rely on
| pyannote/tinydiarize only for the speaker_turn timestamps,
| but prefer the larger model (or in this case YT's
| autotranscript) for the actual text.
| ldenoue wrote:
| Check out https://ldenoue.github.io/readabletranscripts/
| and the website https://www.appblit.com/scribe that use
| Gemini to post correct the raw transcripts
| rpastuszak wrote:
| IIRC YT also has a "private" API you can call directly (or via
| an npm package: youtube-transcribe).
|
| (I'm using it in https://butter.sonnet.io)
| 0points wrote:
| Youtube already offers AI transcriptions on their site. As
| another commenter points out, you grab them with yt-dlp.
|
| And unlike how your tool will be supported in the future,
| thousands of users make sure yt-dlp keeps working as google keep
| changing the site (currently 1459 contributors).
| passivegains wrote:
| the volunteer open source effort behind youtube-dl and its
| forks/descendants are so impressive in large part because of
| how many features they provide and thus have to maintain:
| https://github.com/yt-dlp/yt-dlp#usage-and-options this tool
| won't provide the list of available thumbnails or settings for
| HTTP buffer size, but I think that's a pretty reasonable
| tradeoff.
| swyx wrote:
| if you used this in earnest sufficiently, you'd know yt default
| transcripts are not good enough because youtube often (ok say
| 5% of time) fails to transcribe videos particularly livestreams
| and shortly after release.
|
| youtube also blocks transcript exports for some things like
| https://youtubetranscript.com/
|
| retranscribing is necessary and important part of the creator
| toolset.
| isubkhankulov wrote:
| I've been using this free tool. It gives quality diarized
| transcripts https://contentflow.megalabs.co
| Leftium wrote:
| Two similar Show HN projects:
|
| - This python one is more amenable to modding into your own
| custom tool: https://hw.leftium.com/#/item/44353447
|
| - Another bash script: https://hw.leftium.com/#/item/41473379
|
| ---
|
| They all seem to be built on top of:
|
| - yt-dlp to download video
|
| - whisper for transcription
|
| - ffmpeg for audio/video extraction/processing
| eigenvalue wrote:
| I made a tool like this a while ago which was useful for
| transcribing a whole playlist automatically using whisper:
|
| https://github.com/Dicklesworthstone/bulk_transcribe_youtube...
|
| I ended up turning a beefed up version of it which makes polished
| written documents from the raw transcript, you can try it at
|
| https://youtubetranscriptoptimizer.com/
| totallynotryan wrote:
| Hey all, I built a 100% free (no-signup) youtube summarizer:
| "https://youtube-summarizer-lime.vercel.app/". Accurate summaries
| in under 8 seconds.
| 93po wrote:
| bookmarked, thanks, the top google search results always
| require sign-up. frustrating state of the internet
| dudeWithAMood wrote:
| How did you get around youtube blocking cloud IP ranges? Are
| you suing residential proxies?
| lpeancovschi wrote:
| Youtube's T&C don't allow downloading youtube audio/video. How do
| other services get away with it?
| MysticOracle wrote:
| I think they use rotating IP/Proxy services
| lpeancovschi wrote:
| Might be, but I think google would still be able to chase
| them down.
| nadermx wrote:
| "The court held that merely clicking on a download button does
| not show consent with license terms, if those terms were not
| conspicuous and if it was not explicit to the consumer that
| clicking meant agreeing to the license."
|
| https://en.m.wikipedia.org/wiki/Specht_v._Netscape_Communica...
| lpeancovschi wrote:
| I'm not a lawyer but I think even if you offset the legal
| responsibilities to the user by alerting them with copyrights
| prompt it's still illegal to download youtube videos.
| nadermx wrote:
| United States v. Auernheimer, 748 F.3d 525 (3d Cir. 2014).
| Specifically, on page 12, footnote 5, the court states:
|
| "We also note that in order to be guilty of accessing
| 'without authorization, or in excess of authorization'
| under New Jersey law, the Government needed to prove that
| Auernheimer or Spitler circumvented a code- or password-
| based barrier to access... The account slurper simply
| accessed the publicly facing portion of the login screen
| and scraped information that AT&T unintentionally
| published."
| manishsharan wrote:
| Will this make Google mad at me and cancel/freeze all my Google
| services ?
| labrador wrote:
| Many channels I follow, such as Vlad Vexler, have taken measures
| so you can't download the transcript with yt-dlp. Furthermore,
| they don't provide a transcipt option on their videos. I assume
| this is to prevent people from just reading AI summaries, which
| is annoying in Vexler's case because he talks slowly and meanders
| around. If I really want to hear his point but don't want to
| listen to that then I download the video with yt-dlp and use
| Whisper to transcribe it.
| Bluestein wrote:
| ... the ... slower ... the guy the ... less ... content ... and
| ... more ... advertising.-
| rs186 wrote:
| Curious, if you don't find this "annoying", why are you still
| following the channel? There must be other YouTube channels
| that offer similar content but deliver it in a better way.
| arkaic wrote:
| On this note, is Ytube also the best transcriber of foreign
| languages or is there something better?
| MysticOracle wrote:
| For (English only) speech-to-text, NVIDIA's Parakeet-V2 is
| significantly faster than Whisper and I found it to be more
| accurate.
|
| https://huggingface.co/nvidia/parakeet-tdt-0.6b-v2
|
| For Apple Silicon (MLX)
| https://huggingface.co/senstella/parakeet-tdt-0.6b-v2-mlx
| driscoll42 wrote:
| Compared to all Whister models? Or the faster ones? And which
| version of Whisper? All for a faster, more accurate model, but
| need a bit more.
| ipsum2 wrote:
| All of them, in my experience.
| driscoll42 wrote:
| Fair, looking at the ASR leaderboards it is truly better -
| https://huggingface.co/spaces/hf-audio/open_asr_leaderboard
| and NVIDIA's Canary might be even better? Will try these
| out. Appreciate bringing these to my attention!
| dudeWithAMood wrote:
| I did something similar piping the output of the youtube-
| transcript-api python package to openAI's api:
| https://github.com/DavidZirinsky/tl-dw/
| toddmorey wrote:
| Always fascinated to read CLAUDE.md files that are appearing in
| more and more open source projects:
| https://github.com/pmarreck/yt-transcriber/blob/yolo/CLAUDE....
|
| I'd be really curious to see some sort of benchmark / evaluation
| of these context resources against the same coding tasks. Right
| now, the instructions all sound so prescriptive and
| authoritative, yet is really hard to evaluation their
| effectiveness.
___________________________________________________________________
(page generated 2025-07-22 23:01 UTC)