[АКТУАЛИЗИРАНО] Функцията „Now Playing“ на Google Pixel 2 използва AmbientSense за минимизиране на разхода на батерията

Новата функция за разпознаване на музика „Now Playing“ на Google Pixel 2 е базирана на технология, наречена AmbientSense, която обещава минимално изтощаване на батерията.

АКТУАЛИЗАЦИЯ 16.10.2017 г.: Google се свърза с нас, за да ни информира, че „Now Playing“ не е базиран на AmbientSense. Ние отговорихме на запитване за повече информация относно тази функция и ще актуализираме тази статия с техния отговор.

АКТУАЛИЗАЦИЯ 19.10.2017 г.: Научихме повече подробности за това как работи Now Playing. Моля те прочетете тази последваща статия за повече информация.


The Google Pixel 2 и Pixel 2 XL са официални след много месеци на изтичане на информация. Една от по-интересните (и противоречиви) функции е „Now Playing“, която открива музика, която се възпроизвежда във фонов режим, и ви показва какво се възпроизвежда на заключения екран. За първи път чухме за тази функция няколко седмици преди старта, но нямахме много информация за функцията, освен че Google ни каза, че може да работи офлайн, без да изпраща данни в облака (последното е особено важно в светлината на

скорошни разкрития относно Google Home Mini). След като се заровихме във функцията Now Playing, открихме, че функцията е базирана на дългогодишна технология, наречена AmbientSense което обещава минимално изтощаване на батерията.

Функцията Now Playing на Google Pixel 2

За първи път ни съобщиха за това, когато анализирахме приложението Pixel Ambient Services, което е достъпно в Google Play Store.

Но не самото приложение ни накара да разберем за връзката AmbientSense. Вместо това, това беше името на APK, предварително инсталиран в /system/priv-app на Google Pixel 2. Наречен AmbientSense, APK съответства на името на технология, описана в изследователска статия, представена на Международната конференция на IEEE за всеобхватни компютри и комуникации през 2013 г. Семинари от изследователи М. Роси, С. Фийз, О. Амфт, Н. Брауне, С. Мартис и Г. Трьостер.

Какво е AmbientSense и каква е връзката му с „Now Playing?“

Намерихме уеб страница, която показва първата страница на този документ тук. Според резюмето на статията AmbientSense е "система за разпознаване на околен звук в реално време на смартфон." Най-интересното за AmbientSense е, че може да се реализира като приложение за Android и се нуждае само от достъп до микрофона на устройството, за да анализира околните звуци.

Има два режима на обработка, описани в документа: автономен и сървърен режим. Автономната обработка се извършва на смартфона само чрез сравняване на аудио проби с локално съхранена база данни. За сравнение, сървърният режим изпраща аудио функции към сървър, който след това изпраща обратно резултатите от класификацията. Ясно е, че функцията „Now Playing“ на Google изпълнява AmbientSense в „автономен“ режим, тъй като може да работи офлайн, без да изпраща нищо на Google.

Документът продължава с описание как екипът от изследователи тества производителността на разпознаване, времето на изпълнение, натоварването на процесора, и забавяне на разпознаването както при автономно, така и при разпознаване в сървърен режим в набор от 23 класа на околния звук. Те установиха, че приложението AmbientSense работи до 13,75 часа на Samsung Galaxy SII и до 12,87 часа на Google Nexus One. Имайте предвид колко са стари тези устройства; Google Nexus One беше пуснат през 2010 г. с батерия от 1400 mAh и е динозавър в сравнение с Pixel 2. Можем само да си представим колко AmbientSense е усъвършенстван чрез тестовете на Google.

Възможно ли е пренасяне на функцията Now Playing на телефони Pixel 2, различни от Google?

Все още не мога да обещая, но аз мисля, че е възможно. Ние работим с XDA Recognized Contributor Куини899 за да се случи. За да може функцията Now Playing да работи на първото поколение смартфони Google Pixel/Nexus, има няколко неща, които според нас са необходими:

  • Pixel Ambient Services (AmbientSense.apk)
  • База данни за аудио съвпадение
  • Някои липсващи библиотеки
  • SystemUI модификации на околния дисплей
  • Основен достъп (за изпращане на горните файлове към /system)

Кредит за екранни снимки: Kieron Quinn (Quinny899)

В момента вече разполагаме с база данни за съвпадение на аудио, наречена "matcher.leveldb." Това е 53MB библиотека за съхранение, базирана на тази на Google LevelDB. Това е базата данни, на която AmbientSense разчита, за да направи съпоставяне на аудио в автономен режим.

Що се отнася до библиотеките, ние знаем как се наричат ​​и къде да ги търсим, но ще отнеме известно време, преди да можем да се сдобием с Pixel 2, за да го извлечем.

И накрая, SystemUI трябва да бъде променен, защото функцията „Сега се играе“ записва текст в околната среда дисплей—нещо, което в момента не е възможно при функцията за околния дисплей, намерена на първия поколение Pixel.

Що се отнася до това да работи на телефони, които не са на Google, ще го тестваме, след като го накараме да работи на телефоните Google Pixel и Nexus. Ако или когато направим пробив в работата на тази функция, първото място, което ще научите за нея, е порталът XDA — така че следете за още!