1.19K
Hector Martin (@marcan@treehouse.systems)
social.treehouse.systemsAttached: 2 images
Today I learned that YouTube is deliberately crippling Firefox on Asahi Linux. It will give you lowered video resolutions. If you just replace "aarch64" with "x86_64" in the UA, suddenly you get 4K and everything.
They literally have a test for "is ARM", and if so, they consider your system has garbage performance and cripple the available formats/codecs. I checked the code.
Logic: Quality 1080 by default. If your machine has 2 or fewer cores, quality 480. If anything ARM, quality 240. Yes, Google thinks all ARM machines are 5 times worse than Intel machines, even if you have 20 cores or something.
Why does this not affect Chromium? **Because chromium on aarch64 pretends to be x86_64**
`Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36`
🤦♂️🤦♂️🤦♂️🤦♂️🤦♂️
Welp, guess I'm shipping a user agent override for Firefox on Fedora to pretend to be x86.
**EDIT**: The plot thickens. Pretending to be ChromeOS aarch64 *still gets 4K*. Specifically: `Mozilla/5.0 (X11; CrOS aarch64 10452.96.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.181 Safari/537.36` still works.
Except that the delay and ad blocker check is literally in the JavaScript code, you can see it.
Indeed, but google can just transmit different javascript to different users/browsers/regions etc (that’s why browsers have useragents, so websites can improve browser compatibility according to the circumstances). It can be decided on a whim and noone would know except some coders at google
Except everyone would know. Multiple people across the globe testing different browsers have looked at the same JavaScript code that is being sent to the browser. The check is there, client-side, google isn’t sending a different JavaScript payload for different browsers. Like you said, they could, but that’s not how it currently functions