-
-
Notifications
You must be signed in to change notification settings - Fork 310
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): Fix issues related to playback by replace streaming data #3582
Conversation
Uhm so what is the different with current approach 👀 |
Patches the response |
Another backup plan maybe 🤷♂️ |
This approach can fix at least one of still existing issues with client spoofing? For example brand account history or HDR with vp9 codec? |
I don't have a brand account, but it seems this PR would fix that since it's replacing response data. HDR probably is not fixed. |
The VR client supports hdr streams. The more important question is, if the streams work because usually they need additional post processing as seen by NewPipeExtractor for example. YouTube may apply the post processing from the original request though which could work without any further changes |
@0xrxL HDR vp9.2 works, though i don't remember if vr client has av01 format |
HDR on VR client could be fixed by replacing player config with android one, but its not the only things that missing from vr player response fields. Also VR client lack of kids videos (maybe other as well). As for iOS client, i've tried to replace the player config but video playback doesn't work which im not sure what happened. |
Currently, NewPipe cannot play 18+ content. This PR can cause problems |
@Pamilg9 Its fixed by adding Auth headers. edit: contentCheck/racyCheck on innertube body may required too. |
If there are any issues with replacing streams for any specific video or situation, then it should be possible to fall back to using the existing client type spoofing approach. |
Agreed, i think the worst scenario is we got zero streaming data from client list, or streaming data simply unplayable at all. |
The client spoof hooks are called before the fetch stream hook. And the stream replacement hook needs some of the post data passed into it's hook. Which means by the time it's fetching the streams it's too late to fall back to spoof the client if the stream fetch fails. So falling back to client spoofing would need more work. Specifically, it would need another hook that is called before all the client spoof hooks, and it also has all the data needed to fetch the streams. |
This PR fixes VP9 HDR video for my device. The Settings UI needs consideration on how to present everything, since without fallback functionality it requires choosing between either The AVC override works for both spoof types. |
…ilar to `iOS` and `Android VR`
For now, the stream replacement is shown in the UI as a third spoof type ( |
The stream spoofing should ideally replace the client spoof patch entirely to reduce the complexity of the patch to it's minimum. Patching the request comes with issues fixed by patching the response. The only concern is that the streams returned by our custom request may not work because the custom request is not done properly, but so far the original request is sufficient for YouTube to post process the URLs from the custom request to make them playable currently. |
Implementing pre-fetch streaming data maybe a good idea, faster load while scrolling shorts/general videos. but i think VideoIdHook patch no longer detect the next videoId with /initplayback being blocked. There's a way to invalidate /initplayback reponse data instead blocking it, but i don't quite remember if this methods allow videoId hook patch work normally again. I can do some test if needed |
@oSumAtrIX Do we neeed to follow this way? adding poToken on innertube body and uri params |
If u want to add another client, like |
NewPipe has playback issues. Still not fixed |
We're not using NewPipe atm, and what kind of issue? |
https://www.github.com/TeamNewPipe/NewPipe/issues/11139 But both of these issues are because NewPipe does not use any YT user authentication. Those issues do not apply here. |
What if you go incognito? |
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.
...pp/revanced/patches/youtube/misc/fix/playback/fingerprints/StatsQueryParameterFingerprint.kt
Show resolved
Hide resolved
src/main/kotlin/app/revanced/patches/youtube/misc/fix/playback/SpoofClientPatch.kt
Show resolved
Hide resolved
src/main/kotlin/app/revanced/patches/youtube/misc/fix/playback/SpoofClientPatch.kt
Outdated
Show resolved
Hide resolved
Thanks for all involved! |
# [4.14.0-dev.15](v4.14.0-dev.14...v4.14.0-dev.15) (2024-09-17) ### Bug Fixes * **YouTube:** Fix issues related to playback by replace streaming data ([#3582](#3582)) ([dfa94d7](dfa94d7))
# [4.14.0](v4.13.3...v4.14.0) (2024-09-18) ### Bug Fixes * **Pixiv - Hide ads:** Fix for latest version ([#3616](#3616)) ([98956e8](98956e8)) * **Soundcloud - Hide ads:** Support latest version ([#3628](#3628)) ([66e7e33](66e7e33)) * **SwissID:** Rename `Remove Google Play Integrity Integrity check` to `Remove Google Play Integrity check` ([#3558](#3558)) ([0f5a771](0f5a771)) * **YouTube - ReturnYouTubeDislike:** Show estimated like count for videos with hidden likes ([#3601](#3601)) ([005be82](005be82)) * **YouTube - SponsorBlock:** Add summary text to 'view my segments' button ([df80b9f](df80b9f)) * **YouTube - SponsorBlock:** Handle if the user enters an invalid number into any SB settings ([37b3dd1](37b3dd1)) * **YouTube:** Fix issues related to playback by replace streaming data ([#3582](#3582)) ([dfa94d7](dfa94d7)) ### Features * Add `Change data directory location` patch ([#3602](#3602)) ([5998029](5998029)) * Add `Check environment` patch ([#3610](#3610)) ([fbcbdaf](fbcbdaf)) * **Duolingo:** Add `Disable ads` and `Enable debug menu` patch ([#3422](#3422)) ([d0a8599](d0a8599)) * **Sync for Reddit:** Add `Fix /user/ endpoint` patch ([46d11f3](46d11f3)) * **Sync for Reddit:** Rename patch to `Use /user/ endpoint` ([98ead49](98ead49)) * **YouTube - Hide Shorts components:** Hide 'Use this sound' button ([#3647](#3647)) ([33fc090](33fc090)) * **YouTube - Keyword filter:** Add syntax to match whole keywords and not substrings ([#3592](#3592)) ([f5fb351](f5fb351)) * **YouTube - Spoof client:** Allow forcing AVC codec with iOS ([#3570](#3570)) ([1a49d1f](1a49d1f)) * **YouTube Music:** Make working patches compatible with latest versions ([#3556](#3556)) ([12f6f19](12f6f19)) * **YouTube:** Add donation link to settings about screen ([#3626](#3626)) ([0684ab5](0684ab5))
# [4.14.0](v4.13.3...v4.14.0) (2024-09-18) ### Bug Fixes * **Pixiv - Hide ads:** Fix for latest version ([ReVanced#3616](https://github.com/E85Addict/revanced-patches/issues/3616)) ([98956e8](98956e8)) * **Soundcloud - Hide ads:** Support latest version ([ReVanced#3628](https://github.com/E85Addict/revanced-patches/issues/3628)) ([66e7e33](66e7e33)) * **SwissID:** Rename `Remove Google Play Integrity Integrity check` to `Remove Google Play Integrity check` ([ReVanced#3558](https://github.com/E85Addict/revanced-patches/issues/3558)) ([0f5a771](0f5a771)) * **YouTube - ReturnYouTubeDislike:** Show estimated like count for videos with hidden likes ([ReVanced#3601](https://github.com/E85Addict/revanced-patches/issues/3601)) ([005be82](005be82)) * **YouTube - SponsorBlock:** Add summary text to 'view my segments' button ([df80b9f](df80b9f)) * **YouTube - SponsorBlock:** Handle if the user enters an invalid number into any SB settings ([37b3dd1](37b3dd1)) * **YouTube:** Fix issues related to playback by replace streaming data ([ReVanced#3582](https://github.com/E85Addict/revanced-patches/issues/3582)) ([dfa94d7](dfa94d7)) ### Features * Add `Change data directory location` patch ([ReVanced#3602](https://github.com/E85Addict/revanced-patches/issues/3602)) ([5998029](5998029)) * Add `Check environment` patch ([ReVanced#3610](https://github.com/E85Addict/revanced-patches/issues/3610)) ([fbcbdaf](fbcbdaf)) * **Duolingo:** Add `Disable ads` and `Enable debug menu` patch ([ReVanced#3422](https://github.com/E85Addict/revanced-patches/issues/3422)) ([d0a8599](d0a8599)) * **Sync for Reddit:** Add `Fix /user/ endpoint` patch ([46d11f3](46d11f3)) * **Sync for Reddit:** Rename patch to `Use /user/ endpoint` ([98ead49](98ead49)) * **YouTube - Hide Shorts components:** Hide 'Use this sound' button ([ReVanced#3647](https://github.com/E85Addict/revanced-patches/issues/3647)) ([33fc090](33fc090)) * **YouTube - Keyword filter:** Add syntax to match whole keywords and not substrings ([ReVanced#3592](https://github.com/E85Addict/revanced-patches/issues/3592)) ([f5fb351](f5fb351)) * **YouTube - Spoof client:** Allow forcing AVC codec with iOS ([ReVanced#3570](https://github.com/E85Addict/revanced-patches/issues/3570)) ([1a49d1f](1a49d1f)) * **YouTube Music:** Make working patches compatible with latest versions ([ReVanced#3556](https://github.com/E85Addict/revanced-patches/issues/3556)) ([12f6f19](12f6f19)) * **YouTube:** Add donation link to settings about screen ([ReVanced#3626](https://github.com/E85Addict/revanced-patches/issues/3626)) ([0684ab5](0684ab5)) ### Performance Improvements * Personal Logo && Add upstream sync ([2e4ef0a](2e4ef0a))
# [4.14.0](v4.13.3...v4.14.0) (2024-09-18) ### Bug Fixes * **Pixiv - Hide ads:** Fix for latest version ([ReVanced#3616](https://github.com/E85Addict/revanced-patches/issues/3616)) ([98956e8](98956e8)) * **Soundcloud - Hide ads:** Support latest version ([ReVanced#3628](https://github.com/E85Addict/revanced-patches/issues/3628)) ([66e7e33](66e7e33)) * **SwissID:** Rename `Remove Google Play Integrity Integrity check` to `Remove Google Play Integrity check` ([ReVanced#3558](https://github.com/E85Addict/revanced-patches/issues/3558)) ([0f5a771](0f5a771)) * **YouTube - ReturnYouTubeDislike:** Show estimated like count for videos with hidden likes ([ReVanced#3601](https://github.com/E85Addict/revanced-patches/issues/3601)) ([005be82](005be82)) * **YouTube - SponsorBlock:** Add summary text to 'view my segments' button ([df80b9f](df80b9f)) * **YouTube - SponsorBlock:** Handle if the user enters an invalid number into any SB settings ([37b3dd1](37b3dd1)) * **YouTube:** Fix issues related to playback by replace streaming data ([ReVanced#3582](https://github.com/E85Addict/revanced-patches/issues/3582)) ([dfa94d7](dfa94d7)) ### Features * Add `Change data directory location` patch ([ReVanced#3602](https://github.com/E85Addict/revanced-patches/issues/3602)) ([5998029](5998029)) * Add `Check environment` patch ([ReVanced#3610](https://github.com/E85Addict/revanced-patches/issues/3610)) ([fbcbdaf](fbcbdaf)) * **Duolingo:** Add `Disable ads` and `Enable debug menu` patch ([ReVanced#3422](https://github.com/E85Addict/revanced-patches/issues/3422)) ([d0a8599](d0a8599)) * **Sync for Reddit:** Add `Fix /user/ endpoint` patch ([46d11f3](46d11f3)) * **Sync for Reddit:** Rename patch to `Use /user/ endpoint` ([98ead49](98ead49)) * **YouTube - Hide Shorts components:** Hide 'Use this sound' button ([ReVanced#3647](https://github.com/E85Addict/revanced-patches/issues/3647)) ([33fc090](33fc090)) * **YouTube - Keyword filter:** Add syntax to match whole keywords and not substrings ([ReVanced#3592](https://github.com/E85Addict/revanced-patches/issues/3592)) ([f5fb351](f5fb351)) * **YouTube - Spoof client:** Allow forcing AVC codec with iOS ([ReVanced#3570](https://github.com/E85Addict/revanced-patches/issues/3570)) ([1a49d1f](1a49d1f)) * **YouTube Music:** Make working patches compatible with latest versions ([ReVanced#3556](https://github.com/E85Addict/revanced-patches/issues/3556)) ([12f6f19](12f6f19)) * **YouTube:** Add donation link to settings about screen ([ReVanced#3626](https://github.com/E85Addict/revanced-patches/issues/3626)) ([0684ab5](0684ab5)) ### Performance Improvements * Personal Logo && Add upstream sync ([2e4ef0a](2e4ef0a))
# [4.14.0-dev.1](v4.13.3...v4.14.0-dev.1) (2024-10-04) ### Bug Fixes * **Pixiv - Hide ads:** Fix for latest version ([ReVanced#3616](https://github.com/zainarbani/revanced-patches/issues/3616)) ([98956e8](98956e8)) * **Soundcloud - Hide ads:** Support latest version ([ReVanced#3628](https://github.com/zainarbani/revanced-patches/issues/3628)) ([66e7e33](66e7e33)) * **Soundcloud:** Support latest versions ([ReVanced#3702](https://github.com/zainarbani/revanced-patches/issues/3702)) ([099ac5e](099ac5e)) * **SwissID:** Rename `Remove Google Play Integrity Integrity check` to `Remove Google Play Integrity check` ([ReVanced#3558](https://github.com/zainarbani/revanced-patches/issues/3558)) ([0f5a771](0f5a771)) * **TikTok - Playback speed:** Prevent crash by fixing invalid patch ([82d53cb](82d53cb)) * **TikTok - Settings:** Prevent crash by fixing invalid patch ([8074032](8074032)) * **Twitter - Open links with app chooser:** Constrain patch to last working version `10.48.0-release` ([b9955d5](b9955d5)) * **Twitter - Open links with app chooser:** Fix incorrect version in compatibility list ([ReVanced#3683](https://github.com/zainarbani/revanced-patches/issues/3683)) ([adafe85](adafe85)) * **YouTube - Check environment:** Only use fields available since Android 8 ([ReVanced#3655](https://github.com/zainarbani/revanced-patches/issues/3655)) ([4413533](4413533)) * **YouTube - ReturnYouTubeDislike:** Show estimated like count for videos with hidden likes ([ReVanced#3601](https://github.com/zainarbani/revanced-patches/issues/3601)) ([005be82](005be82)) * **YouTube - SponsorBlock:** Add summary text to 'view my segments' button ([df80b9f](df80b9f)) * **YouTube - SponsorBlock:** Fade out SB buttons without overlapping other buttons ([ReVanced#3719](https://github.com/zainarbani/revanced-patches/issues/3719)) ([bf96108](bf96108)) * **YouTube - SponsorBlock:** Handle if the user enters an invalid number into any SB settings ([37b3dd1](37b3dd1)) * **YouTube - Spoof video streams:** Change default client type to Android VR ([74c8637](74c8637)) * **YouTube - Spoof video streams:** Change default client type to Android VR ([ReVanced#3672](https://github.com/zainarbani/revanced-patches/issues/3672)) ([a3306f6](a3306f6)) * **YouTube:** Fix issues related to playback by replace streaming data ([ReVanced#3582](https://github.com/zainarbani/revanced-patches/issues/3582)) ([dfa94d7](dfa94d7)) * **YouTube:** Show video chapter titles without clipping when overlay buttons are enabled ([ReVanced#3674](https://github.com/zainarbani/revanced-patches/issues/3674)) ([4b88c31](4b88c31)) ### Features * Add `Change data directory location` patch ([ReVanced#3602](https://github.com/zainarbani/revanced-patches/issues/3602)) ([5998029](5998029)) * Add `Check environment` patch ([ReVanced#3610](https://github.com/zainarbani/revanced-patches/issues/3610)) ([fbcbdaf](fbcbdaf)) * **Duolingo:** Add `Disable ads` and `Enable debug menu` patch ([ReVanced#3422](https://github.com/zainarbani/revanced-patches/issues/3422)) ([d0a8599](d0a8599)) * **Google Photos:** Restore hidden 'Back up while charging' toggle ([ReVanced#3678](https://github.com/zainarbani/revanced-patches/issues/3678)) ([f9e19ce](f9e19ce)) * **Sync for Reddit:** Add `Fix /user/ endpoint` patch ([46d11f3](46d11f3)) * **Sync for Reddit:** Rename patch to `Use /user/ endpoint` ([98ead49](98ead49)) * **TikTok:** Bump patches to support the latest version 36.5.4 ([e5dcb72](e5dcb72)) * **YouTube - Disable precise seeking gesture:** Hide "pull up" label that shows up when swiping ([ReVanced#3668](https://github.com/zainarbani/revanced-patches/issues/3668)) ([3fa8af9](3fa8af9)) * **YouTube - Hide Shorts components:** Add `Hide save music`, `Hide stickers` ([ReVanced#3710](https://github.com/zainarbani/revanced-patches/issues/3710)) ([8c99321](8c99321)) * **YouTube - Hide Shorts components:** Add option to hide like fountain ([ReVanced#3731](https://github.com/zainarbani/revanced-patches/issues/3731)) ([00a99dd](00a99dd)) * **YouTube - Hide Shorts components:** Add patch option to hide Shorts app shortcut (long press app icon) ([ReVanced#3699](https://github.com/zainarbani/revanced-patches/issues/3699)) ([0d4e1f5](0d4e1f5)) * **YouTube - Hide Shorts components:** Add patch option to hide Shorts from app launcher widget Beta ([ReVanced#3707](https://github.com/zainarbani/revanced-patches/issues/3707)) ([838f183](838f183)) * **YouTube - Hide Shorts components:** Hide 'Use this sound' button ([ReVanced#3647](https://github.com/zainarbani/revanced-patches/issues/3647)) ([33fc090](33fc090)) * **YouTube - Keyword filter:** Add syntax to match whole keywords and not substrings ([ReVanced#3592](https://github.com/zainarbani/revanced-patches/issues/3592)) ([f5fb351](f5fb351)) * **YouTube - Spoof client:** Allow forcing AVC codec with iOS ([ReVanced#3570](https://github.com/zainarbani/revanced-patches/issues/3570)) ([1a49d1f](1a49d1f)) * **YouTube Music:** Make working patches compatible with latest versions ([ReVanced#3556](https://github.com/zainarbani/revanced-patches/issues/3556)) ([12f6f19](12f6f19)) * **YouTube:** Add donation link to settings about screen ([ReVanced#3626](https://github.com/zainarbani/revanced-patches/issues/3626)) ([0684ab5](0684ab5))
# [4.14.0-dev.1](v4.13.3...v4.14.0-dev.1) (2024-10-04) ### Bug Fixes * **Pixiv - Hide ads:** Fix for latest version ([ReVanced#3616](https://github.com/zainarbani/revanced-patches/issues/3616)) ([98956e8](98956e8)) * **Soundcloud - Hide ads:** Support latest version ([ReVanced#3628](https://github.com/zainarbani/revanced-patches/issues/3628)) ([66e7e33](66e7e33)) * **Soundcloud:** Support latest versions ([ReVanced#3702](https://github.com/zainarbani/revanced-patches/issues/3702)) ([099ac5e](099ac5e)) * **SwissID:** Rename `Remove Google Play Integrity Integrity check` to `Remove Google Play Integrity check` ([ReVanced#3558](https://github.com/zainarbani/revanced-patches/issues/3558)) ([0f5a771](0f5a771)) * **TikTok - Playback speed:** Prevent crash by fixing invalid patch ([82d53cb](82d53cb)) * **TikTok - Settings:** Prevent crash by fixing invalid patch ([8074032](8074032)) * **Twitter - Open links with app chooser:** Constrain patch to last working version `10.48.0-release` ([b9955d5](b9955d5)) * **Twitter - Open links with app chooser:** Fix incorrect version in compatibility list ([ReVanced#3683](https://github.com/zainarbani/revanced-patches/issues/3683)) ([adafe85](adafe85)) * **YouTube - Check environment:** Only use fields available since Android 8 ([ReVanced#3655](https://github.com/zainarbani/revanced-patches/issues/3655)) ([4413533](4413533)) * **YouTube - ReturnYouTubeDislike:** Show estimated like count for videos with hidden likes ([ReVanced#3601](https://github.com/zainarbani/revanced-patches/issues/3601)) ([005be82](005be82)) * **YouTube - SponsorBlock:** Add summary text to 'view my segments' button ([df80b9f](df80b9f)) * **YouTube - SponsorBlock:** Fade out SB buttons without overlapping other buttons ([ReVanced#3719](https://github.com/zainarbani/revanced-patches/issues/3719)) ([bf96108](bf96108)) * **YouTube - SponsorBlock:** Handle if the user enters an invalid number into any SB settings ([37b3dd1](37b3dd1)) * **YouTube - Spoof video streams:** Change default client type to Android VR ([74c8637](74c8637)) * **YouTube - Spoof video streams:** Change default client type to Android VR ([ReVanced#3672](https://github.com/zainarbani/revanced-patches/issues/3672)) ([a3306f6](a3306f6)) * **YouTube:** Fix issues related to playback by replace streaming data ([ReVanced#3582](https://github.com/zainarbani/revanced-patches/issues/3582)) ([dfa94d7](dfa94d7)) * **YouTube:** Show video chapter titles without clipping when overlay buttons are enabled ([ReVanced#3674](https://github.com/zainarbani/revanced-patches/issues/3674)) ([4b88c31](4b88c31)) ### Features * Add `Change data directory location` patch ([ReVanced#3602](https://github.com/zainarbani/revanced-patches/issues/3602)) ([5998029](5998029)) * Add `Check environment` patch ([ReVanced#3610](https://github.com/zainarbani/revanced-patches/issues/3610)) ([fbcbdaf](fbcbdaf)) * **Duolingo:** Add `Disable ads` and `Enable debug menu` patch ([ReVanced#3422](https://github.com/zainarbani/revanced-patches/issues/3422)) ([d0a8599](d0a8599)) * **Google Photos:** Restore hidden 'Back up while charging' toggle ([ReVanced#3678](https://github.com/zainarbani/revanced-patches/issues/3678)) ([f9e19ce](f9e19ce)) * **Sync for Reddit:** Add `Fix /user/ endpoint` patch ([46d11f3](46d11f3)) * **Sync for Reddit:** Rename patch to `Use /user/ endpoint` ([98ead49](98ead49)) * **TikTok:** Bump patches to support the latest version 36.5.4 ([e5dcb72](e5dcb72)) * **YouTube - Disable precise seeking gesture:** Hide "pull up" label that shows up when swiping ([ReVanced#3668](https://github.com/zainarbani/revanced-patches/issues/3668)) ([3fa8af9](3fa8af9)) * **YouTube - Hide Shorts components:** Add `Hide save music`, `Hide stickers` ([ReVanced#3710](https://github.com/zainarbani/revanced-patches/issues/3710)) ([8c99321](8c99321)) * **YouTube - Hide Shorts components:** Add option to hide like fountain ([ReVanced#3731](https://github.com/zainarbani/revanced-patches/issues/3731)) ([00a99dd](00a99dd)) * **YouTube - Hide Shorts components:** Add patch option to hide Shorts app shortcut (long press app icon) ([ReVanced#3699](https://github.com/zainarbani/revanced-patches/issues/3699)) ([0d4e1f5](0d4e1f5)) * **YouTube - Hide Shorts components:** Add patch option to hide Shorts from app launcher widget Beta ([ReVanced#3707](https://github.com/zainarbani/revanced-patches/issues/3707)) ([838f183](838f183)) * **YouTube - Hide Shorts components:** Hide 'Use this sound' button ([ReVanced#3647](https://github.com/zainarbani/revanced-patches/issues/3647)) ([33fc090](33fc090)) * **YouTube - Keyword filter:** Add syntax to match whole keywords and not substrings ([ReVanced#3592](https://github.com/zainarbani/revanced-patches/issues/3592)) ([f5fb351](f5fb351)) * **YouTube - Spoof client:** Allow forcing AVC codec with iOS ([ReVanced#3570](https://github.com/zainarbani/revanced-patches/issues/3570)) ([1a49d1f](1a49d1f)) * **YouTube Music:** Make working patches compatible with latest versions ([ReVanced#3556](https://github.com/zainarbani/revanced-patches/issues/3556)) ([12f6f19](12f6f19)) * **YouTube:** Add donation link to settings about screen ([ReVanced#3626](https://github.com/zainarbani/revanced-patches/issues/3626)) ([0684ab5](0684ab5))
# [4.18.0-dev.1](v4.17.1...v4.18.0-dev.1) (2024-10-04) ### Bug Fixes * **Pixiv - Hide ads:** Fix for latest version ([ReVanced#3616](https://github.com/zainarbani/revanced-patches/issues/3616)) ([98956e8](98956e8)) * **Soundcloud - Hide ads:** Support latest version ([ReVanced#3628](https://github.com/zainarbani/revanced-patches/issues/3628)) ([66e7e33](66e7e33)) * **Soundcloud:** Support latest versions ([ReVanced#3702](https://github.com/zainarbani/revanced-patches/issues/3702)) ([099ac5e](099ac5e)) * **SwissID:** Rename `Remove Google Play Integrity Integrity check` to `Remove Google Play Integrity check` ([ReVanced#3558](https://github.com/zainarbani/revanced-patches/issues/3558)) ([0f5a771](0f5a771)) * **TikTok - Playback speed:** Prevent crash by fixing invalid patch ([82d53cb](82d53cb)) * **TikTok - Settings:** Prevent crash by fixing invalid patch ([8074032](8074032)) * **Twitter - Open links with app chooser:** Constrain patch to last working version `10.48.0-release` ([b9955d5](b9955d5)) * **Twitter - Open links with app chooser:** Fix incorrect version in compatibility list ([ReVanced#3683](https://github.com/zainarbani/revanced-patches/issues/3683)) ([adafe85](adafe85)) * **YouTube - Check environment:** Only use fields available since Android 8 ([ReVanced#3655](https://github.com/zainarbani/revanced-patches/issues/3655)) ([4413533](4413533)) * **YouTube - ReturnYouTubeDislike:** Show estimated like count for videos with hidden likes ([ReVanced#3601](https://github.com/zainarbani/revanced-patches/issues/3601)) ([005be82](005be82)) * **YouTube - SponsorBlock:** Add summary text to 'view my segments' button ([df80b9f](df80b9f)) * **YouTube - SponsorBlock:** Fade out SB buttons without overlapping other buttons ([ReVanced#3719](https://github.com/zainarbani/revanced-patches/issues/3719)) ([bf96108](bf96108)) * **YouTube - SponsorBlock:** Handle if the user enters an invalid number into any SB settings ([37b3dd1](37b3dd1)) * **YouTube - Spoof video streams:** Change default client type to Android VR ([74c8637](74c8637)) * **YouTube - Spoof video streams:** Change default client type to Android VR ([ReVanced#3672](https://github.com/zainarbani/revanced-patches/issues/3672)) ([a3306f6](a3306f6)) * **YouTube:** Fix issues related to playback by replace streaming data ([ReVanced#3582](https://github.com/zainarbani/revanced-patches/issues/3582)) ([dfa94d7](dfa94d7)) * **YouTube:** Show video chapter titles without clipping when overlay buttons are enabled ([ReVanced#3674](https://github.com/zainarbani/revanced-patches/issues/3674)) ([4b88c31](4b88c31)) ### Features * Add `Change data directory location` patch ([ReVanced#3602](https://github.com/zainarbani/revanced-patches/issues/3602)) ([5998029](5998029)) * Add `Check environment` patch ([ReVanced#3610](https://github.com/zainarbani/revanced-patches/issues/3610)) ([fbcbdaf](fbcbdaf)) * **Duolingo:** Add `Disable ads` and `Enable debug menu` patch ([ReVanced#3422](https://github.com/zainarbani/revanced-patches/issues/3422)) ([d0a8599](d0a8599)) * **Google Photos:** Restore hidden 'Back up while charging' toggle ([ReVanced#3678](https://github.com/zainarbani/revanced-patches/issues/3678)) ([f9e19ce](f9e19ce)) * **Sync for Reddit:** Add `Fix /user/ endpoint` patch ([46d11f3](46d11f3)) * **Sync for Reddit:** Rename patch to `Use /user/ endpoint` ([98ead49](98ead49)) * **TikTok:** Bump patches to support the latest version 36.5.4 ([e5dcb72](e5dcb72)) * **YouTube - Disable precise seeking gesture:** Hide "pull up" label that shows up when swiping ([ReVanced#3668](https://github.com/zainarbani/revanced-patches/issues/3668)) ([3fa8af9](3fa8af9)) * **YouTube - Hide Shorts components:** Add `Hide save music`, `Hide stickers` ([ReVanced#3710](https://github.com/zainarbani/revanced-patches/issues/3710)) ([8c99321](8c99321)) * **YouTube - Hide Shorts components:** Add option to hide like fountain ([ReVanced#3731](https://github.com/zainarbani/revanced-patches/issues/3731)) ([00a99dd](00a99dd)) * **YouTube - Hide Shorts components:** Add patch option to hide Shorts app shortcut (long press app icon) ([ReVanced#3699](https://github.com/zainarbani/revanced-patches/issues/3699)) ([0d4e1f5](0d4e1f5)) * **YouTube - Hide Shorts components:** Add patch option to hide Shorts from app launcher widget Beta ([ReVanced#3707](https://github.com/zainarbani/revanced-patches/issues/3707)) ([838f183](838f183)) * **YouTube - Hide Shorts components:** Hide 'Use this sound' button ([ReVanced#3647](https://github.com/zainarbani/revanced-patches/issues/3647)) ([33fc090](33fc090)) * **YouTube - Keyword filter:** Add syntax to match whole keywords and not substrings ([ReVanced#3592](https://github.com/zainarbani/revanced-patches/issues/3592)) ([f5fb351](f5fb351)) * **YouTube - Spoof client:** Allow forcing AVC codec with iOS ([ReVanced#3570](https://github.com/zainarbani/revanced-patches/issues/3570)) ([1a49d1f](1a49d1f)) * **YouTube Music:** Make working patches compatible with latest versions ([ReVanced#3556](https://github.com/zainarbani/revanced-patches/issues/3556)) ([12f6f19](12f6f19)) * **YouTube:** Add donation link to settings about screen ([ReVanced#3626](https://github.com/zainarbani/revanced-patches/issues/3626)) ([0684ab5](0684ab5))
Integration changes
Todo:
Spoof client
patch - various side effects (watch history, auto resume playback, ...) #3208 (edit: it appears that all issues are fixed)