3 ms·
Or use an alternative frontend, or download the videos first? Why would I pay for content that isn't monetised and thus the "creator" (for lack of a better word
by throwaway67743 3y ago
Or use an alternative frontend, or download the videos first? Why would I pay for content that isn't monetised and thus the "creator" (for lack of a better word) gets nothing anyway? I'm not going to fund Google, they already get some from reading my (spam) emails.
- gruez 3y ago>Or use an alternative frontend, or download the videos first? If they're going to roll out anti-adblock code, what makes you think they won't be going after unofficial third party clients?
- Kim_Bruning 3y agoAlready have been for a long time.
- throwaway67743 3y agoThey do, and invariably fail but I'd argue trying to hide an adblocker is going to be more tricky than pretending to be android, for example. But both downloading and alternative frontends still work fine, I just got the message on youtube for the first time (only on desktop though, not android, firefox on both), minor inconvenience to run yt-dlp in an internet accessible folder and means I retain the content should their random behaviour make it unavailable in the future.
- gruez 3y ago> They do, and invariably fail but I'd argue trying to hide an adblocker is going to be more tricky than pretending to be android, for example. AFAIK thirdparty youtube clients are just a glorified webview. Also, if anything pretending to be android is way harder than pretending to be a browser. There's way more fingerprinting/attestation that's available on android than through javascript APIs.
- throwaway67743 3y agoI didn't say client, I said frontend (ie; invidious, which is not a webview nor a client), but the likely reason its easier to pretend to be android is they have to support older versions for a long time, once you've emulated the behaviour its difficult for them to fix that
- gruez 3y ago>but the likely reason its easier to pretend to be android is they have to support older versions for a long time, once you've emulated the behaviour its difficult for them to fix that 1. Needing to support older versions is specifically why most of the client logic isn't in the app itself, it's in a javascript bundle that it receives from the server. At this point you can't pretend to be an android app making HTTP api calls. You have to either provide a fully functioning javascript execution environment, or deal with all the API changes that they throw your way through the updated javascript bundles[1]. 2. Pretending to be android is harder than you think. There's tens of thousands of system APIs available that you can call, to check for inconsistencies or implementation quirks. You can even try to fingeprint/profile the hardware (eg. GPU or DSP) itself, or the java execution environment. DRMs use the same principles to bind activation tokens to a given machine, so you can't crack a game by taking one valid token and sharing it with everyone else. [1] eg. https://github.com/ytdl-org/youtube-dl/issues/29326#issuecomment-866674128 https://github.com/ytdl-org/youtube-dl/issues/29326#issuecom...
- 20after4 3y agoyt-dlp stopped working for me as of today. [download] Got error: HTTP Error 403: Forbidden. Retrying fragment 11 (1/10)...