Ask HN: Anyone set up ways to easily obtain and read transcripts from Ted, YT?

I really absorb text a great deal better than listening to audio or watching video. I've heard others say the same and attribute to ADHD, so perhaps that's the case for me.

TED very often has a transcript on their page, but it involves some clicking and then some copy-pasting, and the text result is often broken mid-clause after about 10-15 characters.

I'm wondering if there's any useful userscripts, userstyles, or other methods that handle this. (I think TED often sues people who try to make transcripts easily available on a separate site. I may be mistaken, and TED, please don't sue me, it's just a general feeling.)

The same request would apply to YouTube and/or other popular video sites, but I run into this issue most often with TED.

My thanks in advance to anyone who can help me on this!

4 points | by MollyRealized 20 hours ago

3 comments

  • david51232 2 hours ago
    For single videos I use the bookmarklet from here https://ytbulktranscript.app/bookmarklet
  • loveparade 17 hours ago
    I built my own pipeline for this because in my experience the YouTube auto transcripts are quite bad.

    I download the raw audio track with yt-dlp, give it to qwen asr for raw transcription, then DeepSeek flash for transcription cleanup, formatting, corrections with web search enabled, etc. I use openrouter to call the models. It's a few cents per video (mostly the asr model at ~12 cents per hour) and quality is great. You could probably use a local asr model if you want to save money, I just don't bother because it's so cheap already.

    That only makes sense for videos that don't have official (not auto-generated) transcripts of course. If there are official transcripts that are good you can just get them directly with yt-dlp.

  • toomuchtodo 20 hours ago
    • MollyRealized 19 hours ago
      yt-dlp --skip-download --write-sub --write-auto-sub --sub-lang en --sub-format json2 "[1]"

      [TedTalk] Extracting URL: [1]

      [TedTalk] luvvie_ajayi_jones_how_to_be_a_professional_troublemaker: Downloading webpage

      ERROR: the JSON object must be str, bytes or bytearray, not NoneType

      exit 1

      [1] - full URL is: https://www.ted.com/talks/luvvie_ajayi_jones_how_to_be_a_pro...

      • sandreas 18 hours ago
        Did you try

          yt-dlp --update-to master
        
        YouTube tries to shut down yt-dlp and sometimes it is good to have the absolute latest code.