Most people will agree that the software on Pixel smartphones showcase what Google believes Android should be, and as such, the software is often well-received by enthusiasts. Nonetheless, thanks to the dedicated modding community, you don’t necessarily have to own a Pixel device to take advantage of its software features. The “Now Playing” functionality, for example, has remained exclusive to the Pixel lineup, but developer Kieron Quinn, also known as Quinny899 on our forums, managed to port it to other Android smartphones in the form of a hybrid Xposed-Magisk module named Ambient Music Mod. Now, Quinn has taken things a step further and completely overhauled the mod to make it a non-root solution.
Meet Ambient Music Mod v2
Making the ambient music recognition feature of the Pixel smartphones hardware-agnostic without root privilege wasn’t an easy task, but Quinny899 achieved the feat using Shizuku. For the unaware, Shizuku uses a unique service that allows third-party apps access to system-level APIs through the Android Debug Bridge (ADB) interface. Since the v2 release, Ambient Music Mod can work without root access on devices running Android 12 or higher.
Another big change is the removal of Xposed-related dependencies. There’s no need to install an Xposed distribution like EdXposed or LSPosed anymore, as the mod now comes as a standalone app. Keep in mind that you can still opt for the root-only variant of Ambient Music Mod on older Android versions.
What are the features of Ambient Music Mod v2
Below you can find a rundown of the features provided by Ambient Music Mod:
- Full Now Playing support, based on the latest version from Pixel devices and the latest music databases
- Automatic Ambient Music recognition, with settings to control how often recognition runs – finding the right balance between battery usage and convenience
- Now Playing History and Favorites support
- Support to trigger recognitions manually, including a homescreen widget
- On Demand recognition on supported devices, using the Google Assistant-backed recognition engine for songs that are not in the local database (must be triggered manually)
- Show Now Playing songs on the lock screen (accessibility service required)
- View the full track list of recognizable songs, and change the database location if your taste does not match your device’s locale
At the time of writing, the developer has already pushed two hotfixes after the v2 major release. You can now choose an alternative encoding option and fine-control the “gain” values to fix the distortion and/or crackling issues.
How to download and install Ambient Music Mod v2
Just like the original release, Ambient Music Mod v2 is a free and open-source mod. You can find the latest version of the APK on the project’s GitHub repo linked below.
To install the downloaded APK, take a look at our guide to sideload Android app packages. After installation, Ambient Music Mod will ask for Shizuku access. Depending on the underlying Android version, you may continue with root or non-root mode. Next, the app will download a few additional components and prompt you to give the required permissions – that’s all.
Comparing Google’s Now Playing and Ambient Music Mod v2
Under the hood, Ambient Music Mod uses a modified version of a Google app called Android System Intelligence. The on-device-recognition part is executed after querying the music database – exactly what Google’s Now Playing does. As a result, the real-life performance of Ambient Music Mod on a non-Google device is more or less similar to a Pixel smartphone — especially after tuning the parameters. However, there are a handful of dissimilarities between the Pixel-exclusive feature and the mod.
Here’s a quick hands-on to show the differences between the official Google implementation and Quinny899’s mod. The test devices are a Google Pixel 4a running Android 13 Beta 3.2 and an ancient Redmi 5 running an unofficial build of LineageOS 18.1 on top of Android 11.
1. UI
On Pixel smartphones, you can access the “Now Playing” option under Settings => Sound & vibration. However, Ambient Music Mod is a standalone app, hence you can find its entry on your launcher’s app listing section. After tapping on the icon, you can access the Now Playing screen and additional options.
2. Recognizing the ambient music
As soon as the music database is downloaded, you should be able to turn on the option named “Identify songs playing nearby” for both. On a Google Pixel device, the songs playing around you should automatically be identified and shown on the lock screen.
Ambient Music Mod, on the other hand, allows you to toggle this option. In case you don’t want to clutter your lock screen, you can opt for the manual “Recognize” button to identify the music.
3. Now Playing History and Music search
The Now Playing History section is virtually identical in both implementations. You can explore the history of recognized tunes, add them under the Favorites list, and optionally place a shortcut of the section to your home screen for quick access.
The manual searching portion is different, though. On a Pixel phone, you can simply turn on the option called Show search button on lock screen and search for a song from your lock screen. This “On Demand” recognition mechanism might not work with Ambient Music Mod on all devices out of the box. To know more, kindly go through the explanation by the developer.
4. Miscellaneous
Due to the fact that Google’s Now Playing module is a built-in component of the Pixel firmware, there’s not much to tinker about. In order to generalize it, Quinny899 had to put a few custom parameters in the Ambient Music Mod codebase.
You can tweak the music recognition period and buffer, force the identification routine to run on the little CPU cores, adjust the gain, and much more. This is something that greatly improves compatibility. For example, I had to choose the alternate encoding (available since the v2.0.2 release) on the Redmi 5, otherwise, it couldn’t detect the ambient music due to distortion. The mod also allows you to backup your custom settings and restore them afterward.
Conclusion
The Now Playing feature was never pushed to AOSP, so Kieron had to reverse engineer and go through tons of challenges to make it available for non-Google devices. He detailed the process in his blog. Give it a read if you are curious to know about everything behind the scenes.
Head to the GitHub link for the codebase and more information on how the mod works. You can also participate in the discussion, report a bug, or request a new feature by posting in the forum thread linked below.
XDA