Prije nekoliko dana, Googleovi programeri su u objavi na blogu objavili da su odlučili da Lyra bude otvorenog koda. Lyra koristi mašinsko učenje kako bi omogućila visokokvalitetne glasovne pozive u situacijama sa niskim propusnim opsegom.
Ovo koristi i omogućava drugim programerima da poboljšaju svoje komunikacijske aplikacije i razvijaju Lyru u novim smjerovima.
Kodeci koji su decenijama bili glavna medijska aplikacija omogućili su aplikacijama sa širokim propusnim opsegom da efikasno prenose podatke.
Kao takav, razvoj kodeka, kako za video tako i za audio, predstavlja stalni izazov : pružiti sve veći kvalitet, koristiti manje podataka i minimizirati latenciju za komunikaciju u stvarnom vremenu.
Iako se čini da video troši mnogo više propusnosti od zvuka, moderni video kodeci mogu postići niže brzine prijenosa od nekih visokokvalitetnih govornih kodeka koji se danas koriste.
Kombinacija glasovnih i video kodeka s niskom brzinom prijenosa podataka može pružiti visokokvalitetno iskustvo video poziva čak i na mrežama s niskim propusnim opsegom. Međutim, historijski gledano, što je niža brzina prijenosa podataka audio kodeka, to je glasovni signal manje razumljiv i robotskiji.
Također, dok neki ljudi imaju pristup konzistentnoj visokokvalitetnoj širokopojasnoj mreži, ovaj nivo povezanosti nije univerzalan, pa čak i ljudi koji žive u dobro povezanim područjima ponekad se suočavaju s lošim mrežnim vezama, lošim mrežnim vezama i nedostatkom povezanosti.
Da bi riješio ovaj problem, Google je kreirao Lyru, visokokvalitetni glasovni kodek s ultra niskom brzinom prijenosa podataka koji omogućava glasovnu komunikaciju čak i na najsporijim mrežama.
Da bi to postigao, Google je primijenio tradicionalne tehnike kodiranja, istovremeno iskorištavajući napredak u mašinskom učenju s modelima obučenim tokom hiljada sati podataka kako bi stvorio novu metodu kompresije i prenosa glasovnih signala.
Lyrin kod je napisan u C++ kako bi se osigurala brzina, efikasnost i interoperabilnost, a koristi i Bazel framework sa Abseil-om i GoogleTest framework za sveobuhvatno jedinično testiranje.
Basic API pruža sučelje za kodiranje i dekodiranje na nivou paketa i datoteka. Kompletan lanac alata za obradu signala je također osiguran i uključuje razne filtere i transformacije.
„Naš uzorak aplikacije integrira se s Android NDK da bi pokazao kako integrirati Lyrin izvorni kôd u Android aplikaciju zasnovanu na Javi. Također pružamo vektorske težine i kvantifikatore potrebne za pokretanje Lyre ”, rekao je Google. Ovo izdanje pruža potrebne alate za programere za kodiranje i dekodiranje zvuka s Lyrom, optimiziranom za 64-bitnu Android ARM platformu, sa verzijom za Linux.
Karakteristike se dekodiraju u valni oblik pomoću generativnog modela. Generativni modeli su posebna vrsta modela mašinskog učenja koja je pogodna za rekreiranje kompletnog audio talasa iz ograničenog broja funkcija.
Lyrina arhitektura je vrlo slična tradicionalnim audio kodecima , koji su decenijama bili osnova internet komunikacije. Dok se ovi tradicionalni kodeci oslanjaju na tehnike digitalne obrade signala, Lyrina snaga leži u sposobnosti generativnog modela da rekonstruiše visokokvalitetni glasovni signal.
Google je implementirao Lyru u svoju besplatnu aplikaciju za video pozive Duo i rekao da kôd čini otvorenim kodom jer smatra da bi mogao biti pogodan za druge aplikacije.
Google vjeruje da postoji niz aplikacija za koje bi Lyra mogla biti prikladna, bilo da se radi o arhiviranju velike količine glasa, uštedi trajanja baterije ili ublažavanju zagušenja mreže u zauzetim situacijama.
"Radujemo se što ćemo vidjeti kreativnost koja karakterizira zajednicu otvorenog koda primijenjenu na Lyru za isporuku moćnih i jedinstvenih aplikacija", rekao je Google.
Izvor: https://opensource.googleblog.com