[UPDATE] De functie 'Now Playing' van Google Pixel 2 gebruikt AmbientSense om het batterijverbruik te minimaliseren

De nieuwe muziekherkenningsfunctie 'Now Playing' van Google Pixel 2 is gebaseerd op technologie genaamd AmbientSense, die een minimaal batterijverbruik belooft.

UPDATE 16-10-2017: Google heeft contact met ons opgenomen om ons te laten weten dat de 'Now Playing' is niet gebaseerd op AmbientSense. We hebben gereageerd met de vraag om meer informatie over deze functie en zullen dit artikel bijwerken met hun antwoord.

UPDATE 19/10/2017: We hebben meer details geleerd over hoe Now Playing werkt. Alsjeblieft lees dit vervolgartikel voor meer details.


De Google Pixel 2 en Pixel 2 XL zijn officieel na vele maanden van lekken. Een van de interessantere (en controversiëlere) functies is 'Now Playing', dat muziek detecteert die op de achtergrond wordt afgespeeld en laat zien wat er op het vergrendelscherm wordt afgespeeld. We hoorden voor het eerst over deze functie een paar weken voor de lancering, maar we hadden niet veel informatie over de functie, behalve dat Google ons vertelde dat deze offline kan werken zonder gegevens naar de cloud te sturen (dit laatste is vooral belangrijk in het licht van

recente onthullingen over de Google Home Mini). Nadat we ons hadden verdiept in de Now Playing-functie, hebben we ontdekt dat de functie gebaseerd is op een jarenlange technologie genaamd AmbientSense wat belooft minimaal batterijverbruik.

De Now Playing-functie van Google Pixel 2

Hierover werden we voor het eerst getipt toen we de applicatie Pixel Ambient Services analyseerden, die beschikbaar is in de Google Play Store.

Maar het was niet de app zelf die ons bewust maakte van de AmbientSense-verbinding. In plaats daarvan was het de naam van de APK die vooraf was geïnstalleerd in /system/priv-app op de Google Pixel 2. De APK heet AmbientSense en komt overeen met de naam van een technologie die wordt beschreven in een onderzoekspaper gepresenteerd op de IEEE International Conference on Pervasive Computing and Communications Workshops van 2013 door onderzoekers M. Rossi, S. Fee, O. Amft, N. Braun, S. Martis en G. Troster.

Wat is AmbientSense en hoe verhoudt dit zich tot 'Now Playing'?

We hebben een webpagina gevonden waarop de eerste pagina van dit document wordt weergegeven hier. Volgens de samenvatting van het artikel is AmbientSense een "real-time omgevingsgeluidherkenningssysteem op een smartphoneHet meest interessante aan AmbientSense is dat het kan worden geïmplementeerd als een Android-app en alleen toegang tot de microfoon van het apparaat nodig heeft om omgevingsgeluiden te analyseren.

Er worden twee verwerkingsmodi beschreven in het artikel: autonoom En servermodus. Autonome verwerking vindt alleen op de smartphone plaats door audiofragmenten te vergelijken met een lokaal opgeslagen database. Ter vergelijking: de servermodus stuurt audiofuncties naar een server, die vervolgens de classificatieresultaten terugstuurt. Het is duidelijk dat de "Now Playing" -functie van Google AmbientSense in "autonome" modus uitvoert, omdat het offline kan werken zonder iets naar Google te sturen.

Het artikel beschrijft verder hoe het team van onderzoekers de herkenningsprestaties, runtime, CPU-belasting, en herkenningsvertraging bij zowel autonome als servermodusherkenning in een set van 23 omgevingsgeluidsklassen. Ze ontdekten dat de AmbientSense-app tot 13,75 uur draaide op een Samsung Galaxy SII en tot 12,87 uur op de Google Nexus One. Houd er rekening mee hoe oud deze apparaten zijn; de Google Nexus One werd in 2010 uitgebracht met een batterij van 1.400 mAh en is een dinosaurus in vergelijking met de Pixel 2. We kunnen ons alleen maar voorstellen hoeveel AmbientSense is verfijnd door de tests van Google.

Is het mogelijk om de Now Playing-functie over te zetten op niet-Google Pixel 2-telefoons?

Ik kan nog niets beloven, maar ik denk dat het mogelijk is. We werken samen met XDA Recognized Contributor Quinny899 om het te laten gebeuren. Om de Now Playing-functie werkend te krijgen op de eerste generatie Google Pixel/Nexus-smartphones, zijn er volgens ons een paar dingen nodig:

  • Pixel Ambient Services (AmbientSense.apk)
  • Database voor audiomatching
  • Enkele ontbrekende bibliotheken
  • SystemUI-aanpassingen aan omgevingsweergave
  • Root-toegang (om de bovenstaande bestanden naar /system te pushen)

Screenshots tegoed: Kieron Quinn (Quinny899)

We hebben momenteel al de database voor audiomatching in ons bezit, genaamd "matcher.leveldb." Het is een opslagbibliotheek van 53 MB, gebaseerd op die van Google NiveauDB. Dit is de database waarop AmbientSense vertrouwt om audiomatching in de autonome modus uit te voeren.

Wat de bibliotheken betreft, we weten hoe ze heten en waar we ze moeten zoeken, maar het zal enige tijd duren voordat we een Pixel 2 in handen kunnen krijgen om deze eruit te halen.

Ten slotte moet SystemUI worden aangepast omdat de functie "Now Playing" tekst naar ambient schrijft display - iets wat momenteel niet mogelijk is met de omgevingsdisplayfunctie die je op de eerste vindt generatie Pixel.

Wat betreft het werkend krijgen op niet-Google-telefoons, zullen we dat testen nadat we het werkend hebben gekregen op de Google Pixel- en Nexus-telefoons. Als of wanneer we een doorbraak bereiken om deze functie werkend te krijgen, is de XDA Portal de eerste plaats waar u hiervan op de hoogte zult zijn, dus houd ons in de gaten voor meer informatie!