-
-
Notifications
You must be signed in to change notification settings - Fork 317
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix(YouTube - Client spoof): Spoof iOS client model to fix various side effects #3220
Conversation
…de effects This commit also changes the default client spoof to iOS as the only side-effect known now, is HDR not working.
Captions menu is now fix, but the speed menu is still missing. #3197 can be fixed up to solve the playback speed issue. |
… automatically switch existing users to iOS spoofing.
Is user-agent also spoofed as iOS client? |
No |
YouTube default playback speed button can't be fixed? |
Playback speed is not fixed with this PR. Speed menu can be fixed by improving pr #3197 |
This comment was marked as resolved.
This comment was marked as resolved.
Good find for HDR. It may bring back the playback speed menu entry given that iOS clients are supposed to have one to begin with. |
Sorry but i've no idea to work/try with bytecode xD |
I tried spoofing the user agent, but the playback speed menu entry was still missing. I couldn't test HDR yet, though. |
Can you push the test commit? I'll try |
I tested it locally with a proxy, no code changes |
There's another issue with iOS spoof: you can't listen a live stream video in background. |
Which user-agent did you use btw? |
I think this PR will have to wait a bit. There seems to be a lot of bugs |
This PR is an improvement compared to the existing spoofing strategy |
Nah...not a lot, just few (luckily):
It's just a matter of time before reaching 100% reliability. |
Just for reference, that was probably caused by the test suite spoof fetching the seekbar thumbnails (which blocks playback until the thumbnail storyboard is fetched). iOS spoof already has thumbnails so there should be no extra delay. |
It's a bit weird, because I can reproduce this only with ios spoof enabled. |
Playback speed menu is fixed if the client is spoofed to iOS embedded:
Captions is also present, but quality appears to be capped at 720p and player swipe gestures does not work. Probably other stuff is broken too. |
src/main/kotlin/app/revanced/patches/youtube/misc/fix/playback/SpoofClientPatch.kt
Show resolved
Hide resolved
Playback speed menu is also fixed if the client is spoofed to Android VR (client 28, version "1.37"). All video resolutions appear to be present (I can't tell if HDR is working or not). Audio only playback of livestreams works. Only thing I found that doesn't work is player swipe gestures. Not sure if playback is broken or not, as I've never had that issue. |
Try this for HDR: |
HDR is not present with android vr, at least not without additional changes. I did not try changing the client device name since I can't seem to find what the name should be. Edit: the model appears to be Just noticed an odd bug though, where if playback is paused it will randomly resume playback (including if the app is paused in the background). This doesn't show up with any other client I tried. Some of the other iOS and Android clients also worked, but all that I tried were capped at 720p. |
I wonder what happens with streamData patch approach? |
Have you tried with this? |
Very mostly broken. Incognito fails. Non incognito playback starts with a weird brief popup that looks bizarrely like html 1.0 (even though that makes no sense). no high resolution video. |
Ok, so it can be possible to rely only on few clients, if the point is to limiting the bugs. ...and i'm afraid that HDR can't be fixed, because inotia00 said me that codec to correctly decode this videos type is missing in the android package. |
It would be better if the option to manually enter |
## [4.8.2-dev.1](v4.8.1...v4.8.2-dev.1) (2024-05-23) ### Bug Fixes * **YouTube - Client spoof:** Spoof iOS client model to fix various side effects ([#3220](#3220)) ([9b5f4ce](9b5f4ce))
## [4.8.2](v4.8.1...v4.8.2) (2024-05-24) ### Bug Fixes * **YouTube - Client spoof:** Spoof iOS client model to fix various side effects ([#3220](#3220)) ([9b5f4ce](9b5f4ce))
## [4.8.2](v4.8.1...v4.8.2) (2024-05-24) ### Bug Fixes * **YouTube - Client spoof:** Spoof iOS client model to fix various side effects ([ReVanced#3220](https://github.com/E85Addict/revanced-patches/issues/3220)) ([9b5f4ce](9b5f4ce)) ### Performance Improvements * Personal Logo && Add upstream sync ([8891aec](8891aec))
it seems that the string has not been updated. When the iOS client is opened, it is shown that there are side effects. |
RE: ReVanced/revanced-integrations#638
This PR also changes the default client spoof to iOS, as the only side effect known now is that HDR is not working.