Google har publisert Lyra-lydkodeken for taleoverføring i dårlig tilkoblingskvalitet

Google har introdusert en ny lydkodek, Lyra, optimalisert for å oppnå maksimal stemmekvalitet selv når du bruker svært trege kommunikasjonskanaler. Lyra-implementeringskoden er skrevet i C++ og åpen under Apache 2.0-lisensen, men blant avhengighetene som kreves for drift er det et proprietært bibliotek libsparse_inference.so med en kjerneimplementering for matematiske beregninger. Det bemerkes at det proprietære biblioteket er midlertidig - i fremtiden lover Google å utvikle en åpen erstatning og gi støtte for ulike plattformer.

Når det gjelder kvaliteten på overførte taledata ved lave hastigheter, er Lyra betydelig overlegen tradisjonelle kodeker som bruker digitale signalbehandlingsmetoder. For å oppnå høykvalitets taleoverføring under forhold med en begrenset mengde overført informasjon, i tillegg til konvensjonelle metoder for lydkomprimering og signalkonvertering, bruker Lyra en talemodell basert på et maskinlæringssystem, som lar deg gjenskape den manglende informasjonen basert på typiske taleegenskaper. Modellen som ble brukt til å generere lyden ble trent ved å bruke flere tusen timer med stemmeopptak på mer enn 70 språk.

Google har publisert Lyra-lydkodeken for taleoverføring i dårlig tilkoblingskvalitet

Kodeken inkluderer en koder og en dekoder. Koderens algoritme koker ned til å trekke ut stemmedataparametere hvert 40. millisekund, komprimere dem og overføre dem til mottakeren over nettverket. En kommunikasjonskanal med en hastighet på 3 kilobit per sekund er tilstrekkelig for dataoverføring. De ekstraherte lydparametrene inkluderer logaritmiske melspektrogrammer som tar hensyn til energikarakteristikkene til tale i forskjellige frekvensområder og er utarbeidet under hensyntagen til modellen for menneskelig auditiv persepsjon.

Google har publisert Lyra-lydkodeken for taleoverføring i dårlig tilkoblingskvalitet

Dekoderen bruker en generativ modell som, basert på de overførte lydparametrene, gjenskaper talesignalet. For å redusere kompleksiteten i beregninger ble det brukt en lettvektsmodell basert på et tilbakevendende nevralt nettverk, som er en variant av WaveRNN-talesyntesemodellen, som bruker en lavere samplingsfrekvens, men genererer flere signaler parallelt i ulike frekvensområder. De resulterende signalene blir så overlagret for å produsere et enkelt utgangssignal som tilsvarer den spesifiserte samplingshastigheten.

Spesialiserte prosessorinstruksjoner tilgjengelig i 64-bits ARM-prosessorer brukes også for akselerasjon. Som et resultat, til tross for bruk av maskinlæring, kan Lyra-kodeken brukes til sanntids talekoding og -dekoding på smarttelefoner i mellomområdet, noe som viser signaloverføringsforsinkelse på 90 millisekunder.

Kilde: opennet.ru

Legg til en kommentar