YouTube Design Changes and my peaceful life

Around a week ago YouTube switched my homepage to their new design with very big video previews which is suitable for tablets or smartphones but totally unusable on desktop with reasonable huge screen.

So I searched a way how to disable it, but as almost always there was none. In the end I used “Feedback” function and described how unusable it is on desktop and now (at the time of writing this post) I have older homepage design.

Meanwhile

While YouTube was playing tricks on me I decided to play tricks on YouTube. My first idea was to change the user interface with some UserScript but that failed. The second idea was to simply discard web browser and use YouTube Viewer, to be exact its GTK version to browse and watch videos.

The other big hurdle of YouTube is that videos often do missing or are simply blocked, audio muted, cut and so on. Due to this I decided to create a little video cache. This cache also helps me to get better video quality out of youtube-dl and YouTube-viewer.

Another things is that my machine does not like modern software which supports playing YouTube videos such as MPV (restarts? GPU) or VLC (does not work at all whatever I set in settings) I went for simpler Mplayer which works fine to my surprise.

The goal was to get videos with 1080p or lower with fps 30 or lower. I was unable to set this special condition directly in YouTube Viewer. I decided to create little “proxy” script which will be called from YouTube Viewer with video URL and video title (I am truly lazy here).

Little script

Since youtube-dl is written in Python I also decided to use Python and use youtube-dl python API to call it instead of cli. In this way the script has full control over youtube-dl configuration and I could play.

The biggest hurdle is that youtube-dl does not provide final filename for downloaded video. The only way to get the final filename which is used the script has to parse (with regular expression to have some fun) the debug output of youtube-dl to snatch the real filename in which the file exists or will exist in file system.

In the end I just called mplayer with video filename and title which was provided in argument.

The script is still not up to the standard and only works thanks to luck, use with a caution. You can download it here

Conclusion

I have to thank YouTube for providing me with this oportunity, without I am afraid I would be still mostly locked in YouTube interface, not wanting to go out.

Really big Thanks goes to youtube-dl and youtube-viewer projects. Thank you.

Articles from blogs I follow:

Why is your open source project still hosted on GitHub?

Perhaps the younger generation don't know anything about the past "evils" of Microsoft and naively believe that Microsoft is now the good friend to open source, but the truth is that all Microsoft acquisitions of open source projects is a busi…

via unixdigest.com May 22, 2025

StarFive VisionFive v2 and FreeBSD

This week I powered up the StarFive VisionFive v2 board that I have. I figured I would give FreeBSD another whirl on it, in the vague hope that RISC-V boards are a more cohesive family than ARM boards were five years ago. tl;dr: I didn’t get it to work as…

via [bobulate] May 20, 2025

Steve Ballmer was an underrated CEO

There's a common narrative that Microsoft was moribund under Steve Ballmer and then later saved by the miraculous leadership of Satya Nadella. This is the dominant narrative in every online discussion about the topic I've seen and it's a commo…

via danluu.com October 28, 2024

Generated by openring