Consider also Tube Archivist. If you just want to download a few videos it's overkill, but I use it to archive and index technical channels I like. It can do advanced full text and metadata searches on the transcription/subtitles as well as comments (and title and description). Much better than what alphabet provides, annoyingly.
I was looking at TubeArchivist. But didn’t like that it required 3 separate containers. Then I found Pinchflat on the selfhosted sub. It works as a single container and was easy deployment. Has been working well.
The file naming is predicated on having the database. For ephemeral storage this is understandable but any software that describes itself as "archival" should assume that it will not outlive the data it is preserving.
I was excited to have a PeerTube clone with download capabilities until I looked at the result. `yt-dlp` and clever configs and scripts will do the archival job properly.
I like how you're willing to archive videos but refuse to archive the playback mechanism for it. Is backing up a docker image really a deal breaker for you?
Google will never make it comfortable to use their products in any structured, advanced way as it is super beneficial to the user and gives away way too much control. Google hates that.
I've been meaning to migrate to tube archivist forever, but I have several TB of youtube videos I don't want to re-download which I gathered using tubesync. Luckily I have the format string used to save the files by name and since tubesync uses django and a postgres backend I might be able to tie them to the youtube ID. But migration still seems like it might be a bit of a nightmare
There are about 100 channels that I watch religiously, but, release infrequently. I never want to miss a video from these channels.
I also don’t want to open YouTube and sift through hundreds of releases from channels that release four times/day just to find the 1-2 videos that I actually want to watch (and will inevitably miss.)
Just give me a priority feed of the stuff I actually want/need to watch. If I can download everything and watch it over DLNA, even better,
Making sure we don’t miss the things we love isn’t YouTube’s M.O. Keeping the feedbag strapped to our faces while we watch someone stretch a 3 minute video into a 18-22 minute one, is.
This feels like it's covered by YouTube subscriptions, no? Subscribe to those 100 channels, bookmark your subscriptions page, and presto! You now have a priority feed of the stuff you want to watch and nothing else.
Maybe you just don't want to create an account, which is fine (NewPipe is a great fit), but it's a bit weird to see you say that "making sure we don’t miss the things we love isn’t YouTube’s M.O." when there's an entire page dedicated to a chronologically-sorted list of videos from channels you pick.
Making sure we don’t miss the things we love definitely isn’t YouTube’s MO. I have channels I subscribed to, turned on notifications for, and still miss videos from. It does, however, spam my phone with notifications about channels I'm not subbed to.
The problem is if one channel only uploads once a month and another channel uploads twice a day, I will see many videos from the frequent upload channels and might miss the infrequent uploads. If it was just a list of channels with their most recent video I'd see a new thumbnail and know to check that channel for any new videos.
NewPipe works great for this usecase. Just get rid of the "Default Kiosk" column as content of main page, leave the "What's New" and watch only videos from channels that you subscribe to (on NewPipe, it's not integrated in any way with a Google Account).
I was just going to suggest this. I don't use Youtube logged in anymore or have any subscriptions, I instead subscribe to any I want to follow via RSS feeds. Any Youtube channel has its own native RSS feed, no third party service required. You could create different lists in your RSS client of choice for your different priorities.
This is exactly what I do as well. Instead of subscribing on YouTube, I just subscribe to the RSS feeds of channels I'm interested in and then use my feedreader to go through them channel by channel.
I use Invidious for this purpose. Has a priority feed only on subscriptions which is great. I would say it’s not great for discoverability, but if that’s not a use case I’d look at it.
I don't understand one thing...why do you need to host it on a server? It can be just a standalone app on windows/Linux/mac. I recently just started using yt-dlp and have thought of making a simple app. Should I though? Are there any alternatives in existence of this kind?
> why do you need to host it on a server? It can be just a standalone app
Your Windows/Linux/OSX device, or a VM or container on it, can be the server if you wish. This way the creators don't need to make two UXs (web for the server, native for the other).
A lot of people run thier self-hosted apps on an external server or home lab (or mix/multiple) with those resources being "properly" setup as infrastructure with backups and such, using their PCs/laptops/tablets/phones as relatively dumb clients/caches that can be easily replaced (pulling local content back from the server the old devices synced to) if lost/damaged. This is one reason self-housing that way is popular.
> using yt-dlp and have thought of making a simple app
I've seen a few desktop apps that seem to be wrappers around yt-dlp (and/or other similar utilities). I've not used any of them so can't comment on their stability/reliability/other, but I'd do a search before writing your own from scratch (unless you want to do that for fun anyway!) as you might find what you want already exists.
it also neatly integrates into easy-to-use things like runtipi. I have it on my spare home server, running a tandoor instance, invidious and metube for watching stuff later/offline.
yt-dlp is not even necessary. If just downloading videos from YouTube this can be done with much less code and complexity. I use a tiny C program to do it. Tiny shell scripts work just as well.
What no one is discussing is that yt-dlp can no longer download itag 22 and itag 18 is now throttled.^1 This means yt-dlp has to download an audio file and a video file and use ffmpeg to merge the two.
YouTube ad revenue just missed consensus estimates. Perhaps the accessibility of videos on YouTube is going to get even worse.
1. One will not likely notice this unless one is in the habit of specifically choosing format. For example, some folks have used itag 18 and 22 exclusively for many years.
> yt-dlp is not even necessary. If just downloading videos from YouTube this can be done with much less code and complexity. I use a tiny C program to do it. Tiny shell scripts work just as well.
yt-dlp is not necessary ... if you write a replacement? Ok.
Besides I doubt simple shell scripts will be able to download all videos that yt-dlp can. YouTube does not use the same protections for all videos.
> yt-dlp can no longer download itag 22 and itag 18 is now throttled. This means yt-dlp has to download an audio file and a video file and use ffmpeg to merge the two.
I found yt-dlp did that more often than not anyway, if left to its own devices on choosing which formats to pick. Though I had noticed it doing that pretty much always recently.
> Perhaps the accessibility of videos on YouTube is going to get even worse.
I think that has started to happen. I've had a few occurrences recently where it tries to get a particular format and fails, so I've had to manually request something else.
They also seem to have started screening non-residential/office/similar connections more aggressively too, two external hosts of mine now get a message to the effect "login to prove you aren't a bot" when yt-dlp tries to pick something up, and I've seen people note that they have trouble with YouTube proper (without logging in) over some VPN services.
This has been the case for a while now. It may be temporary. Time will tell. Not being a video codec nerd, I do not find that itag 136 is any better than itag 22. Files are about the same size. But 136 needs separate audio file which creates need for ffmpeg and, generally, more temporary storage space.
I also realised the same thing yesterday. I tried using a specific tag quality, for a playlist and many of the videos failed to download. So, I just set it to download the best available quality for video and audio.
The question then becomes why not just ssh into that computer or whatever and just use yt-dlp on a terminal on it instead of a javascript wrapper around it.
you host it on the server which has a raid array and is/gets backedup vs a laptop that could get stolen or lost. the point is to have a copy of the videos that can't be deleted/lost so having that on a loseable laptop wouldn't satisfy that requirement
Would be nice if there was an interface into Jellyfin so that you could search Youtube, have yt-dlp download, and then stream through Jellyfin without ads.
I discovered that brave for iOS has a playlist button which downloads YouTube videos and stores them on your device, allowing PiP and offline playback without ads. I wonder why more apps don't do this as they have an open license based off a Mozilla iOS backend. They found a way to get Apple to accept it and their CEO has even posted HERE about it defending their technique as valid. Essentially, it triggers only after loading the video inside the regular YouTube website, like a reader button that works across any video content (not just YouTube).
It's a bit puzzling to me, how many YouTube mirroring tools are available out there. If you're using something like that, what's your reason to download/archive the videos instead of just streaming them from YouTube?
I get that sometimes it's great to archive a video in the case it get's deleted from YouTube, but in my case this very rarely happens. I watch the video and I'm done with it. If I can't re-watch it, this doesn't really matter to me.
> what's your reason to download/archive the videos instead of just streaming them from YouTube?
1. Removal of ads is a pretty big reason for many.
2. As you already note: you can't stream a video again if it or the entire channel has since been taken down due to copyright claim (spurious or otherwise) or other complaint. This may matter a lot more to some people than it does to you, depending on the content they are consuming.
3. Some may be downloading for offline play. You can do this with the official YouTube app too, but not without paying for Premium (which seems exorbitant to me) and still being subject to the takedown problem.
4. Local indexing: if keeping reference to videos for future rewatch or sharing, arranging then in your own structure may be more convenient than maintaining bookmarks to YouTube copies or searching for them each time.
5. Some mix of the above, and likely other reasons I've not considered/remembered.
If you're using something like that, what's your reason to download/archive the videos instead of just streaming them from YouTube?
For me, the same reason people used VCRs, and I don't mean "copyright infringement" --- saving stuff to watch later or when I don't have an Internet connection, or only a slow one. The majority of what I download only gets watched once and deleted.
Not that I would let them anyhow but YouTube starts recommending really trashy stuff when it finds out you're a kid. The tamest of it being stuff like adults playing with toys in a very childish manner.
It's a bit puzzling to me, this guy is wondering why a tool exists and then gives the number one reason why that tool should exist.
Not to mention that sometimes streaming from youtube might not be possible (internet down) or cost prohibitive (mobile plan abroad), or just plain removing those shitty ads.
i’m not really a regular user of most of the tools but the few times i have used them it’s because their search gets worse and worse by the day.
at least a dozen times in the past couple of months i’ve searched for videos i’ve previously seen, using almost exact title language the search just wouldn’t give them to me. the vids i did find was only because i ultimately remembered the names of the channels they were on and had to trawl through them directly to find it.
it’s to the point now where it’ll just be easier to grab videos i find interesting and be able to find them later with much less hassle.
for me it wouldn’t be an issue if they hadn’t broken their search so badly.
https://www.tubearchivist.com/
https://github.com/kieraneglin/pinchflat
The file naming is predicated on having the database. For ephemeral storage this is understandable but any software that describes itself as "archival" should assume that it will not outlive the data it is preserving.
I was excited to have a PeerTube clone with download capabilities until I looked at the result. `yt-dlp` and clever configs and scripts will do the archival job properly.
Yark: YouTube Archiver with Offline UI
https://news.ycombinator.com/item?id=41100820
There are about 100 channels that I watch religiously, but, release infrequently. I never want to miss a video from these channels.
I also don’t want to open YouTube and sift through hundreds of releases from channels that release four times/day just to find the 1-2 videos that I actually want to watch (and will inevitably miss.)
Just give me a priority feed of the stuff I actually want/need to watch. If I can download everything and watch it over DLNA, even better,
Making sure we don’t miss the things we love isn’t YouTube’s M.O. Keeping the feedbag strapped to our faces while we watch someone stretch a 3 minute video into a 18-22 minute one, is.
Maybe you just don't want to create an account, which is fine (NewPipe is a great fit), but it's a bit weird to see you say that "making sure we don’t miss the things we love isn’t YouTube’s M.O." when there's an entire page dedicated to a chronologically-sorted list of videos from channels you pick.
If anyone is reading this and doesn't know about NewPipe, it's a google free youtube front end. It's well worth installing.
https://f-droid.org/en/packages/org.schabi.newpipe/
https://fraidyc.at/
Your Windows/Linux/OSX device, or a VM or container on it, can be the server if you wish. This way the creators don't need to make two UXs (web for the server, native for the other).
A lot of people run thier self-hosted apps on an external server or home lab (or mix/multiple) with those resources being "properly" setup as infrastructure with backups and such, using their PCs/laptops/tablets/phones as relatively dumb clients/caches that can be easily replaced (pulling local content back from the server the old devices synced to) if lost/damaged. This is one reason self-housing that way is popular.
> using yt-dlp and have thought of making a simple app
I've seen a few desktop apps that seem to be wrappers around yt-dlp (and/or other similar utilities). I've not used any of them so can't comment on their stability/reliability/other, but I'd do a search before writing your own from scratch (unless you want to do that for fun anyway!) as you might find what you want already exists.
https://flathub.org/apps/details/io.github.celluloid_player....
https://flathub.org/apps/org.nickvision.tubeconverter
I ain't clickin' that
What no one is discussing is that yt-dlp can no longer download itag 22 and itag 18 is now throttled.^1 This means yt-dlp has to download an audio file and a video file and use ffmpeg to merge the two.
YouTube ad revenue just missed consensus estimates. Perhaps the accessibility of videos on YouTube is going to get even worse.
1. One will not likely notice this unless one is in the habit of specifically choosing format. For example, some folks have used itag 18 and 22 exclusively for many years.
yt-dlp is not necessary ... if you write a replacement? Ok.
Besides I doubt simple shell scripts will be able to download all videos that yt-dlp can. YouTube does not use the same protections for all videos.
I found yt-dlp did that more often than not anyway, if left to its own devices on choosing which formats to pick. Though I had noticed it doing that pretty much always recently.
> Perhaps the accessibility of videos on YouTube is going to get even worse.
I think that has started to happen. I've had a few occurrences recently where it tries to get a particular format and fails, so I've had to manually request something else.
They also seem to have started screening non-residential/office/similar connections more aggressively too, two external hosts of mine now get a message to the effect "login to prove you aren't a bot" when yt-dlp tries to pick something up, and I've seen people note that they have trouble with YouTube proper (without logging in) over some VPN services.
IMO this is not a prob^W thing even worth bothering about. Does it bother you in any way?
Just curious.
https://freetubeapp.io/
A dockerized web app is also much easier to build and maintain, than desktop clients for Windows, macOS, Android, iOS, Linux, and so on.
Deleted Comment
https://stacher.io/
That is terrible UX. I can't even read about it on a mobile device? Maybe I'll check back next time I'm at a desk, likely I won't.
why must the majority of software be provided as-a-Service? whatever happened to good old fashioned products??
Dead Comment
Deleted Comment
I get that sometimes it's great to archive a video in the case it get's deleted from YouTube, but in my case this very rarely happens. I watch the video and I'm done with it. If I can't re-watch it, this doesn't really matter to me.
1. Removal of ads is a pretty big reason for many.
2. As you already note: you can't stream a video again if it or the entire channel has since been taken down due to copyright claim (spurious or otherwise) or other complaint. This may matter a lot more to some people than it does to you, depending on the content they are consuming.
3. Some may be downloading for offline play. You can do this with the official YouTube app too, but not without paying for Premium (which seems exorbitant to me) and still being subject to the takedown problem.
4. Local indexing: if keeping reference to videos for future rewatch or sharing, arranging then in your own structure may be more convenient than maintaining bookmarks to YouTube copies or searching for them each time.
5. Some mix of the above, and likely other reasons I've not considered/remembered.
For me, the same reason people used VCRs, and I don't mean "copyright infringement" --- saving stuff to watch later or when I don't have an Internet connection, or only a slow one. The majority of what I download only gets watched once and deleted.
Not that I would let them anyhow but YouTube starts recommending really trashy stuff when it finds out you're a kid. The tamest of it being stuff like adults playing with toys in a very childish manner.
Not to mention that sometimes streaming from youtube might not be possible (internet down) or cost prohibitive (mobile plan abroad), or just plain removing those shitty ads.
at least a dozen times in the past couple of months i’ve searched for videos i’ve previously seen, using almost exact title language the search just wouldn’t give them to me. the vids i did find was only because i ultimately remembered the names of the channels they were on and had to trawl through them directly to find it.
it’s to the point now where it’ll just be easier to grab videos i find interesting and be able to find them later with much less hassle.
for me it wouldn’t be an issue if they hadn’t broken their search so badly.
Yark: YouTube Archiver with Offline UI
https://news.ycombinator.com/item?id=41100820