Comment by jasode

2 years ago

>I really don't understand why any technically proficient user would willingly use any of the official YouTube frontends.

I'm a technically proficient user that's written custom bash scripts for youtube-dl combined with ffmpeg to download videos locally and I still use the official Youtube desktop web browser UI every day for several reasons:

+ transcripts and close-captioning (use Ctrl+F search for text to find the section of video that starts talking about the topic I'm interested in)

+ many videos have index of chapters (deep links), table-of-contents

+ viewers' comments (especially valuable for crowdsourced feedback on DIY videos to point out extra tips, or flaws, etc)

+ external links mentioned (Amazon links to products is especially valuable for DIY tutorials)

+ convenient hot links to related videos (part 2, part 3, etc). Not every creator makes "playlists"

+ Youtube web UI has superfast video scrubbing of the timeline. A local video player like VLC scrubbing of the timeline is very slow compared to Youtube because the youtube backend pre-analyzes the entire video and generates a bunch of timeline thumbnails at multiple intervals. This makes the Youtube web UI timeline scrubbing very fluid with responsive visual feedback.

I like downloading with yt-dlp but I also lose a lot of functionality when I watch videos in VLC instead of the Youtube desktop webbrowser UI. The above points are not relevant to the terrible Youtube app on mobile and tablets.

Most of those features are available in OSS tools as well. And for those that are not, there are alternative solutions that might take a bit of work to implement.

I'm not claiming that the OSS tools have feature parity with 1st party frontends, or that they won't require some sacrifices, or effort adjusting. I just think that the trade-off of losing some of the convenience in return for not being tracked and manipulated is well worth it to me, though I can see how it might not be worth it for others.

I do actually think that OSS tools provide a better UX. I can download the media and consume it offline, using any player of choice, on any device, at any time. I find YouTube's recommendations a nuisance, and I can turn those off in Invidious and Piped. Scrubbing in mpv is instantaneous for me for local files and even those served on the LAN, though there is a slight delay when playing directly from YT. There is also a solution for generating thumbnails[1], though I had some issues with it, and didn't end up using it.

At the end of the day, it's a personal choice depending on what you value most, and I'm not trying to convince anyone my choice is inherently better. Thanks for providing your perspective.

[1]: https://github.com/tomasklaen/uosc

  • >Scrubbing in mpv is instantaneous for me for local files

    Yes, I agree that scrubbing in mpv or vlc is "instantaneous" but Youtube's web ui is even more hyperfast "instaneous" than mpv.

    >There is also a solution for generating thumbnails[1], though I had some issues with it, and didn't end up using it.

    For me, using an offline tool like thumbfast to generate timeline previews defeats the purpose of using Youtube's pre-existing timeline thumbnails that Google's datacenter already generated. Let me explain...

    >I do actually think that OSS tools provide a better UX. I can download the media and consume it offline, using any player of choice, on any device, at any time. I find YouTube's recommendations a nuisance,

    I'm guessing it's a difference in usage pattern. I'm often browsing a bunch of Youtube videos as a research tool. Like a "visual wikipedia" for various topics (especially DIY tutorials and products research). I want to jump in and out of videos fast. Downloading videos with yt-dlp to play in mpv isn't the workflow here. That's too slow and cumbersome. Instead, I'm sampling a bunch of videos and maybe a few of those will be ultimately be downloaded. E.g. Preview/scrub fragments of 10 related videos, read some viewer comments, scan some transcripts, etc... and eventually only yt-dlp 2 of them. This is why "mpv yt-dlp with workarounds" is not an acceptable substitute for using Youtube's web ui.

    • That's fair. It's indeed a difference in usage.

      My only usage of YT is queing up videos for short-term playback. So I browse a feed of my subscriptions in Piped, drag links of videos I'm interested in to a text file, and run a small script on my HTPC to download them with yt-dlp in parallel, and add them to a playlist. With a fast connection, it only takes a few minutes to download even dozens of videos at a time. Then I serve the videos on my LAN over HTTP with nginx, and watch them on any of my devices using any media player that can stream HTTP, which is usually mpv.

      I started a project some time ago to make this fancier, but honestly, this workflow does 90% of what I need, and I'm too lazy to change it.

      To each their own :)

> + many videos have index of chapters (deep links)

In mpv, you can use PgUp and PgDown to select chapters.

> + external links mentioned

Video description is in audio/video file if yt-dlp gets a --embed-metadata. mpv prints that if present.