Why we disabled proxy in invidious.protokolla.fi
As I am writing this article, logged in users haven't been able to watch videos for couple of days with DASH enabled.
On Invidious you often don't have the same quality options as on YouTube. This is because the audio and video streams are separated and Invidious currently can't sync them together.
DASH is a streaming technique used by YouTube to provide resolutions higher than 720p by providing multiple files for a client to use depending on network and user preferences.
You can enable DASH by selecting the appropriately named video quality in the settings or by appending &quality=dash to the end of a video's URL. With this option enabled, the stream is proxied through Invidious for you to then watch at a higher or automatic quality.
DASH allowed users to bypass geoblocking and watch higher quality than 720p. DASH would also hide the user completely from Youtube. Even the video would be loaded through the invidious server.
Previously Google had blocked this server just one or two times in three months, but now we have been blocked two times in the past two weeks. First blockage was avoided by buying a new IPv4 but after just a few days, it stopped working. Google had blocked it also. Buying new IPv4 addressess is just too pricey.
The instance could use a big IPv6 subnet to load videos from Youtube, but here comes my problem. I couldn't configure Docker and IPv6 to work correctly together. I got to a point where Docker containers would get an IPv6 address but they would still be blocked from Youtube. At that point debugging became very hard.
I think that the most important thing for this service is to keep running, even if this would mean dropping DASH/proxy support. I can consider implementing some sort of solution to this later, but be prepared that for the next months this instance won't offer video proxying. This also greatly reduces network load (the instance was multiple times using the whole 1 Gbps port and service started struggling due to that).