Posts / self-hosting

Running Your Own YouTube: The Case for Self-Hosted Video


Something came across my feed this week that I’ve been sitting with. A developer released a self-hosted web player called YT-DLP Web Player, built on top of yt-dlp, that essentially lets you watch YouTube (and most other video sites) without ads, with SponsorBlock built in, and with a player that doesn’t treat you like a hostile entity who needs to be managed.

The reaction in the comments was roughly what you’d expect: people excited, people confused, a few people pointing out it needs a server backend before you can do anything with it. One person admitted they got overexcited and tried to use just the browser extension before realising the server was the whole point. Relatable energy, honestly.

I’ve been in and around this space for a while. Running Pi-hole, using uBlock Origin, briefly flirting with Invidious before Google started playing whack-a-mole with IP bans. The question of whether any of this is worth the effort is one I return to every few months. My answer keeps changing depending on how annoyed I am at the time.

The practical case is actually pretty solid. DNS-based blocking doesn’t touch YouTube ads because Google serves them from the same domain as the content. uBlock Origin still works, but it increasingly triggers anti-adblock delays. YouTube Premium solves all of this cleanly, which is kind of the point: they’ve engineered the problem and then sold you the solution. That’s not a conspiracy theory, it’s just a business model.

What I find more interesting than the ad-blocking angle is the SponsorBlock integration. If you haven’t used it, it’s a community-sourced database of video segments: sponsored reads, self-promotion, outros that are 90 seconds of someone asking you to subscribe. The idea that users collectively annotate videos to help each other skip the noise is one of those small internet things that still feels genuinely good. It shouldn’t work as well as it does, but it does.

The TV situation is where this all gets complicated. The developer is honest about it: smart TVs are deliberately awkward for unofficial apps, and casting from your phone is the current workaround. Someone in the comments made the point that they keep coming back to Premium because the TV experience is just there, and I get that. There’s a real cost to friction, and it compounds across every device in the house. I’m not going to pretend self-hosting is for everyone. It requires a machine running somewhere, some comfort with Docker or similar, and a tolerance for things occasionally not working at 9pm when you just want to watch something.

I’ve got a home server that handles a few things already, so the marginal cost of spinning something else up is low for me. For someone without that setup, the calculus is different.

What keeps pulling me back to projects like this isn’t the ad avoidance, honestly. It’s something harder to articulate: a mild resistance to the idea that the only legitimate way to watch a video is the one a corporation has decided is legitimate. YouTube is increasingly a platform that tolerates its users rather than serves them. Background playback on mobile is a Premium feature. Watching a video without a mid-roll ad requires either payment or a game of cat and mouse with their detection systems.

I don’t know where that ends. I genuinely don’t. The infrastructure YouTube runs is enormous and someone has to pay for it, and I don’t have a clean answer for that tension. But I’m also not going to pretend that the current arrangement is neutral.

Projects like this one exist in a grey space. They’re legal, they use the same data your browser would request anyway, and the developer has been careful to note it won’t work for pirated content. But Google doesn’t love them, and the IP ban question hanging over self-hosted Invidious instances is a real one. One person in the thread mentioned getting banned for a few days twice over six months while running their own instance. That’s not catastrophic, but it’s a reminder that you’re operating at the tolerance of a platform that can change the rules.

Worth trying if you’ve got the setup for it. Worth knowing about even if you don’t.