Google Pixel 2s nye "Now Playing" musikgenkendelsesfunktion er baseret på teknologi kaldet AmbientSense, som lover minimalt batteriforbrug.
OPDATERING 16/10/2017: Google har kontaktet os for at informere os om, at "Spilles nu" er ikke baseret på AmbientSense. Vi har svaret forespørgsel efter mere information om denne funktion og vil opdatere denne artikel med deres svar.
OPDATERING 19/10/2017: Vi har lært flere detaljer om, hvordan Now Playing fungerer. Vær venlig læs denne opfølgende artikel for flere detaljer.
Det Google Pixel 2 og Pixel 2 XL er officielle efter mange måneders lækager. En af de mere interessante (og kontroversielle) funktioner er "Now Playing", som registrerer musik, der spilles i baggrunden og viser dig, hvad der afspilles på låseskærmen. Vi hørte først om denne funktion et par uger før lancering, men vi havde ikke meget information om funktionen udover at Google fortalte os, at den kan fungere offline uden at sende nogen data til skyen (sidstnævnte er især vigtigt i lyset af
seneste afsløringer vedrørende Google Home Mini). Efter at have gravet i funktionen Now Playing, har vi opdaget, at funktionen er baseret på år gammel teknologi kaldet AmbientSense som lover minimal batteridræning.Google Pixel 2's Now Playing-funktion
Vi blev først tippet om dette, da vi analyserede Pixel Ambient Services-applikationen, som er tilgængelig i Google Play Butik.
Men det var ikke selve appen, der gjorde os opmærksomme på AmbientSense-forbindelsen. I stedet var det navnet på APK'en, der var forudinstalleret i /system/priv-app på Google Pixel 2. Kaldet AmbientSense, APK'en matcher navnet på en teknologi, der er beskrevet i et forskningspapir præsenteret på 2013 IEEE International Conference on Pervasive Computing and Communications Workshops af forskere M. Rossi, S. Gebyr, O. Amft, N. Braune, S. Martis og G. Tröster.
Hvad er AmbientSense, og hvordan hænger det sammen med "Spiller nu?"
Vi fandt en webside, der viser den første side af dette papir her. Ifølge papirets abstrakt er AmbientSense en "real-time omgivende lydgenkendelsessystem på en smartphone." Det mest interessante ved AmbientSense er, at det kan implementeres som en Android-app og kun behøver adgang til enhedens mikrofon for at analysere omgivende lyde.
Der er to behandlingstilstande beskrevet i papiret: autonom og servertilstand. Autonom behandling sker kun på smartphonen ved at sammenligne lydprøver med en lokalt lagret database. Til sammenligning sender servertilstand lydfunktioner til en server, som derefter sender klassificeringsresultater tilbage. Det er klart, at Googles "Now Playing"-funktion kører AmbientSense i "autonom"-tilstand, da den kan arbejde offline uden at sende noget til Google.
Artiklen fortsætter med at beskrive, hvordan teamet af forskere testede genkendelsesydeevne, runtime, CPU-belastning, og genkendelsesforsinkelse under både autonom og server-mode-genkendelse i et sæt af 23 omgivende lydklasser. De fandt ud af, at AmbientSense-appen kørte i op til 13,75 timer på en Samsung Galaxy SII og op til 12,87 timer på Google Nexus One. Husk, hvor gamle disse enheder er; Google Nexus One blev udgivet i 2010 med et 1.400 mAh batteri og er en dinosaur i forhold til Pixel 2. Vi kan kun forestille os, hvor meget AmbientSense er blevet forfinet gennem Googles test.
Er det muligt at portere funktionen Spiller nu på ikke-Google Pixel 2-telefoner?
Jeg kan ikke love noget endnu, men jeg tror det er muligt. Vi arbejder med XDA Recognized Contributor Quinny899 at få det til at ske. For at få funktionen Now Playing til at fungere på den første generation af Google Pixel/Nexus-smartphones, er der et par ting, som vi mener er nødvendige:
- Pixel Ambient Services (AmbientSense.apk)
- Audio Matching database
- Nogle manglende biblioteker
- SystemUI-ændringer til omgivende visning
- Rodadgang (for at skubbe ovenstående filer til /system)
Skærmbilleder kredit: Kieron Quinn (Quinny899)
Vi har i øjeblikket allerede audio-matching-databasen i vores besiddelse, kaldet "matcher.leveldb." Det er et 53 MB lagerbibliotek baseret på Googles NiveauDB. Dette er databasen, som AmbientSense er afhængig af til at lave lydmatching i autonom tilstand.
Hvad angår bibliotekerne, ved vi, hvad de hedder, og hvor vi skal lede efter dem, men det vil tage noget tid, før vi kan få fingrene i en Pixel 2 for at udtrække den.
Endelig skal SystemUI ændres, fordi "Now Playing"-funktionen skriver tekst til ambient display—noget, der i øjeblikket ikke er muligt på den omgivende displayfunktion, der findes på den første generation Pixel.
Med hensyn til at få dette til at virke på ikke-Google-telefoner, tester vi det, når vi har fået det til at fungere på Google Pixel- og Nexus-telefonerne. Hvis eller når vi får et gennembrud for at få denne funktion til at fungere, er det første sted, du ved om det, XDA-portalen – så følg med for mere!