8 ms·
Invidious: An alternative front-end to YouTube
- DarthNebo 5y agoWish YouTube could just nail a feature of preparing a temporary playlist, by allowing you to drag videos from a wall of new subscribed content & then play it without getting bounced off into auto-played recos.
- Orionos 5y agoIsn't it the purpose of the new "Add to queue" feature? Hover a video add you'll see a "Watch later" and "Add to queue". Never used it myself.
- DarthNebo 5y agoOh yeah, just checked it out. I thought it would just do the "Watch later" action. From the subscriptions tab, it is easier to do this now.
- Orionos 5y agoAnybody using / looking for a heavy client (a desktop app) for Youtube? I'm currently working on that in C++ (Qt). For now it's just small window presenting a searchbar, the list of search results and suggested videos. Playing the vid / playlist is done by opening a separate vlc window.
- parmezan 5y agoAlternative yt desktop app is https://freetubeapp.io/ https://freetubeapp.io/
- stragies 5y agoOr the native cross-plattform opensource Minitube from https://flavio.tordini.org/minitube https://flavio.tordini.org/minitube . Is already available on most systems through the package manager.
- kragen 5y agoRight now I'm using these kind of shitty shell scripts to download the videos, ls to list them, and mpv on the command line to play them. These use a file called "channels" which contains YouTube channel URLs and space-separated tags, like this: https://www.youtube.com/channel/UClaEdLrmti779-tyovta8zw grandpa amu hardware carpentry hacking https://www.youtube.com/channel/UCLt9kIslIa1ffiM8A04KORw wm levsha hardware hacking Here are the scripts, slightly cleaned up: snarf: #!/bin/sh echo "snarf $@" exec python3 ../youtube-dl -f '[height<769]' -i -r 1M -R 1 \ --sleep-interval "${wait-227}" --max-filesize "${max_filesize-242m}" \ --no-mtime --playlist-end ${n-5} --write-info-json --add-metadata \ --write-description --write-thumbnail --write-auto-sub \ --write-sub --sub-lang en,es "$@" snarf-tags: #!/bin/sh exec ./snarf $(./tag "$@" | shuf | sed 's,$,/videos,') search: #!/bin/sh exec ./snarf ytsearch10:"$(echo "$@" | sed 's, ,+,g')" resnarf: #!/bin/sh : ${1?Usage: $0 foo.mp4.part} # example: garbage\ stuff\ -zKLMCO0-How.mp4.part for x in "$@"; do x=$(echo "$x" | perl -ne 'm,(.{11})\.mp4,; print $1') ./snarf "https://youtu.be/$x" done tag: #!/usr/bin/env python3 import sys def match(args, line): return (not any('-' + word in args for word in line) and not any(word not in line for word in args if word[0] != '-')) def main(args, input, output): for line in input: words = line.split() if match(args, words): output.write(words[0] + "\n") if __name__ == '__main__': main(sys.argv[1:], open('channels'), sys.stdout) So my searchbar is "wait=3 ./search japanese hornets" or "./search electrochemical machining advances", and periodically I run "./snarf-tags" to download any new videos over the next few hours, which I can then see with "ls -lart ./*4". And if I want to know where some great search-result video came from so I can add it to the list of channels, why, that's "jq -r .uploader_url Romanes\ Eunt\ Domus\ EXPLAINED\ _\ Monty\ Python\'s\ Life\ of\ Brian\ •\ Fun\ with\ Latin-UfH6gjxTTgE.info.json", which sounds horrible but it's really more like ^Rjq^A M-f M-f M-f ^K Ro<TAB>. Suggested videos and thumbnail display, not to mention buttons to press for the above things, would be a welcome addition, but thumbnail display is difficult in the terminal. Also, it would be pretty great to have a way to not redownload a video after I deleted it, and for youtube-dl to not wait the 227 seconds before deciding not to download a video because it's a four-hour snoozefest recorded livestream.
- CGamesPlay 5y ago
- VortexDream 5y agoThat seems interesting. I'd give that a try. I'm not satisfied with any clients I've tried so far.
- Nextgrid 5y agoThere's already some competition in this space: https://flavio.tordini.org/minitube https://flavio.tordini.org/minitube
- southerntofu 5y agoI think a lot of people are looking for that. This is especially true for folks with lower-end hardware where hardware decoding may be supported by the system but not (well) by the browser, or at least the rest of the browser runtime would use way too much resources. NewPipe on Android is somewhat popular because it's much lighter than other Youtube clients (browser included) and enables features which Youtube official clients prevent on purpose (audio-only, download). We don't have an equivalent to that on the desktop. gtk-pipe-viewer [0] is close to that, but is not widely available yet. A problem you need to tackle when distributing a 3rd party client for a centralized network is you have to deal with constant micro-changes in the public-facing API, which the silo does on purpose to break 3rd party clients. youtube-dl from distro repos is almost unusable all the time because of that except on rolling-release (most people use pip version instead), and Newpipe had to make their own F-Droid repository because f-droid.org vetting/build process is too slow for that particular usecase. [1] EDIT: If you're looking for solutions to distribute your client, packaging for every distro out there is "hard" (better leave that to distro maintainers, except for your favorite distros of course) but there's a few distro-agnostic formats that are very easy to automate builds for: 0install, AppImage, Flatpak, guix, nix. The first two are statically linked (and PGP signed) and 0install is even compatible with Mac and Windows build (and any other platform, theoretically). Flatpaks are more Linux specific (some *BSD support in progress) and require a bit more setup to interface with other parts of the system escaping the sandbox (eg. for VAAPI), see the Portals mechanism. nix/guix are intended for reproducible builds: you need to package your dependencies first so it's definitely easier to get started if most of your dependency tree is already packaged there. All in all, supporting those 5 build systems should keep you busy for a few days at the start of your project but will be a huge win for portability and maintainability in the long run. If your project's architecture is not too complex and the dependencies are easy to package, some external contributors (me?) could help with that. Good luck on your project! [0] https://github.com/trizen/pipe-viewer https://github.com/trizen/pipe-viewer [1] As a user i'm happy f-droid.org default repo goes to great length to ensure quality of apps on there and that no antifeature are silently introduced by updates, but i'm also happy apps with specific needs for rapid upgrades like Newpipe can develop their own repo, and a simple QRCode can help bootstrap the repository entry + PGP key without having to mess around with repo settings manually
- Gualdrapo 5y agoI really like it. The UI is clean, but lately music videos won't play sometimes because "The media could not be loaded, either because the server or network failed or becase the format is not supported" (for example: https://yewtu.be/watch?v=3gy8hkVMqwQ https://yewtu.be/watch?v=3gy8hkVMqwQ), no matter what instance I try. Not sure if it's my own web browser, but this was not happening before.
- acco102 5y agohttps://www.youtube.com/embed/3gy8hkVMqwQ https://www.youtube.com/embed/3gy8hkVMqwQ doesn't work. https://invidious-us.kavin.rocks/watch?v=3gy8hkVMqwQ https://invidious-us.kavin.rocks/watch?v=3gy8hkVMqwQ works.
- kiryin 5y agoInvidious is awesome, I use it for all of my youtube guilty-pleasure needs. I really wanted to help with the project when the original developer gave up and development stalled a little bit, but crystal is kind of an esoteric choice, while interesting in it's own right. Syntax looks simple enough but I didn't really "get" all the features and tooling based on the documentation available. I guess it doesn't help that messing with youtube is rather complicated when you can't use the API.
- gizdan 5y agoInvidious is great! Google's/YouTube's heavy push to accept data collection pushed me to use Invidious full time with little regret*. For those interested, you can use utilise Privacy Redirect (for Firefox[0] and Chrome[1]) to automatically redirect YouTube links to any Invidious instances. It also includes redirects for other OSS clients such as Nitter for Twitter, Bibliogram for Instagram, and others. * The only issue I've had is that it sometimes refuses to play some videos because the media cannot be loaded. Not really sure why that is, but I'm willing to accept that over data collection. [0] https://addons.mozilla.org/en-GB/firefox/addon/privacy-redirect/ https://addons.mozilla.org/en-GB/firefox/addon/privacy-redir... [1] https://chrome.google.com/webstore/detail/privacy-redirect/pmcmeagblkinmogikoikkdjiligflglb https://chrome.google.com/webstore/detail/privacy-redirect/p...
- mrzool 5y agoI love invidious, but this: > The only issue I've had is that it sometimes refuses to play some videos because the media cannot be loaded. Happens to me with lots of videos — about half the videos that I try to open if I had to guess. That makes Invidious pretty much unusable for me.
- brnt 5y ago+1 for the Privacy Redirect plugin. Makes using Invidious (and some other platforms) a breeze.
- Nextgrid 5y agoInvidious has been my primary way of using YouTube for over 2 years now (combined with an RSS reader to use as "subscriptions"). The official website is near-unusable in Safari and I dread clicking anywhere out of fear of causing a page reload/navigation and waiting for megabytes of JS to try to (poorly) reimplement existing browser behaviors. Invidious is blazing-fast in comparison. The lack of ads, BS and dark patterns is also a nice bonus but the primary advantage for me is speed.
- jqpabc123 5y agoHow well does it work with subscriptions?
- waz0wski 5y agoit has channel rss feeds you can put into $reader of choice and avoid any dependence on youtube account or tracking
- raspyberr 5y agoI use Invidious with MPV and Piped (piped.kavin.rocks) in the browser. I find Invidious often doesn't work and Piped doesn't work with MPV.
- auslegung 5y agoMy YouTube usage is as follows. Open private Brave tab (prevents lots of tracking and all ads), search for a handful of channels, watch their new stuff, repeat in a day or two. How would invidious improve or help with that workflow? Again I already use a private Brave tab to prevent tracking and ads.
- Nextgrid 5y agoInvidious provides RSS feeds from channels. You can do this with YouTube as well (or at least you could) but it isn't obvious. You add these feeds to an RSS reader and you have privacy-friendly subscription without Google creeping in the background nor annoying you with dark pattern and their perverted idea of GDPR "compliance".
- harpersealtako 5y agoDoes it not work for livestreams? I can't watch any currently-airing channel I follow on it.
- Helmut10001 5y agoAs a father of a three year old, invidious was a relief. He can now watch his 10Minute toons / day without all the other stuff and auto-continuation (that would turn on everytime after I disabled it). I self-hosted it through my own server, hosted at a remote site, through IPSEC, with 5000kbit upstream. Works with invidious!
- Steltek 5y agoEvery time I see an alt-client for Youtube, I feel like this is quickly becoming the BitTorrent vs. Legit DVD/BD game all over again. Here's the thing: I pay for Youtube Premium. Aside from web pages, I'd say it's the biggest non-interactive medium that I consume. And that said, the official Android client SUUUUUCCCKKKSS. I don't care about blocking ads or downloads. I've already legitimately paid for those features. But I want screen rotation to not suck. I want comments to be easier to read. I want notifications and subscriptions to not be laundered by your shitty recommendation engine. And who the hell thought the Watch Later playlist should pop up/over when I try to play a video?! No one wants that. I don't mind paying for what I use but I feel like a real sucker when I get a shittier experience compared to pirates.
- okamiueru 5y agoGood list. My biggest gripe is still that I cannot queue things on a mobile device. It seems like such a big omission.
- FractalHQ 5y agoI’ve always used “watch later” as a queue- it’s very easy to add videos to it while scrolling, then navigate to it and click “play all”.
- danShumway 5y agoI spent a decent chunk of time paying for Youtube Premium (Red at the time) and eventually I stopped signing in and started using NewPipe on my phone instead, even though I was still paying. Partially that was for privacy reasons, but the bigger reason is that NewPipe is just an improvement over the official app in just about every single way. Similar experience to you: - Downloads weren't reliable. I'm paying money to do this "legitimately", and my offline videos just stop working randomly, I couldn't trust that they'll still be there when I open my phone. - Battery life. Oh my goodness, battery life. - Device limits. I ran into scenarios where if I was signed into Youtube on my phone and desktop and I started playing a video, all of the other videos on every other device would stop and I would get a message shaming me about account sharing or something. This is a paid experience that's worse than just using stock Youtube without paying anyone. Stock Youtube doesn't have any device limits. - Notifications, recommendation engines, blegh... I can turn off comments in NewPipe. I can turn off recommended videos entirely. - Patchy control over data usage. I never really felt like I could trust the app not to start downloading things over a mobile connection no matter what settings I checked. - Ads in the app for Youtube Red, the thing that I was already paying for. This kind of made me mad, I was paying to show support for a non-advertising model, and Google instead kept bugging me about exclusive Youtube Red content. - No good queuing system without making lists (this may have changed, I think the Youtube website supports queues at this point, so maybe the app does now as well). ---- Eventually I stopped paying for Youtube Red because I didn't see what the point was and I couldn't figure out what I was accomplishing. I wanted to signal to Youtube that I was willing to pay for a better experience, but they weren't getting that message and I didn't seem to be communicating what I wanted to communicate. And since I wasn't using the official client at that point, none of my subscriptions were going to the channels I wanted to support, so I did the math and found out that direct donations were a much more economical/impactful way for me to support them. I was just donating money to Google for no reason. I'm willing to pay for services like Youtube if they were willing to put in even the bare minimum of effort on this stuff. But what am I paying for? The old Youtube Red app was worse than using Youtube in a browser, and considerably worse than front-ends like NewPipe. I don't think I'm being greedy or unreasonable asking Youtube for a button that lets me turn off video recommendations. Maybe the service has gotten better now, I haven't checked. But it doesn't sound like it has. The entire Youtube experience feels needlessly adversarial. It's not about piracy[0], it's not about consuming content for free. I spent a decent chunk of time quite literally giving Google money for nothing; giving them money even though I wasn't using their app. I am willing to pay for the infrastructure and hosting that Youtube provides. I just want a good experience, and there's still no option for me to pay Google for a good Youtube experience. And giving them money doesn't seem to be incentivizing them to fix any of it. It's really just embarrassing that a 3rd-party project using an unofficial API is so much better than every native client that Youtube is offering. ---- [0]: Although to be clear, I do not believe that using NewPipe is actually piracy under any legal definition.
- johnx123-up 5y agoBut, https://redirect.invidious.io/watch?v=x https://redirect.invidious.io/watch?v=x : As of September 1st 2020, invidio.us has closed down. To see this content, please select another instance, or visit directly on YouTube.
- circleegg 5y agoFor all the greasemonkey heads out there: https://openuserjs.org/scripts/marcowahl/yt2invidious https://openuserjs.org/scripts/marcowahl/yt2invidious provides a button to conveniently switch from yt to invidious.
- sysadm1n 5y agoDoes anyone know: Do tools like this bother the people who created Youtube in such a way that they feel sort of defeated? Or are tools like this welcomed. I don't imagine Invidious hurts their bottom line that much. In the end: it's just geeks having fun, right?
- stalfosknight 5y agoI wish Invidious would allow more than 720p.
- 3np 5y agoHaving run both, I can recommend checking out Piped[0]. Crossover with the famous NewPipe Android app. IME Piped recently works a lot more reliably with high-res videos compared to Invidious. If you ever have "media not available" etc. Both generally work fine with embeds, so you can use link rewriters in other alt-frontends (nitter/teddit/searx/etc) to have proxied embeds. Piped can also be substituted for Invidious in Privacy Redirect. [0]: https://github.com/TeamPiped/Piped https://github.com/TeamPiped/Piped
- tra3 5y agoIs anyone aware of a comparable iOS app?