Facebook publikon kodek audio EnCodec duke përdorur mësimin e makinerive

Meta/Facebook (i ndaluar në Federatën Ruse) prezantoi një kodek të ri audio, EnCodec, i cili përdor metoda të mësimit të makinerive për të rritur raportin e kompresimit pa humbur cilësinë. Kodeku mund të përdoret si për transmetim audio në kohë reale ashtu edhe për kodim për ruajtjen e mëvonshme në skedarë. Zbatimi i referencës EnCodec është shkruar në Python duke përdorur kuadrin PyTorch dhe është i licencuar sipas një licence CC BY-NC 4.0 (Creative Commons Attribution-JoCommercial) vetëm për përdorim jokomercial.

Dy modele të gatshme ofrohen për shkarkim:

  • Një model shkakësor që përdor një shpejtësi kampionimi 24 kHz, që mbështet vetëm audion monofonike dhe i trajnuar në të dhëna të ndryshme audio (të përshtatshme për kodimin e të folurit). Modeli mund të përdoret për të paketuar të dhënat audio për transmetim me shpejtësi bit prej 1.5, 3, 6, 12 dhe 24 kbps.
  • Një model jo shkakësor që përdor një shpejtësi kampionimi prej 48 kHz, që mbështet audio stereo dhe i trajnuar vetëm në muzikë. Modeli mbështet shpejtësitë e biteve prej 3, 6, 12 dhe 24 kbps.

Për secilin model, është përgatitur një model gjuhësor shtesë, i cili ju lejon të arrini një rritje të konsiderueshme të raportit të kompresimit (deri në 40%) pa humbje të cilësisë. Ndryshe nga projektet e zhvilluara më parë duke përdorur metodat e mësimit të makinerive për kompresimin e audios, EnCodec mund të përdoret jo vetëm për paketimin e të folurit, por edhe për kompresimin e muzikës me një shkallë kampionimi prej 48 kHz, që korrespondon me nivelin e CD-ve audio. Sipas zhvilluesve të kodekut të ri, kur transmetonin me një shpejtësi bit prej 64 kbps në krahasim me formatin MP3, ata ishin në gjendje të rrisnin shkallën e kompresimit të audios përafërsisht dhjetë herë duke ruajtur të njëjtin nivel cilësie (për shembull, kur përdorni MP3, kërkohet një gjerësi brezi prej 64 kbps, për transmetim me të njëjtën cilësi në EnCodec mjaftojnë 6 kbps).

Arkitektura e kodekut është ndërtuar në një rrjet nervor me një arkitekturë "transformator" dhe bazohet në katër lidhje: kodues, kuantizues, dekoder dhe diskriminues. Koduesi nxjerr parametrat e të dhënave zanore dhe konverton transmetimin e paketuar në një shpejtësi më të ulët të kuadrove. Kuantizuesi (RVQ, Kuantizuesi i Vektorit të Mbetur) konverton daljen e rrjedhës nga koduesi në grupe paketash, duke kompresuar informacionin bazuar në shpejtësinë e zgjedhur të biteve. Prodhimi i kuantizuesit është një paraqitje e ngjeshur e të dhënave, e përshtatshme për transmetim në rrjet ose për t'u ruajtur në disk.

Dekoderi deshifron paraqitjen e ngjeshur të të dhënave dhe rindërton valën origjinale të zërit. Diskriminuesi përmirëson cilësinë e mostrave të gjeneruara, duke marrë parasysh modelin e perceptimit dëgjimor të njeriut. Pavarësisht nga niveli i cilësisë dhe shpejtësisë së biteve, modelet e përdorura për kodim dhe dekodim dallohen nga kërkesa mjaft modeste për burimet (llogaritjet e nevojshme për funksionimin në kohë reale kryhen në një bërthamë të vetme CPU).

Facebook publikon kodek audio EnCodec duke përdorur mësimin e makinerive


Burimi: opennet.ru

Shto një koment