Using yt-dlp with IINA and mpc-hc to avoid awful websites and geo-blocking

youtube-dl is an amazing command-line tool to download video from not just YouTube but a whole bunch of websites. yt-dlp is a fork that is better maintained and has additional features I wouldn’t want to miss anymore, mainly the SponsorBlock integration. SponsorBlock is a fantastic community-powered resource that helps you skip sponsor segments in YouTube videos.1
yt-dlp can be used as a drop-in replacement for youtube-dl.

GUI integration (macOS)

The best part is that you can use the power of these tools not only on the CLI. Plenty of GUI applications allow you to integrate them. On the Mac I’ve long switched from VLC to the more native and polished IINA, which allows you watching anything these tools can access directly in a native GUI video player. The docs explain how to integrate it. You can even install a browser extension that will give you a button to start playing the video of your current website in IINA.

GUI integration (Windows)

On Windows, my media player of choice is the clsid2 fork of mpc-hc, a continuation of “Media Player Classic” that I had already been using 20 years ago – long before I switched to Apple for personal computing. Details are in the Readme, but it is as easy as dropping the yt-dlp.exe file into the same folder. Afterwards the “Open URL” dialog will accept YouTube (and other supported) links. Be sure to check out Chocolatey for installing both mpc-hc and yt-dlp. It’s not as neat as Homebrew, but Windows has come a long way.

y tho?

You might be wondering: But… the video is right there on the website already. Why not just watch it there? And with the SponsorBlock browser extension that’s perfectly fine for YouTube videos. If you don’t want to pay for Premium, this would allow you to skip YouTube’s own ads, though.

More importantly, as I mentioned earlier: These tools don’t just work with YouTube. You’ll find that they work with almost any somewhat popular video platform. For example the Comedy Central website, which unfortunately makes many of their videos not available here in Germany. Luckily, their geo-blocking implementation is done at the website level, not the video level – and can easily be skipped by using these tools.2

And finally, a lot of websites just suck and have terrible video players. It’s nice to always be able to fall back onto something more reliable.

  1. I feel for creators, but life is too short for ads. That’s why I pay for YT Premium and support people directly via Patreon and similar platforms. ↩︎

  2. For more sophisticated geo-blockers like YouTube you can set a proxy to bypass them with yt-dlp as well. ↩︎