La nouvelle fonctionnalité de reconnaissance musicale « Now Playing » de Google Pixel 2 est basée sur une technologie appelée AmbientSense, qui promet une consommation minimale de la batterie.
MISE À JOUR 16/10/2017 : Google nous a contacté pour nous informer que le message « Now Playing » n'est pas basé sur AmbientSense. Nous avons répondu en demandant plus d'informations sur cette fonctionnalité et mettrons à jour cet article avec leur réponse.
MISE À JOUR 19/10/2017: Nous avons appris plus de détails sur le fonctionnement de Now Playing. S'il te plaît lire cet article de suivi pour plus de détails.
Le Google Pixel 2 et Pixel 2 XL sont officiels après plusieurs mois de fuites. L'une des fonctionnalités les plus intéressantes (et controversées) est « Now Playing », qui détecte la musique jouée en arrière-plan et vous montre ce qui est joué sur l'écran de verrouillage. Nous avons entendu parler de cette fonctionnalité pour la première fois quelques semaines avant le lancement, mais nous n'avions pas beaucoup d'informations sur la fonctionnalité, à part Google nous disant qu'elle peut fonctionner hors ligne sans envoyer de données vers le cloud (ce dernier est particulièrement important à la lumière de
révélations récentes concernant le Google Home Mini). Après avoir exploré la fonctionnalité Now Playing, nous avons découvert qu'elle est basée sur une technologie vieille de plusieurs années appelée Sens ambiant qui promet décharge minimale de la batterie.Fonctionnalité de lecture en cours de Google Pixel 2
Nous en avons été informés pour la première fois lorsque nous avons analysé l'application Pixel Ambient Services, disponible sur le Google Play Store.
Mais ce n’est pas l’application elle-même qui nous a fait prendre conscience de la connexion AmbientSense. Au lieu de cela, il s'agissait du nom de l'APK préinstallé dans /system/priv-app sur le Google Pixel 2. Appelé AmbientSense, l'APK correspond au nom d'une technologie décrite dans un document de recherche présenté à la Conférence internationale IEEE 2013 sur l'informatique omniprésente et les ateliers de communication organisés par des chercheurs M. Rossi, S. Frais, O. Amft, N. Braune, S. Martis et G. Tröster.
Qu'est-ce qu'AmbientSense et quel est son rapport avec "Now Playing ?"
Nous avons trouvé une page Web qui affiche la première page de cet article ici. Selon le résumé du journal, AmbientSense est un "système de reconnaissance des sons ambiants en temps réel sur smartphone" Ce qui est le plus intéressant avec AmbientSense, c'est qu'il peut être implémenté en tant qu'application Android et n'a besoin que d'un accès au microphone de l'appareil pour analyser les sons ambiants.
Il existe deux modes de traitement décrits dans l'article: autonome et mode serveur. Le traitement autonome s'effectue sur le smartphone uniquement en comparant des échantillons audio à une base de données stockée localement. En comparaison, le mode serveur envoie les fonctionnalités audio à un serveur qui renvoie ensuite les résultats de classification. De toute évidence, la fonctionnalité « Now Playing » de Google exécute AmbientSense en mode « autonome » car elle peut fonctionner hors ligne sans rien envoyer à Google.
L'article décrit ensuite comment l'équipe de chercheurs a testé les performances de reconnaissance, le temps d'exécution, la charge du processeur, et le délai de reconnaissance en mode autonome et en mode serveur dans un ensemble de 23 classes de sons ambiants. Ils ont constaté que l'application AmbientSense fonctionnait jusqu'à 13,75 heures sur un Samsung Galaxy SII et jusqu'à 12,87 heures sur le Google Nexus One. Gardez à l’esprit l’âge de ces appareils; le Google Nexus One est sorti en 2010 avec une batterie de 1 400 mAh et est un dinosaure par rapport au Pixel 2. Nous ne pouvons qu'imaginer à quel point AmbientSense a été affiné grâce aux tests de Google.
Est-il possible de porter la fonctionnalité Now Playing sur des téléphones autres que Google Pixel 2?
Je ne peux pas encore faire de promesses, mais je je pense que c'est possible. Nous travaillons avec un contributeur reconnu XDA Quinny899 pour y arriver. Afin que la fonctionnalité Now Playing fonctionne sur les smartphones Google Pixel/Nexus de première génération, nous pensons que certaines choses sont nécessaires :
- Services ambiants Pixel (AmbientSense.apk)
- Base de données de correspondance audio
- Quelques bibliothèques manquantes
- Modifications de SystemUI à l'affichage ambiant
- Accès root (pour pousser les fichiers ci-dessus vers /system)
Crédit captures d'écran: Kieron Quinn (Quinny899)
Nous disposons actuellement déjà de la base de données de correspondance audio, appelée "matcher.leveldb". Il s'agit d'une bibliothèque de stockage de 53 Mo basée sur celle de Google. NiveauDB. Il s'agit de la base de données sur laquelle s'appuie AmbientSense pour effectuer la correspondance audio en mode autonome.
Quant aux bibliothèques, nous savons comment elles s'appellent et où les chercher, mais il faudra un certain temps avant de pouvoir mettre la main sur un Pixel 2 pour les extraire.
Enfin, SystemUI doit être modifié car la fonctionnalité "Now Playing" écrit du texte dans l'environnement affichage - quelque chose qui n'est actuellement pas possible sur la fonction d'affichage ambiant trouvée sur le premier génération Pixel.
Quant à savoir comment cela fonctionne sur les téléphones non Google, nous le testerons après l'avoir fait fonctionner sur les téléphones Google Pixel et Nexus. Si ou lorsque nous faisons une percée dans le fonctionnement de cette fonctionnalité, le premier endroit où vous en serez informé est le portail XDA, alors restez à l'écoute pour en savoir plus !