Google rend open source le codec audio Lyra, optimisé pour la plateforme Android ARM 64-bit,
pour permettre aux développeurs de maintenir leurs applications

Se connecter à d'autres personnes en ligne par le biais d'appels vocaux et vidéo fait de plus en plus partie de la vie quotidienne. Les frameworks de communication en temps réel qui rendent cela possible dépendent des techniques de compression efficaces, les codecs, pour coder (ou décoder) les signaux à transmettre ou à stocker. Dans le cadre des efforts visant à rendre les meilleurs codecs disponibles universellement, Google a décidé de rendre Lyra open source. Elle permet ainsi à d'autres développeurs d'alimenter leurs applications de communication et de faire évoluer Lyra dans de nouvelles directions. Lyra s'appuie sur le machine learning pour permettre des appels vocaux de haute qualité dans des situations de faible bande passante.

Élément essentiel des applications médias depuis des décennies, les codecs permettent aux applications gourmandes en bande passante de transmettre efficacement les données. En tant que tel, le développement de codecs, tant pour la vidéo que pour l'audio, constitue un défi permanent : fournir une qualité croissante, en utilisant moins de données, et minimiser la latence pour la communication en temps réel. Même si la vidéo peut sembler beaucoup plus gourmande en bande passante que l'audio, les codecs vidéo modernes peuvent atteindre des débits plus faibles que certains codecs vocaux de haute qualité utilisés aujourd'hui.

La combinaison de codecs vidéo et vocaux à faible débit peut offrir une expérience d'appel vidéo de haute qualité, même sur les réseaux à faible bande passante. Pourtant, historiquement, plus le débit binaire d'un codec audio est faible, moins le signal vocal est intelligible et plus il est robotisé. En outre, si certaines personnes ont accès à un réseau haut débit de qualité constante, ce niveau de connectivité n'est pas universel, et même les personnes vivant dans des zones bien connectées sont parfois confrontées à des connexions réseau de mauvaise qualité, à une faible bande passante et à des encombrements.

Pour résoudre ce problème, Google a créé Lyra, un codec vocal de haute qualité à très faible débit qui rend la communication vocale disponible même sur les réseaux les plus lents. Pour ce faire, Google a appliqué des techniques de codage traditionnelles tout en tirant parti des progrès du machine learning avec des modèles formés sur des milliers d'heures de données pour créer une nouvelle méthode de compression et de transmission des signaux vocaux.

Nom : lyra.PNG
Affichages : 826
Taille : 7,8 Ko

Le code Lyra est écrit en C++ pour des raisons de rapidité, d'efficacité et d'interopérabilité. Il utilise le framework Bazel avec Abseil et le framework GoogleTest pour des tests unitaires complets. L'API de base fournit une interface pour le codage et le décodage au niveau des fichiers et des paquets. La chaîne d'outils complète de traitement du signal est également fournie, et comprend divers filtres et transformations.

« Notre application d'exemple s'intègre au NDK Android pour montrer comment intégrer le code natif de Lyra dans une application Android basée sur Java. Nous fournissons également les poids et les quantificateurs de vecteurs nécessaires à l'exécution de Lyra », a déclaré Google. Cette version fournit les outils nécessaires aux développeurs pour coder et décoder l'audio avec Lyra, optimisé pour la plateforme Android ARM 64-bit, avec une version pour Linux.

Les fonctionnalités sont décodées en forme d'onde via un modèle génératif. Les modèles génératifs sont un type particulier de modèle de machine learning bien adapté pour recréer une forme d'onde audio complète à partir d'un nombre limité de fonctions. L'architecture de Lyra est très similaire aux codecs audio traditionnels, qui constituent l'épine dorsale de la communication Internet depuis des décennies. Alors que ces codecs traditionnels sont basés sur des techniques de traitement numérique du signal, Lyra réside dans la capacité du modèle génératif à reconstruire un signal vocal de haute qualité.

Google a mis en œuvre Lyra dans son application gratuite d'appels vidéo Duo, et a déclaré qu'il mettait le code en open source parce qu'il pense qu'il pourrait convenir à d'autres applications. Google pense qu'il existe un certain nombre d'applications auxquelles Lyra pourrait convenir, qu'il s'agisse d'archiver de grandes quantités de paroles, d'économiser la batterie ou d'atténuer la congestion du réseau dans les situations d'urgence. « Nous sommes impatients de voir la créativité qui caractérise la communauté open source s’appliquer à Lyra afin de proposer des applications uniques et percutantes », a déclaré Google.

L'architecture de Lyra est séparée en deux parties, l'encodeur et le décodeur. Lorsqu'une personne parle dans son téléphone, l'encodeur capture les attributs distinctifs de sa parole. Ces attributs vocaux, sont extraits toutes les 40 ms, et sont ensuite compressés et envoyés sur le réseau. Le décodeur a pour mission de reconvertir les caractéristiques en une forme d'onde audio qui peut être diffusée par le haut-parleur du téléphone de l'auditeur.

Nom : lyr.PNG
Affichages : 851
Taille : 25,4 Ko

Il existe également d'autres applications pour lesquelles Lyra peut être particulièrement bien adaptée, qu'il s'agisse d'archiver de grandes quantités de paroles, d'économiser la batterie en exploitant l'encodeur Lyra, peu coûteux en termes de calcul, ou de réduire la congestion du réseau dans les situations d'urgence où de nombreuses personnes tentent de passer des appels en même temps. L'ensemble du code permettant d'exécuter Lyra est libre sous la licence Apache, à l'exception du noyau pour lequel une bibliothèque partagée est fournie dans l’attente d’une solution entièrement open source sur un plus grand nombre de plateformes.

Actuellement, le codec open source Opus est le codec le plus utilisé pour les applications VOIP basées sur WebRTC et, avec un débit audio de 32 kbps, il permet d'obtenir une qualité vocale transparente, c'est-à-dire indiscernable de l'original. Toutefois, si Opus peut être utilisé dans des environnements plus limités en bande passante jusqu'à 6 kbps, il commence à présenter une qualité audio dégradée. D'autres codecs sont capables de fonctionner à des débits comparables à ceux de Lyra (Speex, MELP, AMR), mais ils souffrent tous d'une augmentation des artefacts et donnent un son robotique à la voix.

Nom : lyr2B.png
Affichages : 797
Taille : 11,9 Ko

Lyra est actuellement conçu pour fonctionner à 3 kbps. Selon Google, les tests d'écoute montrent que Lyra surpasse tout autre codec à ce débit et se compare favorablement à Opus à 8 kbps, ce qui permet de réduire la bande passante de plus de 60 %. Lyra peut être utilisé partout où les conditions de bande passante sont insuffisantes pour des débits plus élevés et où les codecs à faible débit existants ne fournissent pas une qualité adéquate. Le fait de rendre Lyra open source permet à d'autres développeurs de le prendre en compte dans leurs applications de communication et de faire évoluer Lyra dans de nouvelles directions.

Source : Google

Et vous ?

Quel est votre avis sur le sujet ?

Voir aussi :

Apple ajoute deux nouvelles voix à son assistant vocal Siri et ne propose plus de voix féminine comme choix par défaut

Apple continue d'enregistrer les conversations entendues par Siri malgré sa promesse d'arrêter, d'après l'un de ses anciens sous-traitants qui s'insurge contre le manque de réaction des autorités

Amazon est confronté à un problème de protection de vie privée pour sa fonction Sidewalk, qui transforme les appareils Alexa en réseaux Wi-Fi de quartier, que les propriétaires doivent désactiver

Des chercheurs ont réussi à tromper Google Assistant et Siri et les amener à effectuer diverses actions, en utilisant des ondes ultrasoniques