Google a publicat codecul audio Lyra pentru transmiterea vorbirii la o calitate slabă a conexiunii

Google a introdus un nou codec audio, Lyra, optimizat pentru a obține o calitate maximă a vocii chiar și atunci când se utilizează canale de comunicare foarte lente. Codul de implementare Lyra este scris în C++ și deschis sub licența Apache 2.0, dar printre dependențele necesare funcționării există o bibliotecă proprietară libsparse_inference.so cu o implementare kernel pentru calcule matematice. Se observă că biblioteca proprietară este temporară - în viitor Google promite să dezvolte un înlocuitor deschis și să ofere suport pentru diverse platforme.

În ceea ce privește calitatea datelor de voce transmise la viteze mici, Lyra este semnificativ superioară codecurilor tradiționale care folosesc metode de procesare a semnalului digital. Pentru a obține o transmisie vocală de înaltă calitate în condițiile unei cantități limitate de informații transmise, pe lângă metodele convenționale de compresie audio și conversie a semnalului, Lyra utilizează un model de vorbire bazat pe un sistem de învățare automată, care vă permite să recreați informațiile lipsă pe baza caracteristici tipice de vorbire. Modelul folosit pentru a genera sunetul a fost antrenat folosind câteva mii de ore de înregistrări vocale în peste 70 de limbi.

Google a publicat codecul audio Lyra pentru transmiterea vorbirii la o calitate slabă a conexiunii

Codecul include un encoder și un decodor. Algoritmul codificatorului se rezumă la extragerea parametrilor de date vocale la fiecare 40 de milisecunde, comprimarea acestora și transmiterea lor către destinatar prin rețea. Un canal de comunicație cu o viteză de 3 kilobiți pe secundă este suficient pentru transmiterea datelor. Parametrii audio extrași includ spectrograme mel logaritmice care țin cont de caracteristicile energetice ale vorbirii în diferite game de frecvență și sunt pregătiți ținând cont de modelul percepției auditive umane.

Google a publicat codecul audio Lyra pentru transmiterea vorbirii la o calitate slabă a conexiunii

Decodorul folosește un model generativ care, pe baza parametrilor audio transmisi, recreează semnalul de vorbire. Pentru a reduce complexitatea calculelor, a fost folosit un model ușor bazat pe o rețea neuronală recurentă, care este o variantă a modelului de sinteză a vorbirii WaveRNN, care utilizează o frecvență de eșantionare mai mică, dar generează mai multe semnale în paralel în diferite game de frecvență. Semnalele rezultate sunt apoi suprapuse pentru a produce un singur semnal de ieșire corespunzător ratei de eșantionare specificate.

Instrucțiunile specializate ale procesorului disponibile în procesoarele ARM pe 64 de biți sunt, de asemenea, folosite pentru accelerare. Drept urmare, în ciuda utilizării învățării automate, codecul Lyra poate fi utilizat pentru codificarea și decodarea vorbirii în timp real pe smartphone-uri de gamă medie, demonstrând o latență de transmisie a semnalului de 90 de milisecunde.

Sursa: opennet.ru

Adauga un comentariu