The best YouTube downloaders, and how Google silenced the press

2 months ago (windowsread.me)

The claim that Google secretly wants YouTube downloaders to work doesn't hold up. Their focus is on delivering videos across a vast range of devices without breaking playback(and even that is blurring[0]), not enabling downloads.

If you dive into the yt-dlp source code, you see the insane complexity of calculations needed to download a video. There is code to handle nsig checks, internal YouTube API quirks, and constant obfuscation that makes it a nightmare(and the maintainers heroes) to keep up. Google frequently rejects download attempts, blocks certain devices or access methods, and breaks techniques that yt-dlp relies on.

Half the battle is working around attempts by Google to make ads unblockable, and the other half is working around their attempts to shut down downloaders. The idea of a "gray market ecosystem" they tacitly approve ignores how aggressively they tweak their systems to make downloading as unreliable as possible. If Google wanted downloaders to thrive, they wouldn't make developers jump through these hoops. Just look at the yt-dlp issue tracker overflowing with reports of broken functionality. There are no secret nods, handshakes, or other winks, as Google begins to care less and less about compatibility, the doors will close. For example, there is already a secret header used for authenticating that you are using the Google version of Chrome browser [1] [2] that will probably be expanded.

[0] Ask HN: Does anyone else notice YouTube causing 100% CPU usage and stattering? https://github.com/dsekz/chrome-x-browser-validation-header

  • > If you dive into the yt-dlp source code, you see the insane complexity of calculations needed to download a video. There is code to handle nsig checks, internal YouTube API quirks, and constant obfuscation that makes it a nightmare(and the maintainers heroes) to keep up. Google frequently rejects download attempts, blocks certain devices or access methods, and breaks techniques that yt-dlp relies on.

    This just made me incredibly grateful for the people who do this kind of work. I have no idea who writes all the uBlock Origin filters either, but blessed be the angels, long may their stay in heaven be.

    I'm pretty confident I could figure it out eventually but let's be honest, the chance that I'd ever actually invest that much time and energy is approximates zero close enough that we can just say it's flat nil.

    Maybe Santa Claus needs to make some donations tonight. ho ho ho

    • As the web devolves further, the only viable long-term solution will be allow lists instead of block lists. There is too much hostility online—from websites that want to track you and monetize your data and attention, SEO scams and generated content, and an ever-increasing army of bots—that it's becoming infeasible to maintain rules to filter all of it out. It's much easier to write rules for traffic you approve of, although they will have to be more personal than block lists.

      5 replies →

  • I also don't buy this argument about YouTube depending on downloaders:

    > They perform a valuable role: If it were impossible to download YouTube videos, many organizations would abandon hosting their videos on YouTube for a platform that offered more user flexibility. Or they’d need to host a separate download link and put it in their YouTube descriptions. But organizations don’t need to jump through hoops -- they just let people use YouTube downloaders.

    No, organizations simply use YouTube because it's free, extremely convenient, has been very stable enough over the past couple decades to depend on, and the organization does not have the resources to setup an alternative.

    Also, I'm guessing such organizations represent a vanishly small segment of YouTube's uploaders.

    I don't think people appreciate how much YouTube has created a market. "Youtuber" is a valid (if often derided) job these days, where creators can earn a living wage and maintain whole media companies. Preserving that monetization portal is key to YouTube and its content creators.

    • > and the organization does not have the resources to setup an alternative.

      Can confirm at least one tech news website argued this point and tore down their own video hosting servers in favor of using Youtube links/embeds. Old videos on tweakers.net are simply not accessible anymore, that content is gone now

      This was well after HTML5 was widely supported. As a website owner myself, I don't understand what's so hard now that we can write 1 HTML tag and have an embedded video on the page. They made it sound like they need to employ an expensive developer to continuously work on improving this and fixing bugs whereas from my POV you're pretty much there with running ffmpeg at a few quality settings upon uploading (there are maybe 3 articles with a video per day, so any old server can handle this) and having a quality selector below the video. Can't imagine what about this would have changed in the past decade in a way that requires extra development work. At most you re-evaluate every 5 years which quality levels ffmpeg should generate and change an integer in a config file...

      Alas, little as I understand it, this tiny amount of extra effort, even when the development and setup work is already in the past(!), is apparently indeed a driving force in centralizing to Youtube for for-profits

      24 replies →

    • Yeah organizations don't use YouTube for file access, that's just not a good way to operate a video department in a business. Also the quality is terrible and adding another set of reencodes will make it even worse.

      1 reply →

  • I never understood why do they not limit downloading data to the speed at which you could be possibly watching it. Yesterday I downloaded a 15hour show in like 20 minutes. There is no way I could have downloaded that much data in a legit way through their website/player

    Im glad I wasn't blocked or throttled, but it seems like it'd be trivial to block someone like me

    Am I missing something? It does sort of feel like they're allowing it

    EDIT: Spooky skeletons.. Youtube suddenly as of today forces a "Sign in to confirm you’re not a bot" on both the website and yt-dl .. So maybe I've been fingerprinted and blacklisted somehow

    • You could have been a legit viewer... clicking to skip over segments of the video, presumably trying to find where you left off last time, or for some scene you remember, or the climax of the video... whatever.

      Youtube does try to throttle the data speeds, when that first happened, youtube-dl stopped being useful and everyone upgraded their python versions and started using yt-dlp instead.

      3 replies →

    • They still want the YouTube experience to be smooth, to allow users to skip small parts of videos without waiting for it to load every time, to be able to watch multiple videos at the same time, to be able to leave video paused until it loads, etc., which limiting downloading data would hinder. I assume blocking downloads is just not worth destroyinf user experience.

      1 reply →

    • As some people already said, skipping section. Also you can increase video speeds, I normally watch youtube at 2x speed but I think you can go up to 5x.

  • Written by somebody who hasn't taken 1 look at yt-dlp source code or issues. Google regularly pushes updates that "coincidentally" break downloaders. The obfuscation and things they do to e.g. break a download by introducing some breaking code or dynamic calculation required only part way through the video is not normal. They are not serving a bunch of video files or chunks, you need a "client" that handles all these things to download a video. At this point, if you assert that Google doesn't want to secretly stop it, you are either extremely naive, ignorant, or a Google employee.

  • Why don’t creators both publish to YouTube but also publish somewhere else for archival or public access reasons, to help keep content available for outside walled gardens? Is it just not important to them? Is it hosting costs? Missing out on ad revenue?

    • Where else should they be publishing to? And who is going to pay for this service?

      Don’t forget - most “content creators” are not technical - self hosting is not an option.

      And even if it were - it costs money.

      1 reply →

    • There's no incentive for them to do so. It reduces their ad revenue, while costing more money to host it. That said, if you are a creator and you do want to do it, Peertube is a good option because it uses torrent technology to reduce your hosting costs.

    • Youtube pays them per (ad) view, and also recommends the video to more people based on how many people click on it. So giving people another way to watch it will decrease their revenue and audience.

  • The argument the article is making is that if they really wanted YouTube downloaders to stop working, they'd switch to Encrypted Media Extensions. Do you think that's not plausible?

    • Many smart devices that have youtube functionality(tvs, refrigerators, consoles, cable boxes, etc), have limited or no ability to support that functionality in hardware, or even if they do, it might not be exposed.

      Once those devices get phased out, it is very likely they will move to Encrypted Media Extensions or something similar, I believe I saw an issue ticket on yt-dlp's repo indicating they are already experimenting with such, as certain formats are DRM protected. Lookup all the stuff going on with SABR which if I remember right is either related to DRM or what they may use to support DRM.

      6 replies →

    • Using DRM would make it illegal for YouTubers to use Creative-Commons-licensed content in their videos, such as Kevin MacLeod's music or many images from Wikipedia.

      4 replies →

    • > if they really wanted YouTube downloaders to stop working

      Wrong question leads to the wrong answer.

      The right one is "how much of the ad revenue would be lost if". For now it's cheaper to spend bazillions on a whack-a-mole.

  • I miss the system where, when I was watching a flash video in Firefox, that video was already present on my hard drive as an .flv file in /tmp, and I could just copy it somewhere.

  • To be fair, the article doesn't say Google "secretly wants" downloaders to work. It says they need downloaders to work, despite wanting to make them as annoying as possible to use. The argument isn't so much about Google's feelings as it is about whether the entire internet would continue making YouTube the video hosting site to use if downloaders were actually (effectively) blocked.

    • I don’t think companies are asking “can people download this video” but rather “can people watch this video” - downloaders seems like an afterthought or non issue.

  • You conveniently side-stepped the argument that YouTube already knows how to serve DRM-ized videos, and it's widely deployed in its Movies & TV offering, available on the web and other clients. They chose not to escalate on all videos, probably for multiple reasons. It's credible that one reason could be that it wants the downloaders to keep working; they wouldn't want those to suddenly gain the ability to download DRM-ized videos (software that does this exist but it's not as well maintained and circulated).

    • It seems more credible to me that they would cut off a sizable portion of their viewers by forcing widevine DRM.

      Or is it something different you are thinking about?

      What benefits does DRM even provide for public, ad-supported content that you don't need to log for in order to watch it?

      Does DRM cryptography offer solutions against ad blocking, or downloading videos you have legitimate access to?

      Sorry that I'm too lazy to research this, but I'd appreciate if you elaborate more on this.

      And also, I think they're playing the long game and will be fine to put up a login wall and aggressively block scraping and also force ID. Like Instagram.

      Would be glad if I'm wrong, but I don't think so. They just haven't reached a sufficient level of monopolization for this and at the same time, the number of people watching YouTube without at least being logged in is probably already dwindling.

      So they're not waiting anymore to be profitable, they already are, through ads and data collection.

      But they have plenty of headroom left to truly start boiling the frog, and become a closed platform.

  • While I do agree (mostly, I've never had a download NOT work, on the rare occasion I grab one), they haven't made it impossible to download videos, so that is a win IMO.

    • Your view from a distance, where you rarely download Youtube videos, is common for now, and we still live in a very fortunate time. The problems are short lived, so over long periods, they tend to average out, and you are unlikely to notice them. Even active users will rarely notice a problem, so it is understandable for your use case, it would seem perfect.

      Looking closely, at least for yt-dlp, you would see it tries multiple methods to grab available formats, tabulates the working ones, and picks from them. Those methods are constantly being peeled away, though some are occasionally added or fixed. The net trend is clear. The ability to download is eroding. There have been moments when you might seriously consider that downloading, at least without a complicated setup(PO-Tokens, widevine keys, or something else), is just going to stop working.

      As time goes on, even for those rare times you want to grab a video, direct downloading may no longer work. You might have to resort to other methods, like screen recording through software or an actual camera, for as long as your devices will let you do even that.

      1 reply →

    • > (mostly, I've never had a download NOT work, on the rare occasion I grab one)

      A lot of the reason for that is because yt-dlp explicitly makes it easy for you to update it, so I would imagine that many frontends will do so automatically - something which is becoming more necessary as time goes on, as YouTube and yt-dip play cat and mouse with each other.

      Unfortunately, lately, yt-dip has had to disable by default the downloading of certain formats that it was formerly able to access by pretending to be the YouTube iOS client, because they were erroring too often. There are alternatives, of course, but those ones were pretty good.

      A lot of what you see in yt-dlp is because of the immense amount of work that the developers put in in order to keep it working. Despite that it now allows for downloading from many more sites than it originally was developed for, they're still not going to give up YouTube support (as long as it still allows DRM-free versions) without a fight.

      Once YouTube moves to completely DRM'd videos, however, that may have to be when yt-dlp retires support for YouTube, because yt-dlp very deliberately does not bypass DRM. I'd imagine the name would change at that point.

    • > mostly, I've never had a download NOT work

      Well, how about thanks the people who's maintaining the downloader to make it possible?

      > they haven't made it impossible to download videos, so that is a win IMO.

      At some point you can just fire up OBS Studio and do a screen rip, then cut the ads out manually and put it on Torrent/ED2k.

      Will you still think it's a win then?

  • > there is already a secret header used for authenticating that you are using the Google version of Chrome browser

    Google needs to be broken up already.

  • Especially given that YT frequently blocks yt-dlp and bans users who workaround by using the --cookie flag

  • Google is not a side here if you don't want people to download your video do not put it on the internet.

  • This is starting to look like some quality llm benchmark!

    And ever updating with that!

  • But I think the article's point isn't that Google wants downloaders to work, it's that they tolerate just enough friction to keep power users from revolting, without officially endorsing anything

    • I think this “power user” ship has sailed already. See Google locking down Android, for example. They’re an established monopoly at this point and if the last Chrome antitrust case shows us something is that they won’t be penalized for any of their anti-consumer actions.

  • "If you dive into the yt-dlp source code, you see the insane complexity of calculations needed to download a video. "

    Indeed the complexity is insane

    https://news.ycombinator.com/item?id=45256043

    But what is meant by "a video". Is this referring to the common case or an edge/corner case. Does "a" mean one particular video or all videos

    "There is code to handle nsig checks, internal YouTube API quirks, and constant obfuscation that makes it a nightmare(and the maintainers heroes) to keep up."

    True, but is this code required for all YouTube videos

    The majority of YT videos are non-commercial, unpromoted with low view counts. These are simple to download

    For example, the current yt-dlp project contains approximately 218 YT IDs. A 2024 version contained approximately 201 YT IDs. These are often for testing edge cases

    The example 1,525-character shell script below outputs download URLs for almost all the YT IDs found in yt-dlp. No Python needed

    By comparison the yt-dlp project is 15,679,182 characters, approximately

    The curl binary is used in the example only because it's popular, not because I use it. I use simpler, more flexible software than curl

    I have been using tiny shell script to download YT videos for over 15 years. I have been downloading videos from googlevideo.com for even longer, before Google acquired YouTube.^1 Surprisingly (or not), when YT changes something that requires updating the script (and this has only happened to me about 5 times or less in 15 years) I have generally been able to fix the shell script faster than yt-dl(p) fixes its Python program (same for NewPipe/NewPipeSB)

    I prefer non-commercial videos that are not promoted. The ones with relatively low view counts. For more popular videos, I listen to the audio file first before downloading the video file. After listening to the audio, I may decide to skip the video. Also I am not overly concerned about throttling

    1. The original Google Video made a distinction between commercial and non-commercial(free) videos. The later were always easy to download, and no sign-in/log-in was required. This might be a more plausible theory why YT has always allowed downloads for non-commercial videos

       # custom C filters to make scripts faster, easier to write
       # yy030 filters URLs from stdin
       # yy082 filters various strings from stdin, 
       # e.g., f == print format descriptions, v == print YT IDs
       # x is a YouTube ID
       # script accepts YT ID on stdin
       
       #/bin/sh
       read x;
       y=https://www.youtube.com/youtubei/v1/player?prettyPrint=false 
       curl -K/dev/stdin $y <<eof|yy030|if test $# -gt 0;then egrep itag=$1;else yy082 f|uniq;fi;
       silent
       #verbose
       ipv4
       http1.0
       tlsv1.3
       tcp-nodelay
       resolve www.youtube.com:443:142.251.215.238 
       user-agent "com.google.ios.youtube/19.45.4 (iPhone16,2; U; CPU iOS 18_1_0 like Mac OS X;)"
       header "content-type: application/json"
       header "X-Youtube-Client-Name: 5"
       header "X-Youtube-Client-Version: 19.45.4"
       header "X-Goog-Visitor-Id: CgtpN1NtNlFnajBsRSjy1bjGBjIKCgJVUxIEGgAgIw=="
       cookie "PREF=hl=en&tz=UTC; SOCS=CAI; GPS=1; YSC=4sueFctSML0; __Secure-ROLLOUT_TOKEN=CJO64Zqggdaw7gEQiZW-9r3mjwMYiZW-9r3mjwM%=; VISITOR_INFO1_LIVE=i7Sm6Qgj0lE; VISITOR_PRIVACY_METADATA=CgJVUxIEGgAgIw=="
       data "{\"context\": {\"client\": {\"clientName\": \"IOS\", \"clientVersion\": \"19.45.4\", \"deviceMake\": \"Apple\", \"deviceModel\": \"iPhone16,2\", \"userAgent\": \"com.google.ios.youtube/19.45.4 (iPhone16,2; U; CPU iOS 18_1_0 like Mac OS X;)\", \"osName\": \"iPhone\", \"osVersion\": \"18.1.0.22B83\", \"hl\": \"en\", \"timeZone\": \"UTC\", \"utcOffsetMinutes\": 0}}, \"videoId\": \"$x\", \"playbackContext\": {\"contentPlaybackContext\": {\"html5Preference\": \"HTML5_PREF_WANTS\", \"signatureTimestamp\": 20347}}, \"contentCheckOk\": true, \"racyCheckOk\": true}"
       eof

  • Or they want to show the advertisers they do EVERYTHING.... while in reality they don't. Not that their ad system isn't total braindead.

One of the things that drives me crazy about YouTube is that if a video gets taken down, it shows up as a "This video is no longer available" with no further metadata. I am far, far more uptight about no knowing which video was removed than I am about the fact that it is no longer available.

I have put serious thought into creating a tool that would automatically yt-dlp every video I open to a giant hard drive and append a simple index with the title, channel, thumbnail and date.

In general, I think people are way too casual about media of all kinds silently disappearing when you're not looking.

  • I had a Bash script that parsed my browser history, and for every YouTube video it would run yt-dlp with "--write-info-json --write-subtitles --download-archive=already-downloaded.db" flags. Creating it was the easy part, but keeping it running has presented some challenges. For example, Google started rate limiting my IP quickly, so I had to offload this process to a NAS, where it could keep running for hours overnight, persistently downloading stuff at near dialup speeds. Then I was running out of storage quickly, so I had to add video filtering, and I planned to add basic garbage collection. And of course I had to have youtube-dl (and later yt-dlp) updated at all times.

    In the end, I decided it is not worth it. In the scenario you described, I would take the video link/ID and paste it into Bing and Yandex. There is large chance they still have that page cached in their index.

    FWIW if you are going to create your own tool, my advice will be to make it a browser extension, and try to pull the video straight from YouTube's <video> element.

  • > This video is no longer available.

    This is why I recommend everybody to stay AWAY from Youtube Music. I migrated my curated playlists from Spotify a few years ago, and to my surprise now I have dozens of songs that are no longer available and Youtube doesn’t offer a way to at least let me know which song it was. Indeed, I was a paying user and Youtube caused intentional and irretrievable data loss.

    After a decade of paying for Youtube Premium I have unsubscribed and have vowed never to give them any more money whatsoever.

  • > In general, I think people are way too casual about media of all kinds silently disappearing when you're not looking.

    I used to be obsessed with this.

    The way I saw it was the universe took billions of years of concerted effort to generate a random number that represents a unique file such as an interesting video or image. It would be such a shame if all that effort was invalidated due to bullshit YouTube reasons or copyright nonsense or link rot or whatever.

    So I started hoarding this data. I started buying hardware and designing a home data center with ZFS and hundreds of terabytes to hold it all. I started downloading things I never actually gave a shit about just because they were rare and I wanted to preserve them.

    I think getting married cured me of this. Now it's all moments that will be lost to time, like tears in the rain.

    • I still have a bit of this, but I try to be realistic that hoarding too much shit is a waste. I simply try to filter whether that is something really worth keeping. Then I save it if it’s something I’m very interested in or if it has any sentimental value to me personally.

  • Agreed, I can't describe the sadness that some of my most treasured nostalgic videos were lost before I knew about yt-dlp, and I can't find out what their titles even were. For example on spotify when music gets removed, if it's in your playlist it just shows it greyed out and unplayable.

    Someone at google please give us the ability to see titles!

    • Not by default. The normal spotify setting is to simply silently remove them. You have to turn on the “show unplayable tracks” preference to know that your playlists have been altered without your consent.

  • I want a web cache that runs on my network transparently caching everything that goes through it. It would be a LRU cache but with the ability to easily mark some resource as archived such that it never gets deleted. A browser extension could be used to do this marking. Unfortunately client-side js makes this very difficult or even impossible to do.

    We really dropped the ball when it came to running random js from websites. The number of people who truly run only free software these days is close to zero. I used to block all js about 10 years ago but it was a losing battle and ended up being essentially an opt out from society.

  • The lack of even basic metadata when a video disappears is maddening... like a black hole where context used to be

  • I've always wondered why we don't see any platforms just remove the media while leaving the metadata, comments, ratings, etc intact. Like, is there some legal requirement that the idea itself has to be hard to find, or is it okay to just remove the media and let people keep discussing it?

    • It implies the service is lacking something, that it's deficient in specific tangible things you want but they don't have.

      A generic 404 for something you don't even know exists won't leave a `video_title` sized hole in your heart and chip on your shoulder, and won't give competitors opportunities to serve your needs instead.

    • Legal requirement - probably not. Econophysical constraint - betcha. They mostly don't care about the discussion, or the content, or the idea, they care about keeping your eyeballs within a given rectangle until a bell rings.

  • You can't even tell what channel removed videos were from. Very frustrating.

> Google needs YouTube downloaders. They perform a valuable role: If it were impossible to download YouTube videos, many organizations would abandon hosting their videos on YouTube for a platform that offered more user flexibility. Or they’d need to host a separate download link and put it in their YouTube descriptions. But organizations don’t need to jump through hoops -- they just let people use YouTube downloaders.

I don't think I believe this, as much as I'd like to. How many organizations would really consider this a critical need? My guess is, not enough for Google to care.

  • Also, if you upload a video to YouTube you can download it from YouTube Studio at any time, so that doesn't add up at all.

    YouTube just doesn't make this available via API, but you've always been able to manually from YouTube Studio download your uploaded videos.

  • If you talk about the vast majority of corporate videos (and written material) they mostly don’t care about access after 18 months or so. And in fact may well actively want to scrub them because info is no longer accurate.

This seems to be starting with the assumption that it's possible to prevent people from downloading the videos. That is a false assumption. You can, after all, just play the video and record it. Even if the entire machine playing the content is flawlessly locked down, you can just record the output.

The efforts at DRM done by companies like Netflix is done because the companies that licensed the content demand it. That doesn't mean the DRM works. You can find torrents of all those shows.

  • Yeah, you can capture HDMI stream with a cheap card so basically everything is ultimately copyable, however that brings in some friction. Some people prefer the easiest option, even if that showers them in advertisments and distupts their attention.

    • It only takes one guy to copy it and upload it to bittorrent or something. All these trusted computing schemes are dependent on the weakest link never breaking, where the weakest link is a piece of hardware that the attacker always has access to.

    • Not if you want the highest quality, and they could absolutely stop even that if desired. The only reason why those methods work is due to legacy support. If they only supported the latest versions of HDMI and DRM, it would be very hard to get decent quality video/audio. As it is, even with things currently as they are, we still don't have the high quality feeds that are sent to TVs and dedicated hardware.

      2 replies →

  • >That doesn't mean the DRM works. You can find torrents of all those shows.

    You know how any semi-motivated teen can open any masterlock with a piece of plastic, but we still use em? Keeps honest people honest - that's all.

  • DRM isn't perfect of course, but it largely works.

    Unlike with Youtube videos, you can't just freely pull something off GitHub and crack Widevine level 1 DRM. The tools and extracted secret keys that release groups use to pirate 4K content are protected and not generally available.

    This doesn't matter if you want to find something popular enough for a release group to drop in a torrent, but if you have personal access to some bespoke or very obscure content the DRM largely prevents you from downloading it. (especially at level 1, used for 4K, which requires that only a separate hardware video decoder can access the keys)

    tl;dr; DRM works in the sense it changes it from 1/100 people can download something (YouTube) to ~1/100000.

    • No, it really is not that complicated at all.

      You can just go online and grab software to bypass any and all DRM.

      It's called OBS.

      All DRM content must be rendered into meatspace at some point and there is literally no possible way to prevent this. Record your screen, record your system audio. It's pretty trivial

      4 replies →

  • Downloading a Netflix show is not as easy as downloading a YouTube video is not like you go Netflix downloader put a link and download the video easily. Actually as it's was expensive for the piraters to get the show they only offer it with ads. Maybe you can find it with torrents but series are less common to find than movies

    • Go to literally any private tracker and you’ll find that the vast, vast majority of pirates just do it for free, mostly because they like doing it. And I guarantee you’ll be able to find basically everything, including TV shows, and if you can’t it’s usually a request away.

      Mostly the only expense the pirates have is the cost of the media itself, so subscription for the streaming service or the cost of Blu-rays or movie rental.

    • It may not be as simple as youtube, but ive literally never not found a pirate stream for a netflix show within 10 minutes of it being released + the run time.

  • > That doesn't mean the DRM works. You can find torrents of all those shows.

    Causation does not mean correlation. The vast majority of content available via torrents did not come from breaking a streamer's DRM.

    • It didn't? Then how are they getting the streamed bits directly? Since there's generally a torrent available that is the direct source, no re-encoding.

      Or do you mean they read the source from hacking into a memory buffer after the player does decryption but before decoding, instead of doing the decryption themselves?

      2 replies →

    • This is completely bullshit. If you find a proper download, you’ll usually see something like “NFLX.WEB-DL” on the file name. That means it got ripped and downloaded from Netflix.

      The DRM decryption isn’t the hard bit - it’s actually mostly a standard thing, and there are plenty of tools on GitHub that will decrypt it from you if you have a key, e.g. Devine.

      The issue is mostly around getting a key, but those are easy enough to get if you know where to look (e.g. TV firmware dumps).

      Once you have this though, and any piracy group will have this, it’s so much easier to do this than to screen record, and will give you the original quality as well.

> Google has now covered its tracks better -- there’s nothing about “Google Product Abuse” in its current AdSense policies.

In other (less biased) words: These old rules were rescinded haven't been enforced since 2012 (last example cited). This article was written in 2025 and still complaining about something that isn't happening anymore.

  • It‘s still a stark abuse of power and borderline extortion by Google to use a private sentencing mechanism rather than dragging the purpetrator to public court over advertising and/or encouraging criminal activity, which may or may not have happened if Google Ads and Youtube were not part of the same monopolistic entity.

“If it were impossible to download YouTube videos, many organizations would abandon hosting their videos on YouTube for a platform that offered more user flexibility.”

Seems like a bit of a presumptuous proposition. If it were impossible, the web just might be a bit more shit, and the video monopoly would roll on regardless. Most might just come to take for granted videos of personal significance (I downloaded one of my grandpa in WW2 footage, for example, and there was no other version available except the YouTube one) are dependent on YouTube continuing to host them.

Some would, of course, use alternative platforms that offer proper download links, but it's hard to think that would be most, easy to think that would be well under 5% of those uploading videos that should in ways be a kind of permanent archive, or that this loss would really amount to anything to Google, commercially. Maybe not something to poke the bear on?

  • Try working in a large corporation and proposing a new feature that will reduce revenue by 5%.

Is Stacher open source?

Last time I searched 'stacher open source' on Google, I found a Reddit thread discussing when it might become open source.

EDIT: The reason I ask is that the article says Stacher is open source, and that is news to me.

  • I couldn't find any source code either. Cobalt also isn't really libre; their backend is AGPL, which is great, but their frontend is CC BY-NC-SA, which is not so great (and definitely not open-source).

    I'd advise against downloading via someone else's servers anyway, as can be seen by their instance being blocked by Google. Hopefully some day someone manages to port yt-dlp to WASM, then it can be run locally in the browser without needing a download.

    Fun fact: yt-dlp is public domain! That's really generous of them and I'm really thankful for their work.

Want I really want is an *arr style app that I can give a list of Youtube channels I want archived, and it would just keep the archive up to date indefinitely.

My city posts bodycam video on YouTube private links. Being able to download them is necessary to preserve evidence. Nice bonus that you get a machine transcript as well.

For the android spot I'd like to recommend Seal: https://f-droid.org/packages/com.junkfood.seal/

It's "just" a yt-dlp frontend with a nice UI, meaning it works with sites other than youtube as well.

It also adds a quick-download option to the android sharing menu when sharing a link, which I've found incredibly convenient.

ytarchive is also great for downloading livestreams.

Unfortunately, it's not as up-to-date as yt-dlp so it can be fragile against blocks. I'm hoping that yt-dlp adds some functionality for downloading portions of a livestream (i.e. not downloading from the start, 120 hours ago).

  • Huh, last/only time I used yt-dlp on a livestream it downloaded exactly from when I ran it, didn't get anything in the past at all (which was a shame for me personally at the time, as I would have liked the earlier stuff too).

    Maybe that was a difference in the stream itself though, since I've experienced both past-seekable and live-only live streams on YouTube.

    • turning off the DVR is just a UI change. ytarchive can still grab the past parts of the broadcast just fine. What's really funny is it will even download censored segments which sometimes happens in music broadcasts like A State Of Trance or Group Therapy. You can also force enable seeking with a userscript if you wish.

      The problem with this DVR feature is that if your connection is stuttering it will buffer you backwards a bit. Streamers like to disable this because they want to keep the time to deliver as low as possible so chat is more interactive and engaging, especially on youtube where your viewership might not qualify for the CCV metrics if the stream is not in a foreground tab. Best to leave it off if that is important for you.

      https://greasyfork.org/en/scripts/485020-ytbetter-enable-rew...

I surprised they didn't even mention jdownloader on the list. It's great for most sites.

  • Seconded on jDownloader. Still works on an ancient system with Java 1.8.0_66, and able to install the latest updates. Covers so many platforms, not just YouTube.

Can I just rant about how absolutely ridiculous it is that google, a company that has made it's fortune off the back of the web and public internet infrastructure blocks downloads. Maybe when it started this was a necessary compromise. In 95' it cost between a hundredth ~ a tenth of a cent to serve the average webpage, it costs google much less than that to serve a video, literally 0 if the users ISP already cached it (think about how unfair that is for a moment a AI generate short evicting some live saving medical document from your ISPs cache so that when you request it the owner of that resources pays again and the user is delayed in their request for potentially live saving information. GROSS!).

The part that is so infuriating is that they try to turn around and capture that value would should rightly be owned by the public by offering downloads for premium members, especially when that we KNOW the only reason YouTube isn't totally financially ruined is that the ISPs are legally required to price worthless youtube's (literally AI generated) spam traffic the same as useful services. (Net Neutrality)

And the are using these ill gotten gains to create their own backbone for yet more profit. Entirely pointless exercise when you realize the government is eventually going to break these companies up and will of course nationalize the one that owns all the infrastructure. Corporations are simply not the correct tool for managing infrastructure that the public relies on. I'm sure anybody whose tried to run a business on top of a google service can attest that's it's a bad strategy and is guaranteed to fail in the long term.

  • If you ever tried hosting video at scale, you'll quite quickly learn that "0" cost x many users is a pretty big number.

    And your ideas on ISP caches are from the prehistoric ages, everything is over HTTPS, the only caches for youtube are dedicated servers given to the ISP by google.

Didn't know about https://stacher.io/, will take a look.

On my favorites YouTube downloaders with UI, I have:

- Varia https://giantpinkrobots.github.io/varia/

- Media Downloader https://github.com/mhogomchungu/media-downloader/

It's interesting that YouTube not only does not block pirated movies on ok.ru, they give them high rankings in search. Hm.

Happy user of yt-dlp for years. It's not just an app, it's mainly a Python library, so it can be scripted from a larger Python app, which is super useful.

Had never heard of Statcher, but it seems to just be a gui front for yt-dlp.

In my experience, New Pipe has never worked properly.

TIL about stacher!Thank you.

  • Yeah! Stacher was one of the reasons I shared this on HN.

    Also interesting take on why downloaders are ethical; Google tacitly allows and actually needs them.

There is also a program called streamlink. I have found it good to find Live streams at Youtube, since those often changes. For example, if a TV channel has a live stream at a certain Youtube URL, a few weeks later, it may be at a different URL. But streamlink can sometimes find it, just by looking at the Youtube channel

Youtube is a youtube downloader. Everything is a downloader. It's literally impossible to interact with a thing without downloading it and having the data. The difference is that the data is usually deleted later (a silly practice done to trick the lawyers into believing the world is like they think it is, hiding actual reality that would confuse and enrage them).

  • The word "download" is used in two senses. The first is the broader sense you're referring to, where it means "to receive data." The second sense means to collect all the data from a particular file or dataset and store it locally, as opposed to "streaming." That second sense is the one clearly being used when referring to "YouTube downloaders."

    • If you view the entire file they are the same thing. And they're always being collected and stored locally even if it's hidden from you.

      And a static mp4 file encoded with ffmpeg -movflags +faststart -start_at_zero can be seeked within in any browser from any static webserver and viewed at any seeking time without downloading the rest. Is this streaming too?

      Given the first example of fully watching and the second implementation of streaming with a simple static file you can see the streaming/file download distinction you make is much thinner than it first appears. At least from a technical perspective.

      In lawyer-ese you are making a valid semantic point which I do acknowledge. "Streaming" in lawyer-ese means a corporation is doing it so there's: 1. legal liability 2. lots of abstraction layers involved so they don't get upset and 3. the local files are hidden from view of the user. Unlike the simple streaming example with a properly encoded .mp4 file.

  • Agreed, more or less, but I would argue you could make a distinction for a "streaming" situation where say no more than 10% of the data is on your computer at any one point in time, vs "downloading" where the data exists in its entirety at once.

    You could encode these terms in a contract or something about allowed usage of a service, I believe.

I didn't realize Google had gone evil way back in 2012.

I don't have a problem with Youtube trying to make downloads difficult, but using its advertising monopoly to bully publications into not discussing software Google doesn't like is outrageous.

> many organizations would abandon hosting their videos on YouTube for a platform that offered more user flexibility

Well it's about tie organizations also upload their videos to peertube!

It's not incompetence, it's strategy. They want a gray zone so they can maintain dominance without giving users too much official power

I might be out of the loop, but doesn't YouTube already allow downloading videos? I don't understand the purpose of these tools

  • Youtube's iPad app allows you to download videos, but there is no way to extract them from the app (for use for example in a different app or to edit or to upload to a different video-sharing site).

>The best YouTube downloaders for Windows (and beyond)

Didn't even mention https://3dyd.com

  • Let me download this random .exe from this conspicuous clean random page in the internet, and run it on my machine...What could go wrong?

    • Ah, I can see how it looks, it's just a GUI wrapper for ffmpeg and he's a trusted dev especially in the foobar2000 community. I've been using his sw on and off for 10+ years together with yt-dlp but again, I get your point.

The author makes the case that EULAs are "toothless." However, what about federal law? In the U.S., at least, it is illegal to make copies of other people's work. This is not an offense against YouTube (who does not inherently own the media they present), but the publishers, the creators, etc. Somehow, I doubt that Alan Becker would approve people downloading and sharing his videos willy-nilly.

  • I don't know about US law, but I would assume the "copying" in a legal sense involves distributing to a third party.

    Maybe I am too old, but I remember a time where the broad population recorded radio shows on Tape and video shows on VHS, and no one was asking any copyright questions. And yes, recording a TV show in your home VHS recorder and selling/giving it to third parties, was illegal in most jurisdictions and the same laws apply probably still today.

    But recording something for your own archive and watch it home (possibly with family members) is probably also still perfectly legal (as long as no DRM bypass was used).

    • VHS recordings of live TV are a bit different. According to Sony Corp. of America v. Universal City Studios, Inc., this practice is known as Time Shifting, which is simply making the recording available for later use. The ad money has already exchanged hands, and the work was already available for public use. The court rules 5-4 that this time shifting fell under fair use.

      YouTube ad money works a bit differently, and downloading the video tends to bypass that process. Also, Streaming is by its nature on-demand, so there are a lot fewer benefits for downloading the video. Furthermore, U.S. copyright law has changed since the previously cited case, so there are some extra restrictions to contend with that the Sony case did not.

Microsoft new about piracy, and used it to become popular.

YouTube plays a game with downloaders to be and stay popular, supported even by niche devices.

On the other hand they will use vague license statements to strike opponents.

Even RSS YouTube is accessible to bots, but block d by robots. They can always claim you are doing something wrong of they wanted.

I think there's definitely an argument to be made that Google needs YouTube downloaders to work in some capacity, since a lot of their biggest and most profitable creators rely on them. Think news outlets/streamers/YouTubers that analyse video game/film/TV show trailers, reaction channels, drama YouTubers and celebrity YouTubers, essay channels in general, etc. Very few of those can afford to record all their own footage for their videos, simply due to how much time and effort it'd take. They rely on things like longplay channels and official company channels posting trailers for material, and bring Google a ton of traffic in return.

So there's probably at least some calculation where they have to decide how much effort they're putting into cracking down on these things, simply because on the one hand they don't want to anger Hollywood and music labels, and on the other hand they don't want to kill off 3/4 of media analysis content on the platform.

There's also the fact a lot of creators will deliberately turn a blind eye to people reusing their video footage so long as they credited in return. For a lot of them, it's less work to just let people figure out how to get the footage from their channels than to set up a third party hosting service where you can officially download them.

Interesting to hear about the terms of service provision though. Wonder how well it would hold up now given that a lot of modern outlets use donations or paid subscriptions for financing rather than ads? I can see an outlet like 404 Media covering YouTube downloaders at some point because of that.