-
-
Notifications
You must be signed in to change notification settings - Fork 235
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
bug(YouTube): Spoof client
patch - various side effects
#3208
Comments
I think that iOS spoof should be the first thing to enable, because TestSuite it's too limited. |
iOS spoofing fails for some videos and Shorts. HDR videos seem to fail more often than other videos, and it's not known why. Maybe there is a robust way to detect a failed playback, and retry the video again but switch from iOS to the test client. But the best solution is to figure out how to fix iOS playback so it's 100% reliable. |
I don't know if iOS supports HDR playback at all, but if it does, one of the request parameters may be responsible. For example currently the device type is still Android, things like that could be cause of the problem. |
It seems: https://www.iphoneincanada.ca/2018/05/01/youtube-ios-hdr-iphone-x/ ...along with 60fps. Therefore the spoof should be improved, like you said. |
Hi. I don't know if this is spoof client patch side effect, but when I open a clip, YTRV plays the original video form the beginning, not the clip fragment. |
I was looking through the NewPipeExtractor repository and found a hint about this: You can play 60fps video by spoofing the model name to iOS device with the In YouTube v19.11.43, the
Also, checking the response of clientName can be helpful in finding side effects that have not yet been discovered. For example, the ├─ : This causes spoofing with the |
That aligns with my assumptions. I set the field to a supporter iOS device but no 60fps or HDR playback was available. |
I may have missed something.
Since this change was merged via PR, I removed the test repository. |
Spoof client to iOS |
The Test suite spoof automatically switches to iOS for live streams. |
@kazimmt @LisoUseInAIKyrios Spoof to iOS does not work. Live streams not available still like on my screenshot above. |
Are qualities and background play for live videos still not supposed to be fixed? I just tested the new iOS spoof and they seem to work fine on my end, can someone else try to verify? History is indeed still broken for brand accounts Edit: seekbar thumbnails don't show for live videos though |
@LisoUseInAIKyrios Still, live streams aren't playing in Android 8. Just tested new patches |
They seemingly work fine on A12, all qualities background play etc. |
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as resolved.
This comment was marked as resolved.
Does history work with Android VR? |
I tested and history works |
Is it possible to make history work normally on iOS client? |
Everything is possible, the question is redundant. |
This comment was marked as spam.
This comment was marked as spam.
I think that, after spoofing to iOS clients, the automatically generated subtitles look weird It would appear word by word before, now it was grouped into chunks. The chunk grouping also have no regards to sentence structure. So it often breaks the line with no regards for context. For example: Src: https://youtu.be/VZ6RZaCpIyg This makes it hard to comprehend |
This comment was marked as spam.
This comment was marked as spam.
Another issue I haven't seen mentioned is this appears to enable VP9 for all devices, resulting in many dropped frames at HD resolutions for devices lacking VP9 hardware decoding. |
This comment has been minimized.
This comment has been minimized.
That might be fixed if the spoofed device is changed from the iPhone 15 pro. That device has Av1 hardware acceleration and older iPhones do not. |
Upon more extensive testing, it does seem that using iOS spoof has a much higher tendency to get avc1. I am quite sure that it is at least 90%, matching what LisoUseInAIKyrios said. The dropped frame issue was not showing up every time. I could not find a way to reproduce it reliably, but it was appearing very frequently. It would appear randomly, but may be resolved after clearing cache while the app is still running? And when it does happen, it would drop frames more than LTT drop things. Over 80% of the frames would be dropped. |
Android VR spoof has word by word auto generated subtitles, just like unpatched. |
The known side effect |
@LisoUseInAIKyrios live videos do not play for me in Android VR spoof |
@kazimmt Android VR spoofed live videos work on my newer Android device (just checked now), and when I last checked it also worked for Android 8/9. |
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
I ran into a livestream that did not playback with Android VR. Changing the client from The old code of detecting livestream videos could be brought back, and then use Edit: Android VR livestreams seem to be fixed by #3316 |
Perhaps this logic should be removed, and instead it always uses a non av1 iOS device. The stuttering may be from the device overheating and throttling. Even though the Android device has AV1 hardware it might be too much to do av1 decoding and run the bloated stock YT code at the same time. Or maybe the av1 YT stream has features found on iOS hardware but not on some android av1 devices, such as 10-bit depth color or 4:4:4 chroma sampling (both appear to be optional for av1 hardware decoders, and if present would force software decoding). Just speculation for this. Edit: I just noticed this is for avc1 and not av1. So this might be fixed by checking if the device supports both avc1 and av1. |
Bug description
Android VR spoof
iOS spoof
Acknowledgements
The text was updated successfully, but these errors were encountered: