[POSODOBLJENO] Funkcija "Zdaj se predvaja" Google Pixel 2 uporablja AmbientSense za zmanjšanje porabe baterije

Nova funkcija prepoznavanja glasbe "Zdaj se predvaja" Google Pixel 2 temelji na tehnologiji, imenovani AmbientSense, ki obljublja minimalno porabo baterije.

POSODOBITEV 16.10.2017: Google se je obrnil na nas, da bi nas obvestil, da je »Zdaj se predvaja« ne temelji na AmbientSense. Odgovorili smo na vprašanje za več informacij o tej funkciji in bomo ta članek posodobili z njihovim odgovorom.

POSODOBITEV 19. 10. 2017: Izvedeli smo več podrobnosti o delovanju funkcije Now Playing. prosim preberite ta nadaljnji članek za več podrobnosti.


The Google Pixel 2 in Pixel 2 XL so uradni po več mesecih uhajanja informacij. Ena bolj zanimivih (in kontroverznih) funkcij je »Now Playing«, ki zazna glasbo, ki se predvaja v ozadju, in vam pokaže, kaj se predvaja na zaklenjenem zaslonu. Prvič smo slišali za to funkcijo nekaj tednov pred lansiranjem, vendar nismo imeli veliko informacij o funkciji, razen tega, da nam je Google povedal, da lahko deluje brez povezave brez pošiljanja podatkov v oblak (slednje je še posebej pomembno v luči

nedavna razkritja v zvezi z Google Home Mini). Ko smo se poglobili v funkcijo Now Playing, smo odkrili, da funkcija temelji na leta stari tehnologiji, imenovani AmbientSense ki obljublja minimalno praznjenje baterije.

Funkcija Now Playing za Google Pixel 2

Na to so nam prvič namigovali, ko smo analizirali aplikacijo Pixel Ambient Services, ki je na voljo v trgovini Google Play.

Vendar ni bila aplikacija sama tista, ki nas je opozorila na povezavo AmbientSense. Namesto tega je bilo ime APK-ja, vnaprej nameščenega v /system/priv-app na Google Pixel 2. APK, imenovan AmbientSense, se ujema z imenom tehnologije, opisane v raziskovalnem članku, predstavljenem na mednarodna konferenca IEEE 2013 o prodornem računalništvu in komunikacijah, delavnice raziskovalcev M. Rossi, S. Feese, O. Amft, N. Braune, S. Martis in G. Tröster.

Kaj je AmbientSense in kako je povezan z "Now Playing?"

Našli smo spletno stran, ki prikazuje prvo stran tega dokumenta tukaj. Glede na povzetek prispevka je AmbientSense "sistem za prepoznavanje ambientalnih zvokov v pametnem telefonu v realnem času." Pri AmbientSense je najbolj zanimivo to, da ga je mogoče implementirati kot aplikacijo za Android in potrebuje samo dostop do mikrofona naprave za analizo zvokov iz okolja.

V članku sta opisana dva načina obdelave: avtonomna in strežniški način. Avtonomna obdelava poteka na pametnem telefonu samo s primerjavo zvočnih vzorcev z lokalno shranjeno bazo podatkov. Za primerjavo, strežniški način pošlje zvočne funkcije strežniku, ki nato pošlje rezultate klasifikacije nazaj. Jasno je, da Googlova funkcija »Zdaj se predvaja« izvaja AmbientSense v »avtonomnem« načinu, saj lahko deluje brez povezave, ne da bi karkoli poslala Googlu.

Članek nadaljuje z opisom, kako je skupina raziskovalcev testirala zmogljivost prepoznavanja, čas izvajanja, obremenitev procesorja, in zakasnitev prepoznavanja pri prepoznavanju avtonomnega in strežniškega načina v nizu 23 razredov zvoka iz okolja. Ugotovili so, da je aplikacija AmbientSense delovala do 13,75 ure na Samsung Galaxy SII in do 12,87 ure na Google Nexus One. Upoštevajte, koliko so te naprave stare; Google Nexus One je bil izdan leta 2010 z baterijo 1400 mAh in je dinozaver v primerjavi s Pixel 2. Lahko si samo predstavljamo, koliko je bil AmbientSense izpopolnjen z Googlovim testiranjem.

Ali je mogoče funkcijo Now Playing prenesti na telefone Pixel 2, ki niso Google?

Ne morem še obljubiti, ampak jaz misli, da je možno. Sodelujemo s priznanim sodelavcem XDA Quinny899 da se to zgodi. Da bi funkcija Now Playing delovala na prvi generaciji pametnih telefonov Google Pixel/Nexus, je po našem mnenju potrebnih nekaj stvari:

  • Pixel Ambient Services (AmbientSense.apk)
  • Baza podatkov o ujemanju zvoka
  • Nekaj ​​manjkajočih knjižnic
  • Spremembe SystemUI za ambientalni zaslon
  • Korenski dostop (za potiskanje zgornjih datotek v /system)

Zasluge za posnetke zaslona: Kieron Quinn (Quinny899)

Trenutno že imamo v lasti bazo podatkov za ujemanje zvoka, imenovano "matcher.leveldb." To je 53 MB knjižnica za shranjevanje, ki temelji na Googlovi LevelDB. To je zbirka podatkov, na katero se opira AmbientSense za ujemanje zvoka v avtonomnem načinu.

Kar zadeva knjižnice, vemo, kako se imenujejo in kje jih iskati, vendar bo trajalo nekaj časa, preden bomo lahko dobili v roke Pixel 2, da ga ekstrahiramo.

Končno je treba spremeniti SystemUI, ker funkcija »Zdaj se predvaja« piše besedilo v ambient zaslon—nekaj, kar trenutno ni mogoče pri funkciji ambientalnega zaslona, ​​ki je na prvem generacije Pixel.

Kar zadeva delovanje tega na telefonih, ki niso Googlovi, bomo to preizkusili, ko bomo vzpostavili delovanje na telefonih Google Pixel in Nexus. Če ali ko bomo naredili preboj pri zagotavljanju delovanja te funkcije, boste o njej najprej izvedeli portal XDA – zato nas spremljajte za več!