Lyra ist ein von Google entwickelter verlustbehafteter Audio-Codec , der für die Komprimierung von Sprache mit sehr niedrigen Bitraten konzipiert ist. Im Gegensatz zu den meisten anderen Audioformaten komprimiert er Daten mithilfe eines auf maschinellem Lernen basierenden Algorithmus.

Merkmale

Der Lyra-Codec ist für die Echtzeit-Sprachübertragung bei stark eingeschränkter Bandbreite, beispielsweise über langsame oder unzuverlässige Netzwerkverbindungen, konzipiert. [ 1 ] Er arbeitet mit festen Bitraten von 3,2, 6 und 9 kbit/s und soll im Vergleich zu Codecs mit herkömmlichen, wellenformbasierten Algorithmen bei ähnlichen Bitraten eine höhere Qualität bieten. [ 2 ] [ 3 ] Die Komprimierung erfolgt durch einen Algorithmus für maschinelles Lernen , der die Eingabe mit Merkmalsextraktion kodiert und anschließend mithilfe eines generativen Modells eine Annäherung an das Original rekonstruiert. [ 1 ] Dieses Modell wurde mit Tausenden von Stunden Sprachaufnahmen in über 70 Sprachen trainiert, um mit verschiedenen Sprechern zu funktionieren. [ 2 ] Da generative Modelle rechenintensiver sind als herkömmliche Codecs, wird ein einfaches Modell verwendet, das verschiedene Frequenzbereiche parallel verarbeitet, um eine akzeptable Leistung zu erzielen. [ 4 ] Aufgrund seiner Framegröße verursacht Lyra eine Latenz von 20 ms. [ 3 ] Googles Referenzimplementierung ist für Android und Linux verfügbar . [ 4 ]

Qualität

Die erste Version von Lyra schnitt bei vergleichbaren Bitraten deutlich besser ab als herkömmliche Codecs. [ 1 ] [ 4 ] [ 5 ] Ian Buckley von MakeUseOf sagte: „Es gelingt ihr, selbst bei Bitraten von nur 3 kbps eine fast unheimliche Audioqualität zu erzielen.“ Google behauptet, dass Lyra Sprache natürlich klingen lässt und dass Lyra bei 3 kbit/s Opus bei 8 kbit/s übertrifft. [ 2 ] Tsahi Levent-Levi schreibt, dass Satin , Microsofts KI-basierter Codec, bei höheren Bitraten besser abschneidet. [ 5 ]

Geschichte

Im Dezember 2017 veröffentlichten Google-Forscher einen Preprint zur Ersetzung des Codec-2 -Decoders durch ein WaveNet-Neuronales Netzwerk. Sie stellten fest, dass ein neuronales Netzwerk Merkmale der Stimme extrapolieren kann, die im Codec-2-Bitstrom nicht beschrieben sind, und so eine bessere Audioqualität liefert. Zudem vereinfacht die Verwendung konventioneller Merkmale die Berechnung des neuronalen Netzwerks im Vergleich zu einem rein wellenformbasierten Netzwerk. Lyra Version 1 nutzte dieses Gesamtkonzept der Merkmalsextraktion, Quantisierung und neuronalen Synthese. [ 6 ]

Lyra wurde erstmals im Februar 2021 angekündigt [ 2 ] , und im April veröffentlichte Google den Quellcode seiner Referenzimplementierung [ 1 ] . Die erste Version hatte eine feste Bitrate von 3 kbit/s und eine Latenz von etwa 90 ms [ 1 ] [ 2 ] . Der Encoder berechnet ein Log-Mel-Spektrogramm und führt eine Vektorquantisierung durch , um das Spektrogramm in einem Datenstrom zu speichern. Der Decoder ist ein WaveNet- Neuronales Netzwerk, das das Spektrogramm verarbeitet und das Eingangsaudio rekonstruiert [ 2 ] .

Eine zweite Version (v2/1.2.0), die im September 2022 veröffentlicht wurde, verbesserte Klangqualität, Latenz und Leistung und ermöglichte mehrere Bitraten. V2 verwendet eine „SoundStream“-Struktur, bei der sowohl der Encoder als auch der Decoder neuronale Netze sind, eine Art Autoencoder . Ein Residualvektorquantisierer wird verwendet, um die Merkmalswerte in übertragbare Daten umzuwandeln. [ 3 ]

Unterstützung

Implementierungen

Googles Implementierung ist auf GitHub unter der Apache-Lizenz verfügbar. [ 1 ] [ 7 ] Sie ist in C++ geschrieben und für 64-Bit -ARM optimiert, läuft aber auch auf x86-Systemen , sowohl unter Android als auch unter Linux. [ 4 ]

Anwendungen

Google Meet nutzt Lyra zur Tonübertragung bei Videochats, wenn die Bandbreite begrenzt ist. [ 1 ] [ 5 ]

Referenzen

  1. Buckley , Ian (08.04.2021). „ Google veröffentlicht seinen Lyra Low Bitrate Speech Codec “ . MakeUseOf . Abgerufen am 21.07.2022 .
  2. ^ a b c d e f „Lyra: Ein neuer Codec mit sehr niedriger Bitrate für die Sprachkomprimierung“ . Google AI Blog . 25. Februar 2021. Abgerufen am 21. Juli 2022 .
  3. ^ a b c „Lyra V2 – ein besserer, schnellerer und vielseitigerer Sprachcodec“ . Google Open Source Blog . Abgerufen am 26.04.2023 .
  4. ^ a b c d „Google Duo verwendet einen neuen Codec für bessere Anrufqualität bei schlechten Verbindungen“ . XDA . 09.04.2021 . Abgerufen am 21.07.2022 .
  5. ^ a b c Levent-Levi, Tsahi (19.04.2021). „Lyra, Satin und die Zukunft von Sprachcodecs in WebRTC“ . BlogGeek.me . Abgerufen am 21.07.2022 .
  6. ^ Kleijn, WB; Lim, FS; Luebs, A.; Skoglund, J.; Stimberg, F.; Wang, Q.; Walters, TC (April 2018). Wavenet based low rate speech coding . 2018 IEEE international conference on acoustics, speech and signal processing (ICASSP). IEEE. S.  676–680 . arXiv : 1712.01120 .
  7. ^ Google (2021). „Lyra: Ein Codec mit sehr niedriger Bitrate für die Sprachkomprimierung“ . GitHub . Abgerufen am 21. Juli 2022 .

Siehe auch