## 🧩 Patches The official Patch bundle provided by ReVanced and the community. > Looking for the JSON variant of this? [Click here](patches.json). ### [📦 `com.google.android.youtube`](https://play.google.com/store/apps/details?id=com.google.android.youtube)
| 💊 Patch | 📜 Description | 🏹 Target Version | |:--------:|:--------------:|:-----------------:| | `client-spoof` | Spoofs the YouTube client to prevent playback issues. | 18.01.32 | | `custom-branding-icon-afn-blue` | Changes the YouTube launcher icon (Afn / Blue). | 18.01.32 | | `custom-branding-icon-afn-red` | Changes the YouTube launcher icon (Afn / Red). | 18.01.32 | | `custom-branding-icon-revancify` | Changes the YouTube launcher icon (Revancify). | 18.01.32 | | `custom-branding-name` | Changes the YouTube launcher name to your choice (defaults to ReVanced Extended). | 18.01.32 | | `custom-video-buffer` | Lets you change the buffers of videos. | 18.01.32 | | `custom-video-speed` | Adds more video speed options. | 18.01.32 | | `default-video-quality` | Adds ability to set default video quality settings. | 18.01.32 | | `default-video-speed` | Adds ability to set default video speed settings. | 18.01.32 | | `disable-haptic-feedback` | Disable haptic feedback when swiping. | 18.01.32 | | `enable-external-browser` | Use an external browser to open the url. | 18.01.32 | | `enable-hdr-auto-brightness` | Makes the brightness of HDR videos follow the system default. | 18.01.32 | | `enable-minimized-playback` | Enables minimized and background playback. | 18.01.32 | | `enable-old-layout` | Spoof the YouTube client version to use the old layout. | 18.01.32 | | `enable-old-quality-layout` | Enables the original quality flyout menu. | 18.01.32 | | `enable-old-seekbar-color` | Enable old seekbar color in dark mode. | 18.01.32 | | `enable-open-links-directly` | Bypass URL redirects (youtube.com/redirect) when opening links in video descriptions. | 18.01.32 | | `enable-seekbar-tapping` | Enables tap-to-seek on the seekbar of the video player. | 18.01.32 | | `enable-tablet-miniplayer` | Enables the tablet mini player layout. | 18.01.32 | | `enable-wide-searchbar` | Replaces the search icon with a wide search bar. This will hide the YouTube logo when active. | 18.01.32 | | `force-premium-heading` | Forces premium heading on the home screen. | 18.01.32 | | `header-switch` | Add switch to change header. | 18.01.32 | | `hide-auto-captions` | Hide captions from being automatically enabled. | 18.01.32 | | `hide-auto-player-popup-panels` | Hide automatic popup panels (playlist or live chat) on video player. | 18.01.32 | | `hide-autoplay-button` | Hides the autoplay button in the video player. | 18.01.32 | | `hide-button-container` | Adds options to hide action buttons under a video. | 18.01.32 | | `hide-cast-button` | Hides the cast button in the video player. | 18.01.32 | | `hide-channel-watermark` | Hides creator's watermarks on videos. | 18.01.32 | | `hide-comment-component` | Adds options to hide comment component under a video. | 18.01.32 | | `hide-create-button` | Hides the create button in the navigation bar. | 18.01.32 | | `hide-crowdfunding-box` | Hides the crowdfunding box between the player and video description. | 18.01.32 | | `hide-email-address` | Hides the email address in the account switcher. | 18.01.32 | | `hide-endscreen-cards` | Hides the suggested video cards at the end of a video in fullscreen. | 18.01.32 | | `hide-endscreen-overlay` | Hide endscreen overlay on swipe controls. | 18.01.32 | | `hide-filmstrip-overlay` | Hide flimstrip overlay on swipe controls. | 18.01.32 | | `hide-flyout-panel` | Adds options to hide player settings flyout panel. | 18.01.32 | | `hide-fullscreen-buttoncontainer` | Hides the button containers in fullscreen. | 18.01.32 | | `hide-general-ads` | Hooks the method which parses the bytes into a ComponentContext to filter components. | 18.01.32 | | `hide-info-cards` | Hides info-cards in videos. | 18.01.32 | | `hide-mix-playlists` | Removes mix playlists from home feed and video player. | 18.01.32 | | `hide-pip-notification` | Disable pip notification when you first launch pip mode. | 18.01.32 | | `hide-player-captions-button` | Hides the captions button in the video player. | 18.01.32 | | `hide-player-overlay-filter` | Hide the suggested actions bar inside the player. | 18.01.32 | | `hide-shorts-button` | Hides the shorts button in the navigation bar. | 18.01.32 | | `hide-shorts-component` | Hides other Shorts components. | 18.01.32 | | `hide-startup-shorts-player` | Disables playing YouTube Shorts when launching YouTube. | 18.01.32 | | `hide-stories` | Hides YouTube Stories shelf on the feed. | 18.01.32 | | `hide-suggested-actions` | Hide the suggested actions bar inside the player. | 18.01.32 | | `hide-time-and-seekbar` | Hides progress bar and time counter on videos. | 18.01.32 | | `hide-video-ads` | Removes ads in the video player. | 18.01.32 | | `layout-switch` | Tricks the dpi to use some tablet/phone layouts. | 18.01.32 | | `materialyou` | Enables MaterialYou theme for Android 12+ | 18.01.32 | | `microg-support` | Allows YouTube ReVanced to run without root and under a different package name with Vanced MicroG. | 18.01.32 | | `optimize-resource` | Removes duplicate resources and adds missing translation files from YouTube. | 18.01.32 | | `overlay-buttons` | Add overlay buttons for ReVanced Extended. | 18.01.32 | | `remove-player-button-background` | Removes the background from the video player buttons. | 18.01.32 | | `return-youtube-dislike` | Shows the dislike count of videos using the Return YouTube Dislike API. | 18.01.32 | | `settings` | Applies mandatory patches to implement ReVanced settings into the application. | 18.01.32 | | `sponsorblock` | Integrate SponsorBlock. | 18.01.32 | | `swipe-controls` | Adds volume and brightness swipe controls. | 18.01.32 | | `theme` | Applies a custom theme (default: amoled). | 18.01.32 | | `translations` | Add Crowdin Translations | 18.01.32 |
### [📦 `com.google.android.apps.youtube.music`](https://play.google.com/store/apps/details?id=com.google.android.apps.youtube.music)
| 💊 Patch | 📜 Description | 🏹 Target Version | |:--------:|:--------------:|:-----------------:| | `background-play` | Enables playing music in the background. | all | | `client-spoof-music` | Spoofs the YouTube Music client. | all | | `custom-branding-music-red` | Changes the YouTube Music launcher icon to your choice (defaults to ReVanced Red). | all | | `custom-branding-music-revancify` | Changes the YouTube Music launcher icon to your choice (Revancify). | all | | `enable-black-navbar` | Sets the navigation bar color to black. | all | | `enable-color-match-player` | Matches the fullscreen player color with the minimized one. | all | | `enable-force-minimized-player` | Permanently keep player minimized even if another track is played. | all | | `enable-force-shuffle` | Enable force shuffle even if another track is played. | all | | `enable-opus-codec` | Enable opus codec when playing audio. | all | | `enable-tablet-mode` | Enable landscape mode on phone. | all | | `enable-zen-mode` | Adds a grey tint to the video player to reduce eye strain. | all | | `exclusive-audio-playback` | Enables the option to play music without video. | all | | `hide-compact-header` | Hides the music category bar at the top of the homepage. | all | | `hide-get-premium` | Removes all "Get Premium" evidences from the avatar menu. | all | | `hide-music-ads` | Removes ads in the music player. | all | | `hide-music-cast-button` | Hides the cast button in the video player and header | all | | `hide-taste-builder` | Removes the "Tell us which artists you like" card from the home screen. | all | | `hide-upgrade-button` | Removes the upgrade tab from the pivot bar. | all | | `minimized-playback-music` | Enables minimized playback on Kids music. | all | | `music-microg-support` | Allows YouTube Music ReVanced to run without root and under a different package name. | all | | `music-settings` | Adds settings for ReVanced to YouTube Music. | all | | `optimize-resource-music` | Remove unnecessary resources. | all | | `translations-music` | Add Crowdin Translations for YouTube Music | all |
## 📝 JSON Format This section explains the JSON format for the [patches.json](patches.json) file. The file contains an array of objects, each object representing a patch. The object contains the following properties: | key | description | |-------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | `name` | The name of the patch. | | `description` | The description of the patch. | | `version` | The version of the patch. | | `excluded` | Whether the patch is excluded by default. If `true`, the patch must never be included by default. | | `options` | An array of options for this patch. | | `options.key` | The key of the option. | | `options.title` | The title of the option. | | `options.description` | The description of the option. | | `options.required` | Whether the option is required. | | `options.choices?` | An array of choices of the option. This may be `null` if this option has no choices. The element type of this array may be any type. It can be a `String`, `Int` or something else. | | `dependencies` | An array of dependencies, which are patch names. | | `compatiblePackages` | An array of packages compatible with this patch. | | `compatiblePackages.name` | The name of the package. | | `compatiblePackages.versions` | An array of versions of the package compatible with this patch. If empty, all versions are seemingly compatible. | Example: ```json [ { "name": "remember-video-quality", "description": "Adds the ability to remember the video quality you chose in the video quality flyout.", "version": "0.0.1", "excluded": false, "options": [], "dependencies": [ "integrations", "video-id-hook" ], "compatiblePackages": [ { "name": "com.google.android.youtube", "versions": [ "17.49.37", "18.01.32" ] } ] } ] ```