[APP][SHIZUKU][08/04] Ambient Music Mod - Pixel Now Playing port

Search This thread

Quinny899

Recognized Developer / Recognized Contributor
Jan 26, 2011
9,427
8,752
26
Salford, Greater Manchester, UK
quinny898.co.uk
Ambient Music Mod Banner

Ambient Music Mod is a Shizuku/Sui app that ports Now Playing from Pixels to other Android devices.

Requirements​

  • Android device running Android 9.0 or above (11+ recommended).
  • Shizuku (Android 12+) or Sui Magisk module (Android 9+).
    • Shizuku does not require root, instead needing an ADB command or a few button presses to be made every reboot.

Features​

  • 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, Favourites and Summary 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 recognisable songs, and change the database location if your taste does not match your device's locale

Screenshots​

Screenshots

Changelog​

2.3.5 + Now Playing 1.3.5
- Fixed widget related crash that was also causing problems elsewhere
- Fixed service start crash on some devices in some scenarios
- Fixed US database not being loaded correctly in the track viewer

2.3.4 + Now Playing 1.3.3
- Fixed crash when using online recognition with root on some devices
- Android 15 support (for ARM64 only)

2.3.3
- Fixed an issue where old backups would not be deleted
- Automatically grant the Restricted Settings permission required for the Accessibility Service on Android 14+
- Added keyguard category to widget to allow eventual use on the lockscreen when support is hopefully added to Android

2.3.2 + Now Playing 1.3.2
- Fixed screen on recognition not working on some devices
- Fixed externally triggered recognitions not showing on the lock screen
- Updated target SDK to Android 14
- Added support for displaying on the flip display on Samsung devices
- Bug fixes
- Fixed crash when viewing a track in the history on some devices

2.3.1
- Fixed crash on Android 14 Beta 3

2.3
- Android 14 Beta 2 support
- Added option to control Ambient Music Mod externally from apps like Tasker with options:
  • Enable Now Playing
  • Disable Now Playing
  • Toggle Now Playing
  • Start an On Device Recognition
  • Start an Online Recognition (if supported & enabled)
- External Access can be protected by an Access Token which must be provided by the apps interacting with it (enabled by default)
- Updated dependencies
For info on how to use External Access, check the page in the app or the Wiki page

2.2.2
- Fixed On Demand not working via the root method on some devices
- Improved Track Listing info, showing more details on tracks where available and fixing the Ask Google button
- Crash fixes

2.2.1

This is quite a large update, please make sure to update Ambient Music Mod and then Now Playing from the Updates screen after installing

- Enabled Now Playing Summary in the Now Playing History, a new feature that's not even on Pixels yet, which displays statistics about your listening habits including genre, artists, and timings from the last 30 days (configurable down to 1 day up to 365 days)
- NNFPv3 (the updated model) is now enabled on all devices except legacy armv7. Google have switched Pixels over to using it, indicating music databases for the legacy model may stop being updated at some point.
Please note that due to format changes, a database update will be forced after updating, and any saved On Demand recognitions will be removed. This is unavoidable, and Google has already done this on Pixel devices with official Now Playing
- Added experimental option to download extra country databases (up to two)
- Added option to periodically (daily/weekly/monthly) back up to a specified location
- Improved track list viewer speed by caching track info in Ambient Music Mod, rather than loading it from the Now Playing database every time. This will increase the storage footprint of Ambient Music Mod, but you can clear the app's cache if it becomes an issue.
- Added a track info viewer to the track list, displaying all available information for a track on one page, including links to play tracks in the database
- Added option to edit and delete stored On Demand tracks
- Updated database downloader, and implemented a system whereby the system Job Scheduler (which is relied on to schedule downloads) gets told to expedite downloads where possible. This should improve the speed of database downloads.
- Improved Lock Screen detection logic
- Fixed an issue where some switches in the app behaved differently depending on whether the text or the switch handle was pressed
- Fixed an issue where notifications for Now Playing were being re-enabled after being disabled by the user on some devices

nb: Version 2.2.1 fixes a cache issue with 2.2 which may impact updates. For this reason, it has replaced 2.2 and that version has been removed.

2.1.2
- Fixed Restore option not showing any options of files to restore

2.1.1
- Improved adaptive lock screen overlay
- Fixed insets on 3 button devices
- Allow install on x86_64 devices without libhoudini or libndk

2.1
- Added x86_64 support
- Fixed Android 13 Shizuku issue
- Updated switch style
- Removed "run when battery saver enabled" as it was not functioning and cannot be fixed
- Fixed overlay continuing to appear when bedtime mode is enabled
- Added message about static noise to playback screen

2.0.5
- Fixed an issue where on device recognition would not work on some devices using Shizuku

2.0.4
- Added the ability for On Demand recognitions to run without the Magisk overlay module, so long as the device is rooted. You must start Shizuku as root or use Sui to make use of this method, and the overlay is still preferred if it works on your device. Please read the Wiki page for more information.
- Further improvements to the On Demand overlay, fixing issues on OnePlus devices
- Fixed the Lock Screen overlay not appearing when Smart Lock is enabled
- Fixed Alternative Encoding and Lock Screen Overlay colour options not being backed up

2.0.3
- Added armv7 support
- Fixed crashes on Android 10
- Fixed an issue where some tracks were not showing up in the track list or in the track count (US database is actually 69k tracks, not 53k)
- Added an option to change the lockscreen overlay text colour
- The lockscreen overlay text now has a slight shadow, improving visibility
- Added caching for updates, which should prevent rate-limit issues. You can force an update check (ignoring cache) by swiping to refresh.
- Enabled landscape orientation
- Fixed background crashes in Now Playing, which may help download issues.
- Improved Magisk On Demand module overlay installing, which may fix bootloops on some devices

Note: Due to issues with the backend database update system, there have been two database updates in the last two days. This is now fixed, and future updates will be timely rather than all at once. Apologies for any inconvenience.

2.0.2:
- Added alternative encoding option, fixing distortion/crackling on some devices when enabled
IMPORTANT: You must also update Now Playing to 1.0.1 for the alternative encoding option to work. Use the Updates page in the app to update Now Playing.
- Increased max gain to 3.0 to cope with new encoding which requires a higher gain on some devices
- Reduced the chance of audio recording errors
- Removed "Timeout" notification as it was more useless than it was useful
- Fixed unclickable Chips on Recognition Success page (eg. Ask Google)

Installation​

Download the latest APK from the GitHub Releases page and install it. Ambient Music Mod will download and install the latest Now Playing APK for you as part of the setup process.

If you have any questions, please read the FAQ before opening a GitHub issue or replying to the thread.
 
Last edited:

Quinny899

Recognized Developer / Recognized Contributor
Jan 26, 2011
9,427
8,752
26
Salford, Greater Manchester, UK
quinny898.co.uk
App keeps asking to update and there is no update
My bad, forgot to knock the internal version back down after testing the update dialog. I've "updated" the APK on GitHub, it's exactly the same build with the correct internal version, and will install on top :)
 

SkylinesHD

Senior Member
Awesome module! Unfortunately, I couldn't get it working. (SM-A725F - Galaxy A72, Android 11)
When doing the test recognition, it says "Ambient Music failed to start". When I try multiple times, it does actually listen, but when it's done listening, it gives me "No response from Ambient Music".

I paid attention to all the steps and fixes, but none of them worked. Tried with LSPosed and Edxposed. Also tried without whitelist and checked, that ambient services has mic permissions.
 
Last edited:

Quinny899

Recognized Developer / Recognized Contributor
Jan 26, 2011
9,427
8,752
26
Salford, Greater Manchester, UK
quinny898.co.uk
Awesome module! Unfortunately, I couldn't get it working. (SM-A725F - Galaxy A72, Android 11)
When doing the test recognition, it says "Ambient Music failed to start". When I try multiple times, it does actually listen, but when it's done listening, it gives me "No response from Ambient Music".

I paid attention to all the steps and fixes, but none of them worked. Tried with LSPosed and Edxposed. Also tried without whitelist and checked, that ambient services has mic permissions.

Interesting that it's started listening fine but didn't respond at the end, that suggests that maybe the delay time isn't long enough. Try using it as if it were working, see if it picks up music playing as that doesn't have the same delay limit
 
  • Like
Reactions: duttyend

SkylinesHD

Senior Member
Interesting that it's started listening fine but didn't respond at the end, that suggests that maybe the delay time isn't long enough. Try using it as if it were working, see if it picks up music playing as that doesn't have the same delay limit
Tried that, didn't work. Couldn't see any addition on my lockscreen, when playing music. My phone starts lagging when turning off or on, as soon as I enabled the recognition on lockscreen.
 

Quinny899

Recognized Developer / Recognized Contributor
Jan 26, 2011
9,427
8,752
26
Salford, Greater Manchester, UK
quinny898.co.uk
This is the dump I got
Thanks, that's very useful:

Code:
sound_trigger_platform: platform_get_lsm_usecase: No lsm usecase found for exec_mode 0

is in the logs, suggesting it doesn't like the sound_trigger_platform.xml file, specifically the lsm_usecase bit. Unfortunately the current version of the app fails to zip that right when dumping, so could you do the following please:

- Send the current file in /system/vendor/etc/sound_trigger_platform_info.xml
- Disable the Magisk module in the Magisk app, and reboot
- Send the new file in /system/vendor/etc/sound_trigger_platform_info.xml (this should be different to the first, and be original to your device)

I'll then try to figure out if something else may be required to be added on some devices, or if there's a limitation of the 'magic numbers' in the file I took from the Pixels (in which case it will likely sadly never work).

I'll also fix the dump thing so it zips the xml correctly for the next build.

Cheers!
 

SkylinesHD

Senior Member
Thanks, that's very useful:

Code:
sound_trigger_platform: platform_get_lsm_usecase: No lsm usecase found for exec_mode 0

is in the logs, suggesting it doesn't like the sound_trigger_platform.xml file, specifically the lsm_usecase bit. Unfortunately the current version of the app fails to zip that right when dumping, so could you do the following please:

- Send the current file in /system/vendor/etc/sound_trigger_platform_info.xml
- Disable the Magisk module in the Magisk app, and reboot
- Send the new file in /system/vendor/etc/sound_trigger_platform_info.xml (this should be different to the first, and be original to your device)

I'll then try to figure out if something else may be required to be added on some devices, or if there's a limitation of the 'magic numbers' in the file I took from the Pixels (in which case it will likely sadly never work).

I'll also fix the dump thing so it zips the xml correctly for the next build.

Cheers!
Got the files, I hope the issue will be fixable. Good luck!
 

Attachments

  • sound trigger files.zip
    6.3 KB · Views: 227

Quinny899

Recognized Developer / Recognized Contributor
Jan 26, 2011
9,427
8,752
26
Salford, Greater Manchester, UK
quinny898.co.uk
Got the files, I hope the issue will be fixable. Good luck!
Re-enable the module, extract and drop the attached file in /data/adb/modules/AmbientMusicTest/system/vendor/etc/ and reboot, see if that helps

Side note, I really need to change that AmbientMusicTest name
 

Attachments

  • sound_trigger_platform_info.zip
    3.3 KB · Views: 215

SkylinesHD

Senior Member
Re-enable the module, extract and drop the attached file in /data/adb/modules/AmbientMusicTest/system/vendor/etc/ and reboot, see if that helps

Side note, I really need to change that AmbientMusicTest name
Great, this really works! But now I noticed another problem..
The database is loading for ever when I go on Track list, it also cannot recognize any song.
 
Last edited:

Quinny899

Recognized Developer / Recognized Contributor
Jan 26, 2011
9,427
8,752
26
Salford, Greater Manchester, UK
quinny898.co.uk
Great, this really works! But now I noticed another problem..
The database is loading for ever when I go on Track list, it also cannot recognize any song.

It's unlikely to be loading forever, it just takes a long time to load. Leave it for a few minutes and it should load.

Meanwhile, if the module is working now you'll probably want to play with the amplification a bit, test the output with the test playback and fingers crossed it'll start recognising things then.
 

SkylinesHD

Senior Member
It's unlikely to be loading forever, it just takes a long time to load. Leave it for a few minutes and it should load.

Meanwhile, if the module is working now you'll probably want to play with the amplification a bit, test the output with the test playback and fingers crossed it'll start recognising things then.
The output is perfect, I left it loading for about ~2-3 mins., I'll try again. Hopefully it'll work.
 

Quinny899

Recognized Developer / Recognized Contributor
Jan 26, 2011
9,427
8,752
26
Salford, Greater Manchester, UK
quinny898.co.uk
The output is perfect, I left it loading for about ~2-3 mins., I'll try again. Hopefully it'll work.
If it still doesn't load after like 5 minutes (there's also a progress bar that should show progress) after restarting the app, what region are you in? I've previously tested the database parsing with en_GB and en_US and it was working fine but maybe it's broken for another one
 

SkylinesHD

Senior Member
If it still doesn't load after like 5 minutes (there's also a progress bar that should show progress) after restarting the app, what region are you in? I've previously tested the database parsing with en_GB and en_US and it was working fine but maybe it's broken for another one
I'm located in germany (probably something like de_DE)
There is a progress bar, but it doesn't show me a progess. It's just like.. loading
 

McFlypants

Senior Member
Mar 22, 2013
438
162
Xiaomi 12
On miui 12.5 I think my Problem is that I can't grant the App access to the microphone.
 

Attachments

  • IMG_20210414_233430.jpg
    IMG_20210414_233430.jpg
    202.5 KB · Views: 898
  • IMG_20210414_233447.jpg
    IMG_20210414_233447.jpg
    193.1 KB · Views: 899
  • IMG_20210414_233455.jpg
    IMG_20210414_233455.jpg
    203.9 KB · Views: 904

Quinny899

Recognized Developer / Recognized Contributor
Jan 26, 2011
9,427
8,752
26
Salford, Greater Manchester, UK
quinny898.co.uk
On miui 12.5 I think my Problem is that I can't grant the App access to the microphone.

Tap the microphone prompt in Ambient Music, you have to grant it manually via the app info (not sure why Google didn't just implement a prompt like everyone else does). I have also found that sometimes when you've just granted it access it doesn't immediately respond to test recognition, if you find it still sits loading after that then kill Ambient Music via the recents, reopen it via Ambient Music Mod, return to Ambient Music Mod and try running the recognition again.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 30
    Ambient Music Mod Banner

    Ambient Music Mod is a Shizuku/Sui app that ports Now Playing from Pixels to other Android devices.

    Requirements​

    • Android device running Android 9.0 or above (11+ recommended).
    • Shizuku (Android 12+) or Sui Magisk module (Android 9+).
      • Shizuku does not require root, instead needing an ADB command or a few button presses to be made every reboot.

    Features​

    • 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, Favourites and Summary 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 recognisable songs, and change the database location if your taste does not match your device's locale

    Screenshots​

    Screenshots

    Changelog​

    2.3.5 + Now Playing 1.3.5
    - Fixed widget related crash that was also causing problems elsewhere
    - Fixed service start crash on some devices in some scenarios
    - Fixed US database not being loaded correctly in the track viewer

    2.3.4 + Now Playing 1.3.3
    - Fixed crash when using online recognition with root on some devices
    - Android 15 support (for ARM64 only)

    2.3.3
    - Fixed an issue where old backups would not be deleted
    - Automatically grant the Restricted Settings permission required for the Accessibility Service on Android 14+
    - Added keyguard category to widget to allow eventual use on the lockscreen when support is hopefully added to Android

    2.3.2 + Now Playing 1.3.2
    - Fixed screen on recognition not working on some devices
    - Fixed externally triggered recognitions not showing on the lock screen
    - Updated target SDK to Android 14
    - Added support for displaying on the flip display on Samsung devices
    - Bug fixes
    - Fixed crash when viewing a track in the history on some devices

    2.3.1
    - Fixed crash on Android 14 Beta 3

    2.3
    - Android 14 Beta 2 support
    - Added option to control Ambient Music Mod externally from apps like Tasker with options:
    • Enable Now Playing
    • Disable Now Playing
    • Toggle Now Playing
    • Start an On Device Recognition
    • Start an Online Recognition (if supported & enabled)
    - External Access can be protected by an Access Token which must be provided by the apps interacting with it (enabled by default)
    - Updated dependencies
    For info on how to use External Access, check the page in the app or the Wiki page

    2.2.2
    - Fixed On Demand not working via the root method on some devices
    - Improved Track Listing info, showing more details on tracks where available and fixing the Ask Google button
    - Crash fixes

    2.2.1

    This is quite a large update, please make sure to update Ambient Music Mod and then Now Playing from the Updates screen after installing

    - Enabled Now Playing Summary in the Now Playing History, a new feature that's not even on Pixels yet, which displays statistics about your listening habits including genre, artists, and timings from the last 30 days (configurable down to 1 day up to 365 days)
    - NNFPv3 (the updated model) is now enabled on all devices except legacy armv7. Google have switched Pixels over to using it, indicating music databases for the legacy model may stop being updated at some point.
    Please note that due to format changes, a database update will be forced after updating, and any saved On Demand recognitions will be removed. This is unavoidable, and Google has already done this on Pixel devices with official Now Playing
    - Added experimental option to download extra country databases (up to two)
    - Added option to periodically (daily/weekly/monthly) back up to a specified location
    - Improved track list viewer speed by caching track info in Ambient Music Mod, rather than loading it from the Now Playing database every time. This will increase the storage footprint of Ambient Music Mod, but you can clear the app's cache if it becomes an issue.
    - Added a track info viewer to the track list, displaying all available information for a track on one page, including links to play tracks in the database
    - Added option to edit and delete stored On Demand tracks
    - Updated database downloader, and implemented a system whereby the system Job Scheduler (which is relied on to schedule downloads) gets told to expedite downloads where possible. This should improve the speed of database downloads.
    - Improved Lock Screen detection logic
    - Fixed an issue where some switches in the app behaved differently depending on whether the text or the switch handle was pressed
    - Fixed an issue where notifications for Now Playing were being re-enabled after being disabled by the user on some devices

    nb: Version 2.2.1 fixes a cache issue with 2.2 which may impact updates. For this reason, it has replaced 2.2 and that version has been removed.

    2.1.2
    - Fixed Restore option not showing any options of files to restore

    2.1.1
    - Improved adaptive lock screen overlay
    - Fixed insets on 3 button devices
    - Allow install on x86_64 devices without libhoudini or libndk

    2.1
    - Added x86_64 support
    - Fixed Android 13 Shizuku issue
    - Updated switch style
    - Removed "run when battery saver enabled" as it was not functioning and cannot be fixed
    - Fixed overlay continuing to appear when bedtime mode is enabled
    - Added message about static noise to playback screen

    2.0.5
    - Fixed an issue where on device recognition would not work on some devices using Shizuku

    2.0.4
    - Added the ability for On Demand recognitions to run without the Magisk overlay module, so long as the device is rooted. You must start Shizuku as root or use Sui to make use of this method, and the overlay is still preferred if it works on your device. Please read the Wiki page for more information.
    - Further improvements to the On Demand overlay, fixing issues on OnePlus devices
    - Fixed the Lock Screen overlay not appearing when Smart Lock is enabled
    - Fixed Alternative Encoding and Lock Screen Overlay colour options not being backed up

    2.0.3
    - Added armv7 support
    - Fixed crashes on Android 10
    - Fixed an issue where some tracks were not showing up in the track list or in the track count (US database is actually 69k tracks, not 53k)
    - Added an option to change the lockscreen overlay text colour
    - The lockscreen overlay text now has a slight shadow, improving visibility
    - Added caching for updates, which should prevent rate-limit issues. You can force an update check (ignoring cache) by swiping to refresh.
    - Enabled landscape orientation
    - Fixed background crashes in Now Playing, which may help download issues.
    - Improved Magisk On Demand module overlay installing, which may fix bootloops on some devices

    Note: Due to issues with the backend database update system, there have been two database updates in the last two days. This is now fixed, and future updates will be timely rather than all at once. Apologies for any inconvenience.

    2.0.2:
    - Added alternative encoding option, fixing distortion/crackling on some devices when enabled
    IMPORTANT: You must also update Now Playing to 1.0.1 for the alternative encoding option to work. Use the Updates page in the app to update Now Playing.
    - Increased max gain to 3.0 to cope with new encoding which requires a higher gain on some devices
    - Reduced the chance of audio recording errors
    - Removed "Timeout" notification as it was more useless than it was useful
    - Fixed unclickable Chips on Recognition Success page (eg. Ask Google)

    Installation​

    Download the latest APK from the GitHub Releases page and install it. Ambient Music Mod will download and install the latest Now Playing APK for you as part of the setup process.

    If you have any questions, please read the FAQ before opening a GitHub issue or replying to the thread.
    5
    Isn't android 12 OOS update been out for some time now? Which device the dev is using?
    7T Pro. It's in closed beta.

    I gave up waiting because it's ridiculous how long it's taken and am working on 12 support using an AOSP ROM.
    5
    Ambient Music Mod v2.2.1 + Now Playing v1.2 are now available, and it's a big one

    Changelog said:
    This is quite a large update, please make sure to update Ambient Music Mod and then Now Playing from the Updates screen after installing

    - Enabled Now Playing Summary in the Now Playing History, a new feature that's not even on Pixels yet, which displays statistics about your listening habits including genre, artists, and timings from the last 30 days (configurable down to 1 day up to 365 days)
    - NNFPv3 (the updated model) is now enabled on all devices except legacy armv7. Google have switched Pixels over to using it, indicating music databases for the legacy model may stop being updated at some point.
    Please note that due to format changes, a database update will be forced after updating, and any saved On Demand recognitions will be removed. This is unavoidable, and Google has already done this on Pixel devices with official Now Playing
    - Added experimental option to download extra country databases (up to two)
    - Added option to periodically (daily/weekly/monthly) back up to a specified location
    - Improved track list viewer speed by caching track info in Ambient Music Mod, rather than loading it from the Now Playing database every time. This will increase the storage footprint of Ambient Music Mod, but you can clear the app's cache if it becomes an issue.
    - Added a track info viewer to the track list, displaying all available information for a track on one page, including links to play tracks in the database
    - Added option to edit and delete stored On Demand tracks
    - Updated database downloader, and implemented a system whereby the system Job Scheduler (which is relied on to schedule downloads) gets told to expedite downloads where possible. This should improve the speed of database downloads.
    - Improved Lock Screen detection logic
    - Fixed an issue where some switches in the app behaved differently depending on whether the text or the switch handle was pressed
    - Fixed an issue where notifications for Now Playing were being re-enabled after being disabled by the user on some devices

    nb: Version 2.2.1 fixes a cache issue with 2.2 which may impact updates. For this reason, it has replaced 2.2 and that version has been removed.

    Download from GitHub releases or via the app's updater as usual
    5
    Ambient Music Mod v2.0.4 & Now Playing v1.0.3 released:

    • Added the ability for On Demand recognitions to run without the Magisk overlay module, so long as the device is rooted. You must start Shizuku as root or use Sui to make use of this method, and the overlay is still preferred if it works on your device. Please read the Wiki page for more information.
    • Further improvements to the On Demand overlay, fixing issues on OnePlus devices
    • Fixed the Lock Screen overlay not appearing when Smart Lock is enabled
    • Fixed Alternative Encoding and Lock Screen Overlay colour options not being backed up
    Download from GitHub releases as usual
    4
    Ambient Music Mod 2.0 is here, with a complete overhaul including dropping the need for an Xposed module, and even root.

    Read more: https://medium.com/@KieronQuinn/now-playing-ambient-music-mod-v2-93cd4042cc11

    Download the latest release from GitHub releases

    Important: If you are upgrading from Ambient Music Mod 1.x, please uninstall the old version completely including the Xposed module and Pixel Ambient Services and reboot before installing this new version.

    -

    I've also asked this thread to be moved since it's no longer a Magisk module
    Moved, thanks Badger50!