![Как поставить умный определитель музыки из Pixel на любой Android-смартфон](http://static.rozetked.me/imager/main/uploads/tR/tRTDuBvIy3ww.webp?3)
Одна из гениальных фишек смартфонов Google Pixel — Now Playing («Что сейчас играет?»). Функция подсказывает названия треков, которые играют поблизости — в кафе, из проезжающей мимо машины и так далее. С Now Playing не придётся каждый раз запускать Shazam, а ещё мучительно вспоминать слова из услышанной на днях мелодии, ведь сервис сохраняет историю распознаваний.
Официально функция доступна только на смартфонах Google Pixel и полагается на системную службу Android System Intelligence (далее — ASI), которая обеспечивает локальное вычисление «умных» функций вроде «Живые субтитры».
Но разработчику Кирону Куинну удалось модифицировать ASI и активировать Now Playing на любом смартфоне под управлением Android 9 или более свежей версии операционной системы. Для Android 12 и выше есть удобный способ активации через инструмент Shizuku — мы рассказывали о нём в отдельном материале. А для более старых версий системы требуется наличие прав суперпользователя (root). В этой инструкции рассматривается вариант с установкой сервиса через Shizuku.
Утилита Куинна получила название Ambient Music Mod (далее — AMM). На самом деле в ней даже больше возможностей, чем в оригинальной функции от Google.
Что умеет Ambient Music Mod
Приложение базируется на модифицированной версии Android System Intelligence, поэтому все вычисления для анализа и поиска музыки происходят прямо на устройстве. При работе сервиса система даже не показывает индикатор активного микрофона.
Google утверждает, что не получает никаких данных во время работы ASI. Кроме того, Куинн выложил код модификации ASI и самого AMM в открытый доступ, так что любой желающий может проанализировать содержимое инструментов на отслеживающие и вредоносные компоненты.
Интерфейс Ambient Music Mod не переведён на русский язык.
По умолчанию сервис прослушивает композиции в фоновом режиме: при успешном распознавании появляется уведомление с названием трека и его исполнителем. В приложении также доступна история распознанных треков (раздел Now Playing History), к которой можно вернуться в любой момент. Раздел с историей можно вынести на рабочий стол в виде ярлыка.
Ещё удобно, когда название распознанного трека появляется на экране блокировки — ровно так Now Playing работает на Pixel. В AMM такая фишка тоже есть — настройка происходит в разделе Lock Screen. Для отображения контента на экране блокировки потребуется выдать доступ к специальным возможностям ОС.
Можно активировать и принудительное распознавание по нажатию (раздел On Demand), что также есть на смартфонах Google. На некоторых устройствах эта функция работает только при наличии root-прав.
А в разделе Settings («Настройки») есть продвинутые параметры. Например, можно настроить задержку между попытками распознавания (Recognition Period): чем она больше, тем меньше заряда расходует приложение. Ещё можно синхронизировать работу программы с выставленным в смартфоне режимом сна, чтобы не тратить заряд на распознавание в ночной период. В подразделе настроек Advanced также можно принудить AMM использовать только малопроизводительные ядра процессора, отрегулировать усиление аудио для более точного распознавания и так далее.
Приложение позволяет экспортировать настройки для переноса между устройствами или резервного копирования.
Как установить Ambient Music Mod
О том, как установить и активировать Shizuku, вы можете узнать из инструкции выше. А для установки порта Now Playing понадобится сразу два приложения: сам Ambient Music Mod и модификация ASI, которую Куинн назвал Now Playing. А чтобы всё работало офлайн, при первом использовании сервиса потребуется скачать базу композиций объёмом порядка 400 МБ.
Если вы запустили Shizuku, осталось настроить сам сервис определения музыки:
- Перейдите на страницу AMM в GitHub.
- В разделе Assets нажмите по ссылке с файлом формата .apk. Если необходимо, подтвердите действие во всплывающем окне.
- Дождитесь загрузки файла в память смартфона и установите его как обычное приложение. Система может предупредить о запрете установки приложений из неизвестных источников — в таком случае следуйте инструкциям на экране.
- Откройте Ambient Music Mod.
- На стартовом экране предоставьте приложению доступ к Shizuku, нажав на кнопку «Разрешить всегда».
- Далее приложение предложит настроить условия для загрузки и обновления базы композиций. Можно сделать так, чтобы файлы скачивались только при подключении к сети Wi-Fi и во время зарядки. Выставленные параметры должны соответствовать текущим условиям, иначе продолжить первичную настройку приложения не удастся. Нажмите Next.
- Далее выберите регион или оставьте опцию Automatic. От региона зависит база композиций: логично, что в российской базе больше песен от российских исполнителей. Нажмите Next.
- Дождитесь завершения загрузки базы и нажмите на кнопку Install APK, чтобы скачать и установить Now Playing.
- Следуйте инструкциям на экране, чтобы установить Now Playing. Скорее всего, понадобится выдать разрешение на инсталляцию программ из неизвестных источников.
- Сервис попросит два разрешения: на доступ к телефону (чтобы не прослушивать во время звонков) и к микрофону. Нажмите на кнопку Grant Permissions и следуйте инструкциям на экране.
- Далее сервис предложит отключить оптимизацию аккумулятора для этого приложения, чтобы система не «прибивала» его в фоновом режиме. Нажмите на Disable Battery Optimization, а во всплывающем окне нажмите «Разрешить».
- На финальном экране нажмите Close.
Напомню, что без прав суперпользователя Shizuku требуется активировать заново при каждой перезагрузке смартфона.
У Куинна есть ещё одно полезное приложение — Smartspacer. Утилита модифицирует стандартный виджет Pixel Launcher «Самое главное» (At a Glance): его можно обогатить информацией из сторонних источников или вовсе скрыть с экрана. Для работы Smartspacer также необходим Shizuku.