Google har introduceret Lyra V2-lydkodeket, der bruger maskinlæringsmetoder til at opnå maksimal talekvalitet over meget langsomme kommunikationskanaler. Den nye version har en ny neural netværksarkitektur, understøttelse af yderligere platforme, udvidede bitrate-kontrolfunktioner, øget ydeevne og højere lydkvalitet. Referenceimplementeringen af koden er skrevet i C++ og distribueres under Apache 2.0-licensen.
Med hensyn til kvaliteten af transmitterede stemmedata ved lave hastigheder er Lyra væsentligt bedre end traditionelle codecs, der bruger digitale signalbehandlingsmetoder. For at opnå stemmetransmission af høj kvalitet under forhold med en begrænset mængde transmitteret information, ud over konventionelle metoder til lydkomprimering og signalkonvertering, bruger Lyra en talemodel baseret på et maskinlæringssystem, som giver dig mulighed for at genskabe den manglende information baseret på typiske taleegenskaber.
Codec'en indeholder en encoder og en dekoder. Encoderens algoritme er reduceret til at udtrække stemmedataparametre hvert 20. millisekund, komprimere dem og sende dem til modtageren via netværket med en bithastighed fra 3.2 kbps til 9.2 kbps. På modtagerens side bruger dekoderen en generativ model til at genskabe det originale talesignal baseret på de transmitterede lydparametre, som inkluderer logaritmiske mel-spektrogrammer, der tager højde for taleenergiens karakteristika i forskellige frekvensområder og er udarbejdet under hensyntagen til modellen for menneskelig auditiv opfattelse.
Lyra V2 bruger en ny generativ model baseret på SoundStreams konvolutionelle neurale netværk, som har lave beregningskrav, hvilket muliggør realtidsafkodning selv på systemer med lavt strømforbrug. Modellen, der blev brugt til lydgenerering, blev trænet ved hjælp af flere tusinde timers stemmeoptagelser på mere end 90 sprog. TensorFlow Lite bruges til at udføre modellen. Ydeevnen af den foreslåede implementering er tilstrækkelig til at kode og afkode tale på smartphones i den lave ende.
Ud over at bruge en anden generativ model, er den nye version også bemærkelsesværdig for inklusion i codec-arkitekturen af links med RVQ (Residual Vector Quantizer) kvantizer, som udføres på afsenderens side før transmission af data, og på modtagerens side efter modtagelse af data. Kvantizeren konverterer parametrene produceret af codec'et til sæt af pakker, der koder information i forhold til den valgte bitrate. For at give forskellige kvalitetsniveauer leveres kvantizere til tre bithastigheder (3.2 kps, 6 kbps og 9.2 kbps), jo højere bitrate, jo bedre kvalitet, men jo højere båndbreddekrav.

Den nye arkitektur har reduceret signaltransmissionsforsinkelser fra 100 til 20 millisekunder. Til sammenligning demonstrerede Opus codec til WebRTC latenser på 26.5 ms, 46.5 ms og 66.5 ms ved de testede bithastigheder. Ydeevnen af encoderen og dekoderen er også steget markant - op til 5 gange hurtigere sammenlignet med den tidligere version. For eksempel på Pixel 6 Pro-smartphonen koder og afkoder det nye codec en 20 ms-prøve på 0.57 ms, hvilket er 35 gange hurtigere end det krævede til realtidstransmission.
Ud over ydeevnen var vi i stand til at opnå en forbedring af kvaliteten af lydgendannelsen - ifølge MUSHRA-skalaen svarer talekvaliteten ved bithastigheder på 3.2 kbps, 6 kbps og 9.2 kbps, når Lyra V2-codec'en bruges, til bithastigheder på 10 kbps, 13 kbps og 14 kbps, når Opus-codec'en bruges.
Kilde: opennet.ru
