[OPPDATERT] Google Pixel 2s "Spiller nå"-funksjonen bruker AmbientSense for å minimere batteritømming

click fraud protection

Google Pixel 2s nye "Now Playing" musikkgjenkjenningsfunksjon er basert på teknologi kalt AmbientSense, som lover minimalt med batteriforbruk.

OPPDATERING 16.10.2017: Google har kontaktet oss for å informere oss om at «Spilles nå» er ikke basert på AmbientSense. Vi har svart på spørsmål om mer informasjon om denne funksjonen og vil oppdatere denne artikkelen med deres svar.

OPPDATERING 19.10.2017: Vi har lært flere detaljer om hvordan Nå spiller fungerer. Vær så snill les denne oppfølgingsartikkelen for flere detaljer.


De Google Pixel 2 og Pixel 2 XL er offisielle etter mange måneder med lekkasjer. En av de mer interessante (og kontroversielle) funksjonene er "Now Playing", som oppdager musikk som spilles i bakgrunnen og viser deg hva som spilles på låseskjermen. Vi hørte først om denne funksjonen noen uker før lansering, men vi hadde ikke mye informasjon om funksjonen bortsett fra at Google fortalte oss at den kan fungere offline uten å sende noen data til skyen (sistnevnte er spesielt viktig i lys av

nylige avsløringer om Google Home Mini). Etter å ha gravd i Spilles nå-funksjonen, har vi oppdaget at funksjonen er basert på årgammel teknologi kalt AmbientSense som lover minimalt batteriforbruk.

Google Pixel 2s nå-funksjon

Vi ble først tipset om dette da vi analyserte Pixel Ambient Services-applikasjonen, som er tilgjengelig i Google Play Store.

Men det var ikke selve appen som gjorde oss oppmerksomme på AmbientSense-forbindelsen. I stedet var det navnet på APK-en som var forhåndsinstallert i /system/priv-app på Google Pixel 2. Kalt AmbientSense, samsvarer APK-en med navnet på en teknologi beskrevet i en forskningsartikkel presentert på 2013 IEEE International Conference on Pervasive Computing and Communications Workshops av forskere M. Rossi, S. Avgift, O. Amft, N. Braune, S. Martis og G. Tröster.

Hva er AmbientSense og hvordan forholder det seg til "Spiller nå?"

Vi fant en nettside som viser den første siden i denne artikkelen her. I følge papirets abstrakt er AmbientSense en "sanntids omgivelseslydgjenkjenningssystem på en smarttelefon." Det som er mest interessant med AmbientSense er at den kan implementeres som en Android-app og trenger bare tilgang til enhetens mikrofon for å analysere omgivelseslyder.

Det er to behandlingsmoduser beskrevet i artikkelen: autonome og servermodus. Autonom prosessering skjer på smarttelefonen bare ved å sammenligne lydprøver mot en lokalt lagret database. Til sammenligning sender servermodus lydfunksjoner til en server som deretter sender klassifiseringsresultater tilbake. Det er klart at Googles «Spiller nå»-funksjon kjører AmbientSense i «autonom»-modus, da den kan fungere offline uten å sende noe til Google.

Artikkelen fortsetter med å beskrive hvordan teamet av forskere testet gjenkjenningsytelse, kjøretid, CPU-belastning, og gjenkjenningsforsinkelse under både autonom og servermodusgjenkjenning i et sett med 23 omgivelseslydklasser. De fant ut at AmbientSense-appen kjørte i opptil 13,75 timer på en Samsung Galaxy SII og opptil 12,87 timer på Google Nexus One. Husk hvor gamle disse enhetene er; Google Nexus One ble utgitt i 2010 med et 1400 mAh batteri og er en dinosaur sammenlignet med Pixel 2. Vi kan bare forestille oss hvor mye AmbientSense har blitt foredlet gjennom Googles testing.

Er det mulig å portere funksjonen som spilles nå på ikke-Google Pixel 2-telefoner?

Jeg kan ikke love noe ennå, men jeg tror det er mulig. Vi jobber med XDA Recognized Contributor Quinny899 for å få det til. For å få Spilles nå-funksjonen til å fungere på den første generasjonen Google Pixel/Nexus-smarttelefoner, er det et par ting vi tror er nødvendige:

  • Pixel Ambient Services (AmbientSense.apk)
  • Audio Matching database
  • Noen manglende biblioteker
  • SystemUI-modifikasjoner til omgivelsesskjerm
  • Rottilgang (for å skyve filene ovenfor til /system)

Kreditt for skjermbilder: Kieron Quinn (Quinny899)

Vi har for øyeblikket allerede lydtilpasningsdatabasen i vår besittelse, kalt "matcher.leveldb." Det er et 53 MB lagringsbibliotek basert på Googles NivåDB. Dette er databasen som AmbientSense er avhengig av for å gjøre lydmatching i autonom modus.

Når det gjelder bibliotekene, vet vi hva de heter og hvor vi skal lete etter dem, men det vil ta litt tid før vi kan få tak i en Pixel 2 for å trekke den ut.

Til slutt må SystemUI modifiseres fordi "Spiller nå"-funksjonen skriver tekst til ambient display—noe som for øyeblikket ikke er mulig på ambient display-funksjonen som ble funnet på den første generasjon Pixel.

Når det gjelder å få dette til å fungere på ikke-Google-telefoner, tester vi det etter at vi får det til å fungere på Google Pixel- og Nexus-telefonene. Hvis eller når vi får et gjennombrudd for å få denne funksjonen til å fungere, er det første stedet du får vite om det XDA-portalen – så følg med for mer!