Google har publicerat Lyra audio codec för talöverföring i dålig anslutningskvalitet

Google har introducerat en ny ljudcodec, Lyra, optimerad för att uppnå maximal röstkvalitet även när man använder mycket långsamma kommunikationskanaler. Lyra-implementeringskoden är skriven i C++ och öppen under Apache 2.0-licensen, men bland de beroenden som krävs för drift finns ett proprietärt bibliotek libsparse_inference.so med en kärnimplementation för matematiska beräkningar. Det noteras att det proprietära biblioteket är tillfälligt – i framtiden lovar Google att utveckla en öppen ersättare och ge support för olika plattformar.

När det gäller kvaliteten på sänd röstdata vid låga hastigheter är Lyra betydligt överlägsen traditionella codecs som använder digitala signalbehandlingsmetoder. För att uppnå högkvalitativ röstöverföring under förhållanden med en begränsad mängd överförd information, utöver konventionella metoder för ljudkomprimering och signalkonvertering, använder Lyra en talmodell baserad på ett maskininlärningssystem, vilket låter dig återskapa den saknade informationen baserat på typiska talegenskaper. Modellen som användes för att generera ljudet tränades med flera tusen timmars röstinspelningar på mer än 70 språk.

Google har publicerat Lyra audio codec för talöverföring i dålig anslutningskvalitet

Codecen inkluderar en kodare och en avkodare. Kodarens algoritm går ut på att extrahera röstdataparametrar var 40:e millisekund, komprimera dem och sända dem till mottagaren över nätverket. En kommunikationskanal med en hastighet på 3 kilobit per sekund räcker för dataöverföring. De extraherade ljudparametrarna inkluderar logaritmiska melspektrogram som tar hänsyn till tals energiegenskaper i olika frekvensområden och är förberedda med hänsyn till modellen för mänsklig hörselperception.

Google har publicerat Lyra audio codec för talöverföring i dålig anslutningskvalitet

Avkodaren använder en generativ modell som, baserat på de överförda ljudparametrarna, återskapar talsignalen. För att minska komplexiteten i beräkningar användes en lättviktsmodell baserad på ett återkommande neuralt nätverk, som är en variant av WaveRNN-talsyntesmodellen, som använder en lägre samplingsfrekvens, men genererar flera signaler parallellt i olika frekvensområden. De resulterande signalerna överlagras sedan för att producera en enda utsignal som motsvarar den specificerade samplingshastigheten.

Specialiserade processorinstruktioner tillgängliga i 64-bitars ARM-processorer används också för acceleration. Som ett resultat, trots användningen av maskininlärning, kan Lyra-codec användas för realtidstalkodning och avkodning på smartphones i mellanklassen, vilket visar signalöverföringslatens på 90 millisekunder.

Källa: opennet.ru

Lägg en kommentar