Google on julkaissut Lyra-äänikoodekin puheensiirtoon huonolla yhteyslaadulla

Google on esitellyt uuden äänikoodekin, Lyran, joka on optimoitu saavuttamaan maksimaalisen äänenlaadun myös erittäin hitaita viestintäkanavia käytettäessä. Lyra-toteutuskoodi on kirjoitettu C++-kielellä ja avoin Apache 2.0 -lisenssillä, mutta toiminnan edellyttämien riippuvuuksien joukossa on oma kirjasto libsparse_inference.so, jossa on ydintoteutus matemaattisia laskelmia varten. On huomattava, että oma kirjasto on väliaikainen - tulevaisuudessa Google lupaa kehittää avoimen korvaavan ja tarjota tukea erilaisille alustoille.

Alhaisilla nopeuksilla lähetettävän puhedatan laadussa Lyra on huomattavasti parempi kuin perinteiset digitaalisia signaalinkäsittelymenetelmiä käyttävät koodekit. Laadukkaan äänensiirron saavuttamiseksi rajallisen tiedonsiirron olosuhteissa, tavanomaisten äänenpakkaus- ja signaalimuunnosmenetelmien lisäksi Lyra käyttää koneoppimisjärjestelmään perustuvaa puhemallia, jonka avulla voit luoda uudelleen puuttuvan tiedon tyypillisiä puheen ominaisuuksia. Äänen tuottamiseen käytetty malli opetettiin useiden tuhansien tuntien äänitallenteiden avulla yli 70 kielellä.

Google on julkaissut Lyra-äänikoodekin puheensiirtoon huonolla yhteyslaadulla

Pakkauksenhallinta sisältää kooderin ja dekooderin. Enkooderin algoritmi poimii äänidataparametrit 40 millisekunnin välein, pakkaa ne ja lähettää ne vastaanottajalle verkon kautta. Tietoliikennekanava, jonka nopeus on 3 kilobittiä sekunnissa, riittää tiedonsiirtoon. Poimittuja audioparametreja ovat logaritmiset mel-spektrogrammit, jotka ottavat huomioon puheen energiaominaisuudet eri taajuusalueilla ja jotka on laadittu ottaen huomioon ihmisen kuuloaistin malli.

Google on julkaissut Lyra-äänikoodekin puheensiirtoon huonolla yhteyslaadulla

Dekooderi käyttää generatiivista mallia, joka lähetettyjen audioparametrien perusteella luo puhesignaalin uudelleen. Laskennan monimutkaisuuden vähentämiseksi käytettiin toistuvaan hermoverkkoon perustuvaa kevytmallia, joka on muunnos WaveRNN-puhesynteesimallista, joka käyttää pienempää näytteenottotaajuutta, mutta tuottaa useita signaaleja rinnakkain eri taajuusalueilla. Tuloksena saadut signaalit asetetaan sitten päällekkäin tuottamaan yksi lähtösignaali, joka vastaa määritettyä näytteenottotaajuutta.

Kiihdytykseen käytetään myös erikoistuneita prosessoriohjeita, jotka ovat saatavilla 64-bittisissä ARM-prosessoreissa. Tämän seurauksena, koneoppimisesta huolimatta, Lyra-koodekkia voidaan käyttää reaaliaikaiseen puheen koodaukseen ja dekoodaukseen keskitason älypuhelimissa, mikä osoittaa signaalin lähetysviiveen 90 millisekuntia.

Lähde: opennet.ru

Lisää kommentti