How to enable Pixel 4’s Live Caption feature on older Pixel phones and other rooted Android 10 devices
For users who are deaf or hard-of-hearing, Google’s new Live Caption tool in Android 10 could be really useful. This tool was announced at Google I/O earlier this year, and what it does is automatically provide captions for audio that’s playing on your device. It works with videos, podcasts, audio messages, and other supported media (but not phone or video calls). When Google launched the feature, they made it a Pixel 4-exclusive, though they said they planned to bring it to the Pixel 3 and Pixel 3a sometime this month. However, we’ve already shown that it can run on other devices, too, and now I’m going to share how to enable it on your own device.
You’ll need a rooted device running Android 10 to make this trick work because Google so far intends for Live Caption to only work on the latest Pixel smartphones. Apart from the method I used to enable Live Caption support on Android 10, there’s another method that involves changing system property values to trick the Device Personalization Services app into thinking it’s running on a Pixel 4. However, doing so on an older Pixel phone will break the Google Camera app, so I won’t share this alternative method. The method I’m sharing won’t touch any system properties; instead, it directly sets all the values controlling the Live Caption feature to be true. Thus, no camera functionality, or any other functionality for that matter, should be affected. Still, before flashing any mods like this, you should have a backup handy.
I enabled Live Caption on my Pixel 2 XL and Pixel 3 XL. Some of my followers on Twitter said it worked on the Pixel 3a, first-generation Pixel, Essential Phone, and Redmi K20 running a custom AOSP-based ROM. Live Caption doesn’t seem to work on the OnePlus 6T or OnePlus 7 Pro running OxygenOS 10 using this method, but hopefully, we can get it working with a little more debugging. If you want to try it out on your own device, here’s what you need to do.
- Go to Settings > Apps and tap the menu to show all system apps. See if “Device Personalization Services” is installed. This app is pre-installed on Pixel devices. It shouldn’t be there on non-Pixel devices, but some custom ROMs may have bundled it anyway.
- If your device already has “Device Personalization Services” installed, then you must update to the latest version of the APK extracted from the Pixel 4. Specifically, install this APK. The APK extracted from the Pixel 4 has code for the Live Caption feature. Other versions of this APK will not have Live Caption. If your device doesn’t already have Device Personalization Services installed, then do not try to install it and just continue to the next step.
- Open Magisk Manager and install the “SQLite for ARM aarch64 devices” Module from the Downloads section. Note: If you already have an SQLite binary from TitaniumBackup or Termux, then my Magisk Module installer script will detect it so you won’t need to install this separate SQLite binary.
- Reboot your phone.
- Download one of the following Magisk Modules that I made and install it in Magisk Manager. If your device had “Device Personalization Services” installed and you followed step #2 to update to the latest version, then install this Module called “LiveCaption_Pixel.zip“. If your device didn’t have “Device Personalization Services” installed and you skipped step #2, then install this Module called “LiveCaption_nonPixel.zip“. The difference between the _Pixel and the _nonPixel Modules is that the _nonPixel one has the “Device Personalization Services” app bundled with it. This is a system app, so it cannot be installed like any normal APK if you don’t already have it installed.
- Reboot your phone.
- Check Settings > Sound or Settings > Accessibility for the Live Caption setting. Enable the feature and see if it works by watching a YouTube video with English language audio. If it doesn’t work, try rebooting one more time.
Hopefully, you should have Live Caption up and running on your rooted Android 10 device. I’ve had the feature enabled on my Pixel 2 XL for over 2 months now without any issues. A word of warning, though. Do not update the Device Personalization Services app through the Google Play Store. Google serves different versions of the app to different devices—if you install a version that wasn’t made for the Pixel 4, you’ll lose the Live Caption feature. Disable automatic updates for this app in the Play Store, and check to make sure that any updated APK you do install through APKMirror came from the Pixel 4.
I discovered this method on my own, but I would like to thank XDA Forum Moderator Didgeridoohan and XDA Recognized Developer topjohnwu for helping me debug my script. I would also like to thank XDA Senior Member 73sydney, jcmm11, adpoliak, and all others involved in the GPay-SQLite-Fix Magisk Module as I borrowed the code to check for an SQLite binary.