Shameless self-promotion: andunieee/cathode (gtk4 desktop app) can give you a non-bait interface to YouTube that works.
Now this project gives me some ideas of things to implement:
- pick the thumbnail from the middle of the video
- allow curated subscriptions, i.e. I subscribe to some curated list made by someone (in this case it could be the database of videos Karpathy has gathered from HN, but there could be others)
At some point I was almost implementing DeArrow support, but using it for a while I don't think it is too great, often the alternative titles people give are unreliable, and honestly I don't know how they exist without being spammed or trolled to death. I do have SponsorBlock support though (I feel like SponsorBlock would work better if it allowed high-quality AI bots to submit blocks though).
Cathode, a gtk4 YouTube player based on yt-dlp and mpv
preview.redd.it
andunieee/cathode
I made this because I had always wanted it, and libmpv made it possible.
Just starting mpv with a YouTube URL never worked 100% for me, I think because it tried to stream the video, I'm not sure. Cathode downloads everything before starting to play. And predownloads stuff in a queue, caches downloaded videos for a couple of days, and does other things unrelated to mpv but that you may also find interesting.
I also implemented most of the mpv keybindings on top of the gtk video component because they are so good.
Please send me feedback if you have any. Thanks!
1 point
Cathode, a YouTube player based on yt-dlp and mpv with all the features I needed
andunieee/cathode
I can finally stop using the YouTube website completely after this. It works pretty great, with persistent queues, pre-downloading (so no buffering), restricted mode for parental control, video suggestions, local subscriptions, SponsorBlock integration, it also can make local collections and even play local directories.
My only issue now is how to distribute this properly to make it easy and smooth for people to install and use. Even if I was accepted at Flathub I don't know if it would make sense, as the app wouldn't be able to access local directories shared with it, right? But I guess we can live without that feature if it's just a YouTube client.
4 points · 1 comment
Show HN: Cathode, a Gtk4 YouTube player based on mpv and yt-dlp
I've wanted this for years and didn't understand why no one had made one: a YouTube client that I can actually use daily.
It has a queue of videos, it has local subscriptions, it downloads all the videos fully before playing, so no buffering ever (and downloads everything that is the queue), it has a restricted mode that works great for children, a bunch of other niceties for sane consumption of YouTube content in our age, written in Rust.
5 points
Mentions
Shameless self-promotion: andunieee/cathode (gtk4 desktop app) can give you a non-bait interface to YouTube that works. Now this project gives me some ideas of things to implement: - pick the thumbnail from the middle of the video - allow curated subscriptions, i.e. I subscribe to some curated list made by someone (in this case it could be the database of videos Karpathy has gathered from HN, but there could be others) At some point I was almost implementing DeArrow support, but using it for a while I don't think it is too great, often the alternative titles people give are unreliable, and honestly I don't know how they exist without being spammed or trolled to death. I do have SponsorBlock support though (I feel like SponsorBlock would work better if it allowed high-quality AI bots to submit blocks though).
Cathode, a gtk4 YouTube player based on yt-dlp and mpv preview.redd.it andunieee/cathode I made this because I had always wanted it, and libmpv made it possible. Just starting mpv with a YouTube URL never worked 100% for me, I think because it tried to stream the video, I'm not sure. Cathode downloads everything before starting to play. And predownloads stuff in a queue, caches downloaded videos for a couple of days, and does other things unrelated to mpv but that you may also find interesting. I also implemented most of the mpv keybindings on top of the gtk video component because they are so good. Please send me feedback if you have any. Thanks!
Cathode, a YouTube player based on yt-dlp and mpv with all the features I needed andunieee/cathode I can finally stop using the YouTube website completely after this. It works pretty great, with persistent queues, pre-downloading (so no buffering), restricted mode for parental control, video suggestions, local subscriptions, SponsorBlock integration, it also can make local collections and even play local directories. My only issue now is how to distribute this properly to make it easy and smooth for people to install and use. Even if I was accepted at Flathub I don't know if it would make sense, as the app wouldn't be able to access local directories shared with it, right? But I guess we can live without that feature if it's just a YouTube client.
Show HN: Cathode, a Gtk4 YouTube player based on mpv and yt-dlp I've wanted this for years and didn't understand why no one had made one: a YouTube client that I can actually use daily. It has a queue of videos, it has local subscriptions, it downloads all the videos fully before playing, so no buffering ever (and downloads everything that is the queue), it has a restricted mode that works great for children, a bunch of other niceties for sane consumption of YouTube content in our age, written in Rust.