467
Hector Martin (@marcan@treehouse.systems)
social.treehouse.systemsAttached: 3 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.
**EDIT 2**: OK, so the plot *really* thickens now. Chrome is not affected even if it claims to be aarch64. Turns out there is another codepath: apparently YouTube thinks aarch64 Firefox is... a HiSense TV?!?!?!?! Specifically, model 65a67gevs...?????
This is *server-side* sniffing now and it's *specifically* looking for Firefox aarch64 (or at least "Gecko and not Chrome/CrOS/something else known to pretend to be Gecko"). And it's the "TV" platform that is triggering the resolution crippling.
Steelmanning: perhaps no ARM Linux system was capable of playing 4K reliably until Asahi Linux came along?
Someone on the Hacker News cross-post mentioned it, but it seems like they assumed any ARM Linux device that wasn’t detected as running Android was some low-power device like a Raspberry Pi, and didn’t anticipate more powerful devices running bog-standard Linux until Apple Silicon and thus Asahi came along.
Apple Silicon has entered the chat
It’s probably the case that this was good intent given the lack of desktop ARM computing hardware, but they really should let the client decide the video quality.
True, but I would guess that the clients didn’t handle that well and this was just a stupid quick fix.