Why is it that yt-dlp has no problems with SABR? #7742
Replies: 1 comment
-
yt-dlp is far from immune to SABR, they will eventually have to implement SABR support too (see the open PR on their end), they just have other temporary workarounds at the moment. Also the 403s are not because of SABR.
Yes, shipping an entire Python runtime and yt-dlp with FreeTube would be stupid and requiring all users, even the non-technical ones to install Python and yt-dlp separately and keep them up to date, is unrealistic and provides a worse user experience. Additionally because yt-dlp is made for downloading not playback, it doesn't provide information that is needed for playback so we would still have to make extra requests to get the missing information.
YouTube.js is the basis for the entire local API. YouTube.js is a wrapper around YouTube's Innertube API and mostly exposes the information as is, whereas yt-dlp is specifically designed for downloading not information extraction, so not only would the playback experience be worse but many other parts of the app would either have to be removed entirely or severely limited if you wanted to replace YouTube.js with yt-dlp.
Yes, but as mentioned above adding support for yt-dlp would be stupid.
yt-dlp being more widely used has nothing to do with how quickly fixes are delivered and quite frankly it being so widely used, especially by massdownloaders (e.g. AI companies) is the reason for many of the problems that we have like IP blocks and ratelimiting which YouTube implemented to try and counteract them. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Could YouTube.js be updated in such a way that it downloads videos the same way yt-dlp does, bypassing all the SABR issues that have recently cropped up?
Or, as it seems to be immune to SABR problems, could FreeTube just use yt-dlp instead of YouTube.js for downloading videos from YouTube?
Perhaps there could be an option in FreeTube's settings to use yt-dlp as an alternative backend.
Additional questions/thoughts:
403occurs when trying to play a video in FreeTube, maintainers advise using an external player, all of which use yt-dlp and continue to work properly while FreeTube/YouTube.js do not.In summary, my feeling is that YouTube.js sort of unnecessarily attemps to reinvent the wheel here, especially when there's already a much more widely used project that can playback/download videos from YouTube, that so far seems impervious to issues introduced by SABR, and whose larger userbase would lead to any issues being resolved more quickly.
@absidue Thank you for the response, it helped to clear things up for me. My mistake with regard to the current 403s being caused by SABR. I saw in #7659 that pre-roll ads were determined to be the cause, so I wonder what yt-dlp does differently so that it doesn't experience that.
P.S. Why are all issues and discussions here locked down so quickly?
Beta Was this translation helpful? Give feedback.
All reactions