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.
> 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.
This is more or less what I already do with uBlock/uMatrix. By default, I filter out ALL third party content on every website, and manually allow CDNs and other legitimate third party domains. I still use DNS blacklists however so that mobile devices where this can't be easily done benefit from some protection against the most common offenders (Google Analytics, Facebook Pixel, etc.)
I’m not sure why everyone keeps repeating this. The fight is lost. Your data is being collected by the websites you visit and handed to Facebook via a proxy container. You will never see a different domain, it’s invisible to the end user.
Care to elaborate on the mechanisms at play? If what you claim is true, all websites would already serve ads from their own domain. The main issue I can see with this approach is that there would be an obvious incentive for webmasters to vastly overstate ad impressions to generate revenue.
As far as I understand, the objective is completely different. Ads are shown on platforms owned by Meta, and the Conversions API runs on the merchant's website (server-side), and reports interactions such as purchases back to Facebook.
This is quite different from websites monetizing traffic through and trackers placed on their own webpages. Those can still be reliably blocked by preventing websites from loading third party content.
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
> 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.
You acknowledge that it's not that simple:
> 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)
Can any old server really handle that? And can it handle the resulting storage of not only the highest-quality copy but also all the other copies added on top? My $5 Linode ("any old server") does not have the storage space for that. You can switch your argument to "storage is cheap these days," but now you're telling people to upgrade their servers and not actually claiming it's a one-click process anymore.
I use Vimeo as a CDN and pay $240 per year for it ($20/month, 4x more than I spend on the Linode that hosts a dozen different websites). If Vimeo were to shut down tomorrow, I'd be pretty out of luck finding anyone offering pricing even close to that-- for example, ScaleEngine charges a minimum of $25 per month and doesn't even include storage and bandwidth in their account fee. Dailymotion Pro offers a similar service to Vimeo these days, but their $9/month plan wouldn't have enough storage for my catalog, and their next cheapest price is $84/month. If you actually go to build out your own solution with professional hosting, it's not gonna be a whole lot cheaper.
Obviously, large corporations can probably afford to do their own hosting-- and if push came to shove, many of them probably would, or would find one of those more expensive partner options. But again, you're no longer arguing "it's just an HTML tag." You're now arguing they should spend hundreds or thousands per year on something that may be incidental to their business.
The server is $30/month hosted by OVH, which comes with 2TB of storage. The throughout on the dedicated server is 1gbps. Unlimited transfer is included (and I've gone through many dozens of TB of traffic in a month).
No lol nobody is reading the numbers. Vimeo is $20 / mo. Vimeo + $5 Linode server = $25 / mo, cheaper than the $30 / mo OVH server. The quoted ScaleEngine is $25 / mo, which ($25 + $5 = $30) the same as the OVH server.
Y'all just have two different budgets. For one person $30 / mo is reasonable for the other it's expensive.
But the core claim, that $5 / mo hosts a lot of non-video content but not much video content, holds.
You misread the bandwidth cost part of my comment.
A $28/mo (Australian) vimeo subscription, or the "Advanced" $91/mo plan include the same 2TB bandwidth/month for viewers of your videos.
If you upload a 100MB video and it gets 20000 views the whole way through, you are now in the "contact sales" category of pricing.
This is why Youtube has a monopoly, because you've been badly tricked into thinking this pricing is fair and that 2TB is in any way shape or form adequate.
Tbh, the $5 claim was in response to me but I never said any VPS would have the storage capacity to host a catalogue. I said any server. Call it my self-hoster's bias but I really did picture a hardware server with a hard drive in it, not a virtual access tier with artificial limits
But yeah okay, not any server variant can do this and the cloud premium is real. You'd need so spend like 5€/month on real hard drives if you want, say, 4TB of video storage on top of your existing website (the vimeo and dailymotion price points mentioned suggest that their catalogue is above 1 but below 2 TB). The 5€/month estimate is based on the currently most-viewed 4TB hard drive model in the tweakers pricewatch (some 100€), a modest average longevity of 5 years, triple redundancy, and that you would otherwise be running on smaller drives anyway for your normal website and images so there's no (significant) additional labor or electricity costs for storage (as in, you just buy a different variant of the same setup, not need to install additional ones)
~~Likely much less than .25/m if that’s mbps. The issue is you’d have no shortage of money at that scale - I run one of the two main Arch Linux package mirrors in my country and while it’s admittedly a quite niche and small distro in comparison, I’m nowhere close enough to saturate 1gbit on normal days, let alone my 10gbit link~~
It’s a trade off I suppose - you can very well host your own streaming solution, and for the same price you can get a great single node, but if you want good TTFB and nodes with close proximity to many regions you may as well pay for a managed solution as the price for multiple VPS/VM stacks up quickly when you have a low budget
Edit: I think I missed your point about bandwidth pricing lol, but the second still stands
Yeah, currently hosting LLHLS edge nodes in US + EU and caching CDN worldwide. The base cost grows if you have an audience of e.g. 2000 live viewers for a 2mbps stream = 4gbps.
Could be a lot cheaper and less need for global distribution if low latency weren't a requirement. And by low latency I mean the video stream you watch is ~2s behind reality just like Youtube, Twitch, Kick, etc. If your use case is VOD or can tolerate 10s latency streaming, single PoP works fine.
The point is that if I chose Vimeo or AWS/GCP/Azure for this, at their bandwidth pricing my (in my opinion modest) usage would be costing tens of thousands of dollars monthly, which it most certainly does not.
Managed service pricing and the perception of it needs to change, because it feels like a sham once you actually do anything yourself.
Fwiw, the browser's built-in player does buffering. You don't need to custom-code that, you can just use <video>. The browser also exposes via Javascript when it estimates that the download speed and buffer size is sufficient such that you can start playback without interruption: https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaEl...
Doesn't cloudflare and amazon have this now? Pretty sure CF is developing a closed source player- but theres plenty of FOSS ones (rip the one jellyfin uses out of it- at worst).
And, theres plenty of tutorials on using ffmpeg based tools to make the files. And yes, "oh no, I need to learn something new for my video workflow."
It’s easy to set up a backend video hosting system. But unless you are running (and checking!) a strong client-side observability system, you’ll never see all the problems that people are having with it. And they won’t tell you either, they’ll just leave.
Reddit struggles to provide a video player that is up to YouTube’s par. Do you have more resources than Reddit? Better programmers?
It is actually pretty easy to provide video. It's hard to provide video to a lot of people.
Reddit and Youtube have just a massive number of people visiting and trying to watch video at all time. It requires an enormous amount of bandwidth to serve up that video.
Youtube goes through heroic efforts to make videos instantly available and to apply high quality compression on videos that become popular.
If you don't have a huge viewership or dynamic content then yeah, it's actually pretty easy to setup and run videos sites (infowars has managed it). Target h264 and aac audio with a set number of resolutions and bitrates and viola, you've got something that's pretty competitive on the cheap that can play on pretty much any device.
It's not optimal for bandwidth, for that you need to start sniffing client capabilities. However, it'll get the job done while being pretty much universally playable.
I don't know what the Youtube compression queue looks like.
I'd not be shocked if they do more aggressive compression for well known creators.
For nobodies (like myself) the compression is very basic. Whatever I send ends up compressed with VP9 which, I believe, youtube has a bunch of hardware that can do that really fast.
Thing with Infowars is, they got a lot of rich people and probably Russia paying the bills. Video hosting still is damn expensive if you are not one of the top dogs.
> Reddit struggles to provide a video player that is up to YouTube’s par. Do you have more resources than Reddit? Better programmers?
It's hard to say whether MDN and I have/am better programmer(s) and resource(s) than reddit without having any examples or notions of what issues reddit has run into.
If you mean achieving feature-parity, like automatic subtitles and dubbing and control menus to select languages and format those subtitles etc., that's a whole different ball game of course. The site I was speaking of doesn't support that today either (they don't dub/sub), at best you get automatically generated Dutch subtitles from yt now, i.e. shit subtitles (worse than English autogen and we all know how well those deal with jargon and noise)
You're linking to a page with a 5 second 1MB video on it. Yes, it's easy to use the <video> element to serve a video file no larger than a picture. No, that does not mean you have a system that will allow thousands of users to watch an 11 min HD video during their subway ride that starts instantly and never pauses, stutters, or locks up.
I can't speak to Dutch websites but in the U.S., a news website will usually feel obligated to provide subtitles on their videos to avoid lawsuits under the ADA.
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.
I've seen public schools and public courts use YouTube to host their videos. I don't quite follow why they would care so much about either using downloaders themselves or their users having access to downloaders that they'd switch providers. To me it is unlikely but plausible.
But even if they did - I don't see why Google would care about these organizations. I expect anyone doing this is not expecting to get any views from the algorithm, is not bringing in many views or monetizing their videos.
To steelman it though, maybe Google cares if their monopoly benefits from nobody even knowing other video sites exist.
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.
Depending on the player and how they cache it. Yes, if google monitor every byte to which client had downloaded, but that just seems like ultra micro managing, and have no idea how many players will it break. Youtube seems like one of those site, should allow people to download or make them a public utility on IPFS or something like that.
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.
The official download option doesn't download it to your filesystem as a file. It just lets you watch the video offline in the official app/website. Just tested it now.
Meaning the video file exists in your file system somewhere, so downloading at a higher speed than possibly viewing the video is an existing functionality in the app.
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.
Seems quite naive to think they'd be affected in any way by the tiny intersection of users that are both yt-dlp users and premium subscribers boycotting them...
If every user of yt-dlp did as I do, then it would have exactly the effect that it needs to have. If yt-dlp is used by a small minority of users, why would Google be antagonistic to it? And if it's used by sizeable portion of users, then they would care.
Primarily because they contractually promised the music industry they'd do everything they can to prevent tools that allow the downloading of copyrighted music from the service.
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?
I just mean some kind of public service like one of those archive sites. So they would place it into YouTube for revenue but also these other places so there’s a way to get the videos without Google being a dictatorial overlord.
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.
That's a wildly imaginative fever dream you're having. There is no timeline in which content creators would pay YouTube to encrypt their video content.
Here has to be at least some benefit Google thinks it gets from youtube downloaders, because for instance there have been various lawsuits going after companies that provide a website to do youtube downloading by the RIAA and co, but Google has studiously avoided endorsing their legal arguments.
Anything that's had an official YouTube app for the past nine years does, because it's been a hard requirement for a YouTube port that long.
It's much more likely YouTube just doesn't want to mess with it's caching apparatus unless it really has to. And I think they will eventually, but the numbers just don't quite add up yet.
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.
When you upload a video to YouTube, you agree that you own the copyright or are otherwise able to grant YouTube a license to do whatever they want with it [0]:
> If you choose to upload Content, you must not submit to the Service any Content that does not comply with this Agreement (including the YouTube Community Guidelines) or the law. For example, the Content you submit must not include third-party intellectual property (such as copyrighted material) unless you have permission from that party or are otherwise legally entitled to do so. [...]
> By providing Content to the Service, you grant to YouTube a worldwide, non-exclusive, royalty-free, sublicensable and transferable license to use that Content (including to reproduce, distribute, prepare derivative works, display and perform it) in connection with the Service and YouTube's (and its successors' and Affiliates') business, including for the purpose of promoting and redistributing part or all of the Service.
If you include others' work with anything stronger than CC0, that's not a license you can grant. So you'll always be in trouble in principle, regardless of whether or how YouTube decides to exercise that license. In practice, I wouldn't be surprised if the copyright owner could get away with a takedown if they wanted to.
Yes, this absolutely does not shield YouTube from liability from third parties, since the copyright holder of third-party content included in the video is not a party to the agreement. That's why they have a copyright notice and takedown procedure in the first place, and also the reason for numerous lawsuits against YouTube in the past, some of which they have lost.
To date, many Creative Commons licenses do in fact amount to "permission from that party", but if they start using DRM, those licenses would cease to grant YouTube permission.
You may not be very familiar with Creative Commons licensing. For example, CC BY-SA 4.0 would prohibit YouTube from using DRM:
> No downstream restrictions. You may not offer or impose any additional or different terms or conditions on, or apply any Effective Technological Measures to, the Licensed Material if doing so restricts exercise of the Licensed Rights by any recipient of the Licensed Material.
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
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.
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.
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.
I very rarely download YouTube videos but simply having done it a few times over the years, and even watching the text fly by in the terminal with yt-dlp, everything you’ve said is obvious.
Screen recording indeed might fail—Apple lets devs block it, so even screen recording the iPhone Mirroring app can result in an all-black recording.
How long until YouTube only plays on authorized devices with screens optimized for anti-camera recording? Silver lining, could birth a new creative industry of storytelling, like courtroom sketch artists with more Mr. Beast.
> (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.
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.
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.
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 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.
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.
> 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.
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.
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.
> 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.
That sounds brutal if you have 5 years of daily uploads or something like that. At some point, if you want your entire catalog, that becomes a very sucky process.
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.
I wonder if it would be possible to use e.g. an FPGA to intercept the "last-leg" MIPI signals going between a TV/monitor's control board and the physical display panel itself. Surely there can't be any DRM at that level, because there is not much more "compute" down the line?
Granted, you would have to deal with whatever your display does to the raw video signal - preferable to pointing a camcorder at the display but a little worse than the original file.
Yes actually you can. But you don't even need to go that far, there are HDCP converters that do it for you and convert to HDCP 1 (whose master keys have been made available) or just plain HDMI. See HDFury etc.
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.
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.
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
Netflix only serves 720p (or below) video to any platform that does not encrypt the video path that prevents OBS or anything else from screen recording.
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?
I don't see how that would work with videos that don't have differeny original sources. For example, Netflix-original shows/movies. While a small fraction are released on DVD/Blu-ray, the vast majority are only accessible through Netflix, nowhere else.
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.
Ripping the HDMI stream (which is usually still breaking DRM!) is going to force you to reencode the video which will inevitably lose quality. You might also end up with UI elements on the screen and won’t be able to get subtitles out.
I assume HDCP is the reason a lot of ripped content is not in 4K (or because needs a more expensive Netflix subscription). It sounds like people just bypass it by using an HDMI splitter however.
Eh sort of sometimes maybe. Lots of hardware/cables out there that don’t care what you’re doing. I can use an ATEM mini to grab basically anything I want so long as I’m down to capture in real time.
> 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?
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.
For Linux... youtube-dl I guess, because there's still no really nice alternative to it. It doesn't seem like Stacher supports non-debian systems, or non-gnu libc systems, either.
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.
This is what I use and it works great. I mainly use it to download things like 3-hour music playlists ahead of long drives to avoid wasting mobile bandwidth.
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.
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.
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.
The article doesn't include Android TV based devices like Chrome/Fire sticks. Android mobile apps tend not to work with remote controls. The best Android TV app is: https://smarttubeapp.github.io/
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.
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.
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'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).
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."
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 understand now that I was talking about how youtube currently works and you two were talking about how youtube could be contrived to work.
Yes, it could. It'd only just waste more bandwidth having to redownload and cause more pauses. But people who buy things (the important ones to advertise to) have fast connections and everyone's locked in so google can focus more on advertiser issues over the lower end network user experience.
Even with DRM, if you can see it, it's decoded somewhere along the line. There will always be a way to get the raw video out of it if you're committed enough.
That's actually an important distinction. You can recapture the DRM protected (and then decoded) video pretty much always indeed, but then you degrade the quality by having to encode it again.
Well, not important to some, but for enthusiasts and people looking to actually archive things, it is very important.
Case in point, hilariously, the last time I used YouTube's video download feature bundled with their Premium offering, I got a way worse quality output than with yt-dlp, which actually ripped the original stream without reencoding it.
I think I saw an idempotent h264 encoder at some point, where you wouldn't suffer generational loss if you matched the encoder settings exactly from run to run. But then you might need the people mastering the content (in this case YouTube) to adopt that same encoder, which they're not going to be "interested" in.
The problem is that if you have the raw data, you’ve lost the original compression information, so you can’t get it back to a sensible size without double compressing. e.g. Think about what you get when you save a jpeg as a bitmap.
The "entire point" of contemporary lossy-media DRM [0] is to prevent you from doing that. You can only do so if the DRM scheme is circumvented or unsound [1].
That is not what we're talking about - the working assumption here is that the DRM scheme is sound and effective. In which case your only possible but also guaranteed stage of recapture is at the analog hole, by which point the media encoding is already undone, incurring a generational loss.
[0] I consider presently existing and historical DRM implementations deeply flawed and misguided; they severely overstep their boundaries implied by the name "DRM", in certain cases quite disgustingly - hence the many added adjectives for clarification
[1] puzzlingly, any access control will actually get you in the same legal situation, regardless of whether the access control mechanism is effective or sound, so this is actually a design decision; but it's pretty universally taken afaik.
> That is not what we're talking about - the working assumption here is that the DRM scheme is sound and effective.
Lol. That is not possible.
If I'm able to watch something, my device must be able to decrypt the DRM. If my device can decrypt the DRM, I can take my device apart and figure out how it does this, and do it myself.
The most DRM encumbered format is DCP, used my cinemas. Each projector has a unique key burnt into it, the decryption, decoding and watermarking happen on the same piece of silicon, and the entire device is built like an HSM, opening it wipes the keys.
There are bit-perfect DCP rips on the high seas, with the original compressed data.
HDCP is meant to prevent me from copying HDMI signals. Every conference center and lecture hall has cheap Chinese devices that remove it.
Regarding the analog hole, with a properly calibrated professional video camera recording in RAW, with both camera and monitor genlocked and color calibrated, and the proper postprocessing, you can capure the original pixel values exactly.
I've done that part more often than I'd like...
And worst case, you can then brute force which parameters the original encode used to re-encode your data without generation loss.
It is possible, both under the conservative interpretation of the word (like how AACS is continuously updated as security holes are found and compromises happen, with the keys being rotated each time), and on a theoretical level (FHE). The latter is not being done because it is not nearly performant enough, and the former is an ongoing cat and mouse game that is once again irrelevant to what we were discussing here.
With FHE, the "take the machine apart and analyze what it does to get the original bitstream" would be cryptographically hard, so good luck with that. With the usual DRM schemes it isn't, so they are pretty much always cracked in a few months or a few years, but until that point they are both sound and effective.
> Regarding the analog hole, with a properly calibrated professional video camera recording in RAW, with both camera and monitor genlocked and color calibrated, and the proper postprocessing, you can capure the original pixel values exactly.
Yes, that's what I'm suggesting too...
> And worst case, you can then brute force which parameters the original encode used to re-encode your data without generation loss.
Can you? I mean in practice, in a practical amount of time. And is that actually done?
> like how AACS is continuously updated as security holes are found and compromises happen, with the keys being rotated each time
And yet with consumer hardware you can accurately rip every UHD Bluray right on release day, without any trouble.
> Can you? I mean in practice, in a practical amount of time. And is that actually done?
Most of the time effort of encoding is already spent on brute forcing these parameters to most effectively match the original input. You just need to change the way the encoder scores each possible result.
> With FHE, the "take the machine apart and analyze what it does to get the original bitstream" would be cryptographically hard, so good luck with that.
So what? You could just distribute the encrypted datastream and the key you've extracted from a device, say a smartphone you bought from an electronics recycler.
Also, I don't see how FHE with video would be possible in the next decades, considering the limitations to Moore's Law in recent years.
Video codecs are extremely complicated, requiring lots of memory and processing power.
Ten years ago, even the best gaming PCs couldn't handle software decoding. Even today many mid-range systems can't handle software video decoding.
Even hardware implementations regularly require more power and memory than the entire rest of the system. There's a reason Raspberry Pi's are primarily a video decoding chip with a CPU as coprocessor, which is why the GPU runs the bootloader.
Video is constantly at the limitations of what we can physically accomplish.
Your suggestion would require spending a massive chunk of silicon area of a SoC on a FHE decoding ASIC that would only be useful for the small minority of DRM-encumbered content people watch.
And every manufacturer, every device, would have to join, for it to make any sense at all.
Shit? Illegal? It's literally your right on videos like <https://www.youtube.com/watch?v=JSEJApMIrLU>. Expand the description and see at the bottom: license is set to creative commons. The copyright holder permits everyone to remix the video but youtube still does not show a button for you to actually make use of that
You need to breach the terms of service (use a downloader) to exercise the rights of the content license that youtube supports
As the other sister comment said. I was replying to you saying YouTube has downloading in a thread about file access.
I use the YouTube premium offline access, it’s nice but I only have premium for mobile background.
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.
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.
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.
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://news.ycombinator.com/item?id=45301499
[1] Chrome's hidden X-Browser-Validation header reverse engineered https://news.ycombinator.com/item?id=44527739
[2] 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.
This is more or less what I already do with uBlock/uMatrix. By default, I filter out ALL third party content on every website, and manually allow CDNs and other legitimate third party domains. I still use DNS blacklists however so that mobile devices where this can't be easily done benefit from some protection against the most common offenders (Google Analytics, Facebook Pixel, etc.)
I’m not sure why everyone keeps repeating this. The fight is lost. Your data is being collected by the websites you visit and handed to Facebook via a proxy container. You will never see a different domain, it’s invisible to the end user.
Care to elaborate on the mechanisms at play? If what you claim is true, all websites would already serve ads from their own domain. The main issue I can see with this approach is that there would be an obvious incentive for webmasters to vastly overstate ad impressions to generate revenue.
Look up Facebook Conversions API Gateway
As far as I understand, the objective is completely different. Ads are shown on platforms owned by Meta, and the Conversions API runs on the merchant's website (server-side), and reports interactions such as purchases back to Facebook.
This is quite different from websites monetizing traffic through and trackers placed on their own webpages. Those can still be reliably blocked by preventing websites from loading third party content.
[dead]
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
> 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.
You acknowledge that it's not that simple:
> 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)
Can any old server really handle that? And can it handle the resulting storage of not only the highest-quality copy but also all the other copies added on top? My $5 Linode ("any old server") does not have the storage space for that. You can switch your argument to "storage is cheap these days," but now you're telling people to upgrade their servers and not actually claiming it's a one-click process anymore.
I use Vimeo as a CDN and pay $240 per year for it ($20/month, 4x more than I spend on the Linode that hosts a dozen different websites). If Vimeo were to shut down tomorrow, I'd be pretty out of luck finding anyone offering pricing even close to that-- for example, ScaleEngine charges a minimum of $25 per month and doesn't even include storage and bandwidth in their account fee. Dailymotion Pro offers a similar service to Vimeo these days, but their $9/month plan wouldn't have enough storage for my catalog, and their next cheapest price is $84/month. If you actually go to build out your own solution with professional hosting, it's not gonna be a whole lot cheaper.
Obviously, large corporations can probably afford to do their own hosting-- and if push came to shove, many of them probably would, or would find one of those more expensive partner options. But again, you're no longer arguing "it's just an HTML tag." You're now arguing they should spend hundreds or thousands per year on something that may be incidental to their business.
Here's me hosting a bunch of different bitrates of a high quality video, which I encoded on a 2016 laptop. http://lelandbatey.com/projects/REDLINE-intro/
The server is $30/month hosted by OVH, which comes with 2TB of storage. The throughout on the dedicated server is 1gbps. Unlimited transfer is included (and I've gone through many dozens of TB of traffic in a month).
People paying for managed services have no concept of bandwidth costs, so they probably think what you just described is impossible.
Bandwidth these days can be less than .25/m at a 100g commit in US/EU, and OVH is pushing dozens of tb/s.
Big ups on keeping independent.
No lol nobody is reading the numbers. Vimeo is $20 / mo. Vimeo + $5 Linode server = $25 / mo, cheaper than the $30 / mo OVH server. The quoted ScaleEngine is $25 / mo, which ($25 + $5 = $30) the same as the OVH server.
Y'all just have two different budgets. For one person $30 / mo is reasonable for the other it's expensive.
But the core claim, that $5 / mo hosts a lot of non-video content but not much video content, holds.
You misread the bandwidth cost part of my comment.
A $28/mo (Australian) vimeo subscription, or the "Advanced" $91/mo plan include the same 2TB bandwidth/month for viewers of your videos.
If you upload a 100MB video and it gets 20000 views the whole way through, you are now in the "contact sales" category of pricing.
This is why Youtube has a monopoly, because you've been badly tricked into thinking this pricing is fair and that 2TB is in any way shape or form adequate.
Tbh, the $5 claim was in response to me but I never said any VPS would have the storage capacity to host a catalogue. I said any server. Call it my self-hoster's bias but I really did picture a hardware server with a hard drive in it, not a virtual access tier with artificial limits
But yeah okay, not any server variant can do this and the cloud premium is real. You'd need so spend like 5€/month on real hard drives if you want, say, 4TB of video storage on top of your existing website (the vimeo and dailymotion price points mentioned suggest that their catalogue is above 1 but below 2 TB). The 5€/month estimate is based on the currently most-viewed 4TB hard drive model in the tweakers pricewatch (some 100€), a modest average longevity of 5 years, triple redundancy, and that you would otherwise be running on smaller drives anyway for your normal website and images so there's no (significant) additional labor or electricity costs for storage (as in, you just buy a different variant of the same setup, not need to install additional ones)
~~Likely much less than .25/m if that’s mbps. The issue is you’d have no shortage of money at that scale - I run one of the two main Arch Linux package mirrors in my country and while it’s admittedly a quite niche and small distro in comparison, I’m nowhere close enough to saturate 1gbit on normal days, let alone my 10gbit link~~
It’s a trade off I suppose - you can very well host your own streaming solution, and for the same price you can get a great single node, but if you want good TTFB and nodes with close proximity to many regions you may as well pay for a managed solution as the price for multiple VPS/VM stacks up quickly when you have a low budget
Edit: I think I missed your point about bandwidth pricing lol, but the second still stands
Yeah, currently hosting LLHLS edge nodes in US + EU and caching CDN worldwide. The base cost grows if you have an audience of e.g. 2000 live viewers for a 2mbps stream = 4gbps.
Could be a lot cheaper and less need for global distribution if low latency weren't a requirement. And by low latency I mean the video stream you watch is ~2s behind reality just like Youtube, Twitch, Kick, etc. If your use case is VOD or can tolerate 10s latency streaming, single PoP works fine.
The point is that if I chose Vimeo or AWS/GCP/Azure for this, at their bandwidth pricing my (in my opinion modest) usage would be costing tens of thousands of dollars monthly, which it most certainly does not.
Managed service pricing and the perception of it needs to change, because it feels like a sham once you actually do anything yourself.
I'm on mobile, but what player did you use on your website?
Does it handle buffer?
Fwiw, the browser's built-in player does buffering. You don't need to custom-code that, you can just use <video>. The browser also exposes via Javascript when it estimates that the download speed and buffer size is sufficient such that you can start playback without interruption: https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaEl...
Not the person above but they're using Video.js 7.10.2 <http://videojs.com/>
Doesn't cloudflare and amazon have this now? Pretty sure CF is developing a closed source player- but theres plenty of FOSS ones (rip the one jellyfin uses out of it- at worst).
And, theres plenty of tutorials on using ffmpeg based tools to make the files. And yes, "oh no, I need to learn something new for my video workflow."
Just use CloudFlare R2 object storage with free bandwidth. It's specifically cleared for use as a video hoster.
Have you tried cloudflare r2?
It’s easy to set up a backend video hosting system. But unless you are running (and checking!) a strong client-side observability system, you’ll never see all the problems that people are having with it. And they won’t tell you either, they’ll just leave.
Reddit struggles to provide a video player that is up to YouTube’s par. Do you have more resources than Reddit? Better programmers?
It is actually pretty easy to provide video. It's hard to provide video to a lot of people.
Reddit and Youtube have just a massive number of people visiting and trying to watch video at all time. It requires an enormous amount of bandwidth to serve up that video.
Youtube goes through heroic efforts to make videos instantly available and to apply high quality compression on videos that become popular.
If you don't have a huge viewership or dynamic content then yeah, it's actually pretty easy to setup and run videos sites (infowars has managed it). Target h264 and aac audio with a set number of resolutions and bitrates and viola, you've got something that's pretty competitive on the cheap that can play on pretty much any device.
It's not optimal for bandwidth, for that you need to start sniffing client capabilities. However, it'll get the job done while being pretty much universally playable.
> apply high quality compression on videos that become popular
Do they put a different amount of compression effort in if the video isn't (expected to become) popular?
I don't know what the Youtube compression queue looks like.
I'd not be shocked if they do more aggressive compression for well known creators.
For nobodies (like myself) the compression is very basic. Whatever I send ends up compressed with VP9 which, I believe, youtube has a bunch of hardware that can do that really fast.
Thing with Infowars is, they got a lot of rich people and probably Russia paying the bills. Video hosting still is damn expensive if you are not one of the top dogs.
Is there someone in the world for whom this demo https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/... does not play? Because that's what I use and am not aware of issues with it
> Reddit struggles to provide a video player that is up to YouTube’s par. Do you have more resources than Reddit? Better programmers?
It's hard to say whether MDN and I have/am better programmer(s) and resource(s) than reddit without having any examples or notions of what issues reddit has run into.
If you mean achieving feature-parity, like automatic subtitles and dubbing and control menus to select languages and format those subtitles etc., that's a whole different ball game of course. The site I was speaking of doesn't support that today either (they don't dub/sub), at best you get automatically generated Dutch subtitles from yt now, i.e. shit subtitles (worse than English autogen and we all know how well those deal with jargon and noise)
You're linking to a page with a 5 second 1MB video on it. Yes, it's easy to use the <video> element to serve a video file no larger than a picture. No, that does not mean you have a system that will allow thousands of users to watch an 11 min HD video during their subway ride that starts instantly and never pauses, stutters, or locks up.
I can't speak to Dutch websites but in the U.S., a news website will usually feel obligated to provide subtitles on their videos to avoid lawsuits under the ADA.
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.
I've seen public schools and public courts use YouTube to host their videos. I don't quite follow why they would care so much about either using downloaders themselves or their users having access to downloaders that they'd switch providers. To me it is unlikely but plausible.
But even if they did - I don't see why Google would care about these organizations. I expect anyone doing this is not expecting to get any views from the algorithm, is not bringing in many views or monetizing their videos.
To steelman it though, maybe Google cares if their monopoly benefits from nobody even knowing other video sites exist.
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.
If you click to skip over, even clicking every minute, you're still not grabbing the whole thing, right? Whereas downloading is grabbing every second.
Depending on the player and how they cache it. Yes, if google monitor every byte to which client had downloaded, but that just seems like ultra micro managing, and have no idea how many players will it break. Youtube seems like one of those site, should allow people to download or make them a public utility on IPFS or something like that.
You are actually. Watch one second, the player buffers the next minute of video, then you skip ahead 1 minute. Process repeats.
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.
Also they allow downloads for premium subs maybe it’s more efficient to not check that status every time.
There is an official download option inside the app. If they limit the download speed to the watching time, it won't be useful.
The official download option doesn't download it to your filesystem as a file. It just lets you watch the video offline in the official app/website. Just tested it now.
Meaning the video file exists in your file system somewhere, so downloading at a higher speed than possibly viewing the video is an existing functionality in the app.
If you're on iOS no way to access it, and I think on Android it's in protected storage as well.
This option is only available to premium users afaik
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.
I think they are, yt-dlp just circumvents it
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.
I think GP is agreeing with you
I have YT Premium and if Google bans yt-dlp, I will cancel my subscription. I pay them not to do that.
you show them who’s boss, premium user
Seems quite naive to think they'd be affected in any way by the tiny intersection of users that are both yt-dlp users and premium subscribers boycotting them...
I think it is not about making a change, it is putting money where your mouth is.
To buy premium to support creators.
Once yt becomes hostile the deal between me and yt is off.
If every user of yt-dlp did as I do, then it would have exactly the effect that it needs to have. If yt-dlp is used by a small minority of users, why would Google be antagonistic to it? And if it's used by sizeable portion of users, then they would care.
> If yt-dlp is used by a small minority of users, why would Google be antagonistic to it?
The concern is likely that if they let it become too easy the small minority becomes a large majority and the ad business becomes unsustainable.
Consider the ease and adoption of newsgroups in the early 90s vs Napster/Limewire later and the effect that had on revenues.
Primarily because they contractually promised the music industry they'd do everything they can to prevent tools that allow the downloading of copyrighted music from the service.
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.
I just mean some kind of public service like one of those archive sites. So they would place it into YouTube for revenue but also these other places so there’s a way to get the videos without Google being a dictatorial overlord.
For a lot of creators, YouTube is the internet
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.
LTT kinda do, but they're the exception, not the norm
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.
for example I think feature length films that YouTube sells (or rents) already use this encryption.
That’s why authors should pony up and pay for the encryption feature and rest should be free to download. YouTube could embed ads this way too.
That's a wildly imaginative fever dream you're having. There is no timeline in which content creators would pay YouTube to encrypt their video content.
Here's a thought: what if paying a fixed amount to encrypt your video would grant you a much higher commission for the ads shown?
Here has to be at least some benefit Google thinks it gets from youtube downloaders, because for instance there have been various lawsuits going after companies that provide a website to do youtube downloading by the RIAA and co, but Google has studiously avoided endorsing their legal arguments.
Anything that's had an official YouTube app for the past nine years does, because it's been a hard requirement for a YouTube port that long.
It's much more likely YouTube just doesn't want to mess with it's caching apparatus unless it really has to. And I think they will eventually, but the numbers just don't quite add up yet.
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.
When you upload a video to YouTube, you agree that you own the copyright or are otherwise able to grant YouTube a license to do whatever they want with it [0]:
> If you choose to upload Content, you must not submit to the Service any Content that does not comply with this Agreement (including the YouTube Community Guidelines) or the law. For example, the Content you submit must not include third-party intellectual property (such as copyrighted material) unless you have permission from that party or are otherwise legally entitled to do so. [...]
> By providing Content to the Service, you grant to YouTube a worldwide, non-exclusive, royalty-free, sublicensable and transferable license to use that Content (including to reproduce, distribute, prepare derivative works, display and perform it) in connection with the Service and YouTube's (and its successors' and Affiliates') business, including for the purpose of promoting and redistributing part or all of the Service.
If you include others' work with anything stronger than CC0, that's not a license you can grant. So you'll always be in trouble in principle, regardless of whether or how YouTube decides to exercise that license. In practice, I wouldn't be surprised if the copyright owner could get away with a takedown if they wanted to.
[0] https://www.youtube.com/t/terms#27dc3bf5d9
Yes, this absolutely does not shield YouTube from liability from third parties, since the copyright holder of third-party content included in the video is not a party to the agreement. That's why they have a copyright notice and takedown procedure in the first place, and also the reason for numerous lawsuits against YouTube in the past, some of which they have lost.
To date, many Creative Commons licenses do in fact amount to "permission from that party", but if they start using DRM, those licenses would cease to grant YouTube permission.
No it wouldn't.
You may not be very familiar with Creative Commons licensing. For example, CC BY-SA 4.0 would prohibit YouTube from using DRM:
> No downstream restrictions. You may not offer or impose any additional or different terms or conditions on, or apply any Effective Technological Measures to, the Licensed Material if doing so restricts exercise of the Licensed Rights by any recipient of the Licensed Material.
(https://creativecommons.org/licenses/by-sa/4.0/legalcode.en)
Most of the CC licenses include such language and have since the first versions.
> 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.
"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
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.
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.
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.
Right!
I very rarely download YouTube videos but simply having done it a few times over the years, and even watching the text fly by in the terminal with yt-dlp, everything you’ve said is obvious.
Screen recording indeed might fail—Apple lets devs block it, so even screen recording the iPhone Mirroring app can result in an all-black recording.
How long until YouTube only plays on authorized devices with screens optimized for anti-camera recording? Silver lining, could birth a new creative industry of storytelling, like courtroom sketch artists with more Mr. Beast.
> (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?
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!
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.
I remember that was the case indeed.
> 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.
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.
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.
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.
Off the top of my head, did you try to access the URLs via archive.org? That way, at least you'll get the titles.
You might find https://findyoutubevideo.thetechrobo.ca/ to be helpful! It was posted before on HN here: https://news.ycombinator.com/item?id=38228481
The lack of even basic metadata when a video disappears is maddening... like a black hole where context used to be
> 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.
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.
Name itself might be what is legally required to be taken down.
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.
https://archivebox.io/ could be a solution for that
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.
> 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.
That sounds brutal if you have 5 years of daily uploads or something like that. At some point, if you want your entire catalog, that becomes a very sucky process.
Just use Google Takeout. It will create a series of archive files for you to download.
Surely you would have the originals locally and not rely on youtube to archive yours uploads?
People who do this are a minority. The vast majority have the masters only available on YouTube.
I hope your “surely” was in jest.
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.
But I think the point is more about passive tolerance than active support
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.
I wonder if it would be possible to use e.g. an FPGA to intercept the "last-leg" MIPI signals going between a TV/monitor's control board and the physical display panel itself. Surely there can't be any DRM at that level, because there is not much more "compute" down the line?
Granted, you would have to deal with whatever your display does to the raw video signal - preferable to pointing a camcorder at the display but a little worse than the original file.
Yes actually you can. But you don't even need to go that far, there are HDCP converters that do it for you and convert to HDCP 1 (whose master keys have been made available) or just plain HDMI. See HDFury etc.
>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.
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.
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
Related: https://en.wikipedia.org/wiki/Analog_hole
Netflix only serves 720p (or below) video to any platform that does not encrypt the video path that prevents OBS or anything else from screen recording.
Why 4k shows are still quite rare on torrents?
They aren’t on decent trackers, everything popular is available in 4K HDR.
Hard to speak for everyone but I'd not be interested in them because it's a lot of storage space and my device can display only "1k" (1080p) anyway
1080p is 2K. The value of the "K" coefficient is determined by the x axis, not the y axis. That's why 4K is 3840x2160.
16K = 15360x8640 8K = 7680x4320 4K = 3840x2160 2K = 1920x1080 1K = 960x540
(Every value is a doubling of the tier below it, or in the case of "1K" a halving.)
[dead]
> 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?
I’m saying they are getting the original from different sources than a streaming platform
I don't see how that would work with videos that don't have differeny original sources. For example, Netflix-original shows/movies. While a small fraction are released on DVD/Blu-ray, the vast majority are only accessible through Netflix, nowhere else.
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.
I didn't say anything about breaking the DRM. I suggested there's no reason to.
Ripping the HDMI stream (which is usually still breaking DRM!) is going to force you to reencode the video which will inevitably lose quality. You might also end up with UI elements on the screen and won’t be able to get subtitles out.
AFAIK HDMI protects from direct ripping so how do they actually do it?
https://en.wikipedia.org/wiki/High-bandwidth_Digital_Content... You mean this? Doesn't sound that hard to bypass
Looks like old version. 1080p max perhaps?
I assume HDCP is the reason a lot of ripped content is not in 4K (or because needs a more expensive Netflix subscription). It sounds like people just bypass it by using an HDMI splitter however.
Very easy to remove it with an HDCP remover like HDFury, or even an HDCP downconverter and then using the known master keys to decrypt that.
Eh sort of sometimes maybe. Lots of hardware/cables out there that don’t care what you’re doing. I can use an ATEM mini to grab basically anything I want so long as I’m down to capture in real time.
> 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.
Yeah! The also took out “don’t be evil”!
“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.
For Android I use Seal (https://f-droid.org/packages/com.junkfood.seal/ and https://github.com/JunkFood02/Seal), which is absolutely wonderful and has just the right amount of resolution of the options-space.
For Linux... youtube-dl I guess, because there's still no really nice alternative to it. It doesn't seem like Stacher supports non-debian systems, or non-gnu libc systems, either.
Same here. Couldn't find any source code
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.
https://www.tubearchivist.com/
There's even a good Jellyfin integration
Somebody made a script that automatically downloads from YouTube using RSS feeds - assuming I don't jinx it by mentioning they still have those...
https://github.com/Jocomol/newsboat_video_downloader
Just found out about https://github.com/DialmasterOrg/Youtarr today.
What's an *arr style app?
Sonarr and Radarr are the big ones. Tracks new content (in these cases, TV shows and movies) and auto downloads as they become available.
Arr, Matey, where's me booty?
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.
This is what I use and it works great. I mainly use it to download things like 3-hour music playlists ahead of long drives to avoid wasting mobile bandwidth.
I'd like to recommend YTDLnis for Android: https://github.com/deniscerri/ytdlnis
Been using it as a replacement for YouTube. I don't stream nowadays, only download.
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.
I’ve been looking for these. Any pointers on where I can find them?
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...
--live-from-start
Not sure if this applies to livestreams but look into the --download-sections arg?
yt-dlp --download-sections "*05:00-05:10" <YouTube URL>
Doesn’t work for livestreams as far as I know. There’s an open PR: https://github.com/yt-dlp/yt-dlp/pull/6498
Any good lists of applications for downloading / hosting a local service also?
https://github.com/DialmasterOrg/Youtarr and https://github.com/Jocomol/newsboat_video_downloader were already mentioned in the comments, I think there's a few different apps that support playback, but I've never tried any of them.
> The best YouTube downloader for Android is NewPipe. You should have a look at Tubular, a fork.
I just started using Tubular. The built-in SponsorBlock integration is really nice
Link for Tubular: https://github.com/polymorphicshade/Tubular
You should also look at PipePipe, also available on F-Droid and with similar enhancements (e.g., Sponsorblock) over NewPipe.
https://github.com/InfinityLoop1308/PipePipe
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/
FreeTube lets you not only view videos (sans ads, and you can block sponsors, if desired), but download them as well, and it is cross platform.
Firefox extension to right-click YT links directly to Freetube https://github.com/MStankiewiczOfficial/RedirectTube.
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.
It's interesting that YouTube not only does not block pirated movies on ok.ru, they give them high rankings in search. Hm.
The article doesn't include Android TV based devices like Chrome/Fire sticks. Android mobile apps tend not to work with remote controls. The best Android TV app is: https://smarttubeapp.github.io/
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.
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.
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.
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
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).
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."
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.
You could. But youtube's website itself would fail this "only 10% at once" test.
Why? IIRC you can flush the SourceBuffer in Media Source Extention and only keep a small part of the video in the browser's RAM at all time.
(It won't work for Youtube shorts though, because 10% of a 30s video just isn't enough for reliable smooth playback)
I understand now that I was talking about how youtube currently works and you two were talking about how youtube could be contrived to work.
Yes, it could. It'd only just waste more bandwidth having to redownload and cause more pauses. But people who buy things (the important ones to advertise to) have fast connections and everyone's locked in so google can focus more on advertiser issues over the lower end network user experience.
Unless it’s protected by DRM.
Even with DRM, if you can see it, it's decoded somewhere along the line. There will always be a way to get the raw video out of it if you're committed enough.
That's actually an important distinction. You can recapture the DRM protected (and then decoded) video pretty much always indeed, but then you degrade the quality by having to encode it again.
Well, not important to some, but for enthusiasts and people looking to actually archive things, it is very important.
Case in point, hilariously, the last time I used YouTube's video download feature bundled with their Premium offering, I got a way worse quality output than with yt-dlp, which actually ripped the original stream without reencoding it.
I think I saw an idempotent h264 encoder at some point, where you wouldn't suffer generational loss if you matched the encoder settings exactly from run to run. But then you might need the people mastering the content (in this case YouTube) to adopt that same encoder, which they're not going to be "interested" in.
Even with DRM video you can fetch it losslessly. At some point, some part of your system requires access to the raw, decrypted video stream.
As long as that's the case, you can get bit-perfect netflix rips.
The problem is that if you have the raw data, you’ve lost the original compression information, so you can’t get it back to a sensible size without double compressing. e.g. Think about what you get when you save a jpeg as a bitmap.
You can get the original compressed h264/h265/etc stream back out, that's the entire point.
Even DRM media is using regular accelerated video decode.
The "entire point" of contemporary lossy-media DRM [0] is to prevent you from doing that. You can only do so if the DRM scheme is circumvented or unsound [1].
That is not what we're talking about - the working assumption here is that the DRM scheme is sound and effective. In which case your only possible but also guaranteed stage of recapture is at the analog hole, by which point the media encoding is already undone, incurring a generational loss.
[0] I consider presently existing and historical DRM implementations deeply flawed and misguided; they severely overstep their boundaries implied by the name "DRM", in certain cases quite disgustingly - hence the many added adjectives for clarification
[1] puzzlingly, any access control will actually get you in the same legal situation, regardless of whether the access control mechanism is effective or sound, so this is actually a design decision; but it's pretty universally taken afaik.
> That is not what we're talking about - the working assumption here is that the DRM scheme is sound and effective.
Lol. That is not possible.
If I'm able to watch something, my device must be able to decrypt the DRM. If my device can decrypt the DRM, I can take my device apart and figure out how it does this, and do it myself.
The most DRM encumbered format is DCP, used my cinemas. Each projector has a unique key burnt into it, the decryption, decoding and watermarking happen on the same piece of silicon, and the entire device is built like an HSM, opening it wipes the keys.
There are bit-perfect DCP rips on the high seas, with the original compressed data.
HDCP is meant to prevent me from copying HDMI signals. Every conference center and lecture hall has cheap Chinese devices that remove it.
Regarding the analog hole, with a properly calibrated professional video camera recording in RAW, with both camera and monitor genlocked and color calibrated, and the proper postprocessing, you can capure the original pixel values exactly.
I've done that part more often than I'd like...
And worst case, you can then brute force which parameters the original encode used to re-encode your data without generation loss.
> Lol. That is not possible.
It is possible, both under the conservative interpretation of the word (like how AACS is continuously updated as security holes are found and compromises happen, with the keys being rotated each time), and on a theoretical level (FHE). The latter is not being done because it is not nearly performant enough, and the former is an ongoing cat and mouse game that is once again irrelevant to what we were discussing here.
With FHE, the "take the machine apart and analyze what it does to get the original bitstream" would be cryptographically hard, so good luck with that. With the usual DRM schemes it isn't, so they are pretty much always cracked in a few months or a few years, but until that point they are both sound and effective.
> Regarding the analog hole, with a properly calibrated professional video camera recording in RAW, with both camera and monitor genlocked and color calibrated, and the proper postprocessing, you can capure the original pixel values exactly.
Yes, that's what I'm suggesting too...
> And worst case, you can then brute force which parameters the original encode used to re-encode your data without generation loss.
Can you? I mean in practice, in a practical amount of time. And is that actually done?
> like how AACS is continuously updated as security holes are found and compromises happen, with the keys being rotated each time
And yet with consumer hardware you can accurately rip every UHD Bluray right on release day, without any trouble.
> Can you? I mean in practice, in a practical amount of time. And is that actually done?
Most of the time effort of encoding is already spent on brute forcing these parameters to most effectively match the original input. You just need to change the way the encoder scores each possible result.
> With FHE, the "take the machine apart and analyze what it does to get the original bitstream" would be cryptographically hard, so good luck with that.
So what? You could just distribute the encrypted datastream and the key you've extracted from a device, say a smartphone you bought from an electronics recycler.
Also, I don't see how FHE with video would be possible in the next decades, considering the limitations to Moore's Law in recent years.
Video codecs are extremely complicated, requiring lots of memory and processing power.
Ten years ago, even the best gaming PCs couldn't handle software decoding. Even today many mid-range systems can't handle software video decoding.
Even hardware implementations regularly require more power and memory than the entire rest of the system. There's a reason Raspberry Pi's are primarily a video decoding chip with a CPU as coprocessor, which is why the GPU runs the bootloader.
Video is constantly at the limitations of what we can physically accomplish.
Your suggestion would require spending a massive chunk of silicon area of a SoC on a FHE decoding ASIC that would only be useful for the small minority of DRM-encumbered content people watch.
And every manufacturer, every device, would have to join, for it to make any sense at all.
circumventing the DRM is what will land you in legal hot water. storing the DRM encrypted media isn't the same offense
Downloading videos is a premium feature of YouTube and doesn't delete the data.
Can you access those downloads?
Yes, there is a downloads button in the app to see your downloaded videos.
https://support.google.com/youtube/answer/11977233
I'm pretty sure they meant, can the videos be accessed as files in the filesystem, which to my knowledge they cannot.
Shit like that should be illegal. I.e. netflix’s downloads expire after 30 days.
Shit? Illegal? It's literally your right on videos like <https://www.youtube.com/watch?v=JSEJApMIrLU>. Expand the description and see at the bottom: license is set to creative commons. The copyright holder permits everyone to remix the video but youtube still does not show a button for you to actually make use of that
You need to breach the terms of service (use a downloader) to exercise the rights of the content license that youtube supports
As the other sister comment said. I was replying to you saying YouTube has downloading in a thread about file access. I use the YouTube premium offline access, it’s nice but I only have premium for mobile background.
MediaHuman has a bunch of amazing tools in this space: https://www.mediahuman.com/en23/
> 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!
>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.
yt-dlp has been the only one that consistently works for me. Most others break way too often
“The best downloaded for iOS/ipados” is yt-dlp. Install in ashell, view with VLC.
Internet Download Manager on Windows (https://www.internetdownloadmanager.com/) allows downloading all kinds of videos from your browser, 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.