revanced-patches
revanced-patches copied to clipboard
feat: (youtube/shorts): hide paid promotion button
Application
YouTube
Issue
On some specific Shorts, an "includes paid promotion" button shows up the entire time. This can be a pretty annoying experience and make Shorts feel cluttered.
Patch
This patch would get rid of this button.
Motivation
Cleaner UI and no cluttery useless stuff that gets in the way.
Acknowledgements
- [X] I have searched the existing issues and this is a new and no duplicate or related to another open issue.
- [X] I have written a short but informative title.
- [X] I filled out all of the requested information in this issue properly.
Please add a screenshot and video link.
Doing a quick "paid promotion" search in Shorts category i found this one:
https://youtube.com/shorts/M0XiUPyaR_M
And the button I'm talking about is this:
04-15 14:46:50.092 20811 28461 D revanced: LithoFilterPatch: Searching ID: text_image_button_group_layout.eml|e00d753cb0f57d10 Path: text_image_button_group_layout.eml|e00d753cb0f57d10|text_image_button_group_layout.eml|e00d753cb0f57d10|CellType| BufferStrings: active_view_display_container.eml|ec32337b661d0139Γ¥Ö~s@~Γ¥Ö1713171857799806596Γ¥Ötext_image_button_group_layout.eml|e00d753cb0f57d10Γ¥Öeml.ads.text_adΓ¥Ö$6d910fb6-0000-235d-b9b1-582429a614c8Γ¥Öhttps://www.youtube.com/pagead/paralleladview?ai=CKI1Eke0cZrvQMsmPmsMPo7mMsAQAqJnEjrcQABAFIABg5QKCARpwYXJ0bmVyLW1vYmlsZS15b3V0dWJlLXNycKgDBKoEF0_QJ5gYAFftOD_aXg0PgsN_O4UwM8ejkAcEqAfnnbECqAfonbEC0ggtCIzBgEAQARheMgODwgE6DcDAgICggAKAwICAgCBI2aDSNVAUWKDRmcDuw4UDsAsBugtICAMQBRgMIAsoBTAFQANIAFhuYABoAHABiAEAmAEBogEkChYIASgB2rgEDjIMOgoKCCgwmBfZoNI1gAIBqAIEuAIB2AICgAIBihcYCAMYASABKAEwATgBQAFIAVABWAFgAnABoBcB&sigh=YpInCUqWfJg&cid=CAASFeRoCGtDT8dmuRIUj7DkOX-GIt5bFg&vt=0&ad_mt=[AD_MT]Γ¥Ö
04-15 14:46:50.092 20811 28460 D revanced: LithoFilterPatch: Searching ID: cell_divider.eml|66d727a1f6af279f Path: cell_divider.eml|66d727a1f6af279f|cell_divider.eml|66d727a1f6af279f|CellType| BufferStrings: divider.eml|1962a10e5c84fc18Γ¥Ö1713171857799806597Γ¥Öcell_divider.eml|66d727a1f6af279fΓ¥Ö
04-15 14:46:50.238 20811 20811 D revanced: LithoFilterPatch: Searching ID: null Path: reel_channel_bar.eml|c805df4c7866650b| BufferStrings: Key_ReelChannelBarInnerWithControllerΓ¥Öreel_channel_bar_inner.eml|9b74a66dffa09ec4Γ¥Ö
04-15 14:46:50.240 20811 20811 D revanced: LithoFilterPatch: Searching ID: shorts_video_title_item.eml|32b85118397608b8 Path: shorts_video_title_item.eml|32b85118397608b8|ContainerType| BufferStrings: shorts_video_title.eml|51eda4a6b9591883Γ¥Ö1713172609821431810Γ¥Öshorts_video_title_item.eml|32b85118397608b8Γ¥Ö
04-15 14:46:50.242 20811 20811 D revanced: LithoFilterPatch: Searching ID: reel_sound_metadata.eml|bb9ea48760404cc8 Path: reel_sound_metadata.eml|bb9ea48760404cc8|ContainerType| BufferStrings: FEsfv_audio_pivotΓ¥Öd8gVDCjYSJwoLNEdqNXpCaDNRMjgSCzRHajV6QmgzUTI4Ggs0R2o1ekJoM1EyOBoLNEdqNXpCaDNRMjgok47w7NGl8ISGAQ%3D%3DΓ¥ÖOriginal SoundΓ¥Öyt_outline_music_black_18Γ¥Ö1713172609821431813Γ¥Öreel_sound_metadata.eml|bb9ea48760404cc8Γ¥ÖOriginal SoundΓ¥ÖFEsfv_audio_pivotΓ¥Öd8gVDCjYSJwoLNEdqNXpCaDNRMjgSCzRHajV6QmgzUTI4Ggs0R2o1ekJoM1EyOBoLNEdqNXpCaDNRMjgok47w7NGl8ISGAQ%3D%3DΓ¥Ö
04-15 14:46:50.245 20811 20811 D revanced: LithoFilterPatch: Searching ID: shorts_action_bar.eml|87d1fb32edb3aa85 Path: shorts_action_bar.eml|87d1fb32edb3aa85|ContainerType| BufferStrings: shorts_video_action_button.eml|e611dc8f334aedd6Γ¥Ö-8%fΓ¥Öshorts_video_action_button.eml|e611dc8f334aedd6Γ¥Ö-8%fΓ¥Öshorts_video_action_button.eml|e611dc8f334aedd6Γ¥Ö-8%fΓ¥Öshorts_dislike_button.eml|44d1111bc40a15c3Γ¥Öshorts_like_button.eml|6d8588830eece7d5Γ¥Ö1713172609821431815Γ¥Öshorts_action_bar.eml|87d1fb32edb3aa85Γ¥Ö
04-15 14:46:50.248 20811 20811 D revanced: LithoFilterPatch: Searching ID: reel_pivot_button.eml|8e16cc14848ba6d9 Path: reel_pivot_button.eml|8e16cc14848ba6d9|ContainerType| BufferStrings: https://yt3.ggpht.com/hsSLm_efLNE3VM5A5eauGSri1QBCYAK93oQDnCQwlhblxz1w4aTrm9YYE4R7W_Prs9TBewrbaw=s176-c-k-c0x00ffffff-no-rjΓ¥Öhttps://yt3.ggpht.com/hsSLm_efLNE3VM5A5eauGSri1QBCYAK93oQDnCQwlhblxz1w4aTrm9YYE4R7W_Prs9TBewrbaw=s88-c-k-c0x00ffffff-no-rjΓ¥Öhttps://yt3.ggpht.com/hsSLm_efLNE3VM5A5eauGSri1QBCYAK93oQDnCQwlhblxz1w4aTrm9YYE4R7W_Prs9TBewrbaw=s48-c-k-c0x00ffffff-no-rjΓ¥Ö1713172609821431812Γ¥Öreel_pivot_button.eml|8e16cc14848ba6d9Γ¥Öid.reel_pivot_buttonΓ¥ÖSee more videos using this soundΓ¥ÖFEsfv_audio_pivotΓ¥Öd8gVDCjYSJwoLNEdqNXpCaDNRMjgSCzRHajV6QmgzUTI4Ggs0R2o1ekJoM1EyOBoLNEdqNXpCaDNRMjgok47w7NGl8ISGAQ%3D%3DΓ¥Ö
Could any of these lines be relevant for hiding the paid promotion banner in shorts? I took them after hiding most components with the provided settings. I thought it could be first one but trying it in the custom filter didn't hide any banner for me.
The 'Includes paid promotion' is not a litho component. It is part of the UI component with id metadata_badge
.
It could be hidden, but there is nothing unique to identify it's a paid promotion label and it's possible that is used for some other labels as well.
It could be hidden, but there is nothing unique to identify it's a paid promotion label and it's possible that is used for some other labels as well.
In that case could it be hidden only while in the Shorts player to avoid that? I don't think it's currently used for any other Shorts components
Probably. The paid promotion icon should be bundled with the app, so it could also check what icon resource is being used and selectively hide it that way.
The icon name is "eBc.png" inside the res folder. On an unrelated note, the YouTube developers are just collecting icons at this point. So many unused ones
What's the decoded icon name? Look in the temp folder the cli patcher creates. It has all the resources with de-obfuscated names.
De-obfuscated names of this icon. Only thing is I'm not sure if the grey version of the icon is used anywhere, but I highly doubt it
On my end it looked like a Litho component, because the layout was purely constructed out of view groups which is common for Litho components. To confirm that I still need to capture the Litho component name in the logs though
With the new A/B changes to shorts, I was able to capture the litho component to hide the paid promotion label in shorts. Adding reel_player_disclosure.eml
to custom filter hides it now.
Relevant log line
04-18 15:53:54.810 12503 12503 D revanced: LithoFilterPatch: Searching ID: null Path: reel_metapanel.eml|e04fff1e35e55361|ContainerType|reel_player_disclosure.eml|bf5745f13ccf6a87|player_disclosure.eml|2f9b207b080faf32|ContainerType| BufferStrings: yt_outline_chevron_right_black_24Γ¥ÖIncludes paid promotionΓ¥Öyt_outline_money_hand_grey600_24Γ¥Ö(https://support.google.com/youtube?p=pppΓ¥Ö
reel_player_disclosure.eml
to custom filter hides it now
Works for me too now, banner also looks noticeably different than it used to
Works for me too now, banner also looks noticeably different than it used to
Yes, which is why I decided to run another litho check. Lo and behold, there's a new litho component.
Fixed on dev