Google eta Binomial open source Basis Unibertsala testura konpresio sistema

Google eta Binomial irekita iturburu kodea Oinarri Unibertsala, testura konprimitzeko kodeka eta irudietan eta bideoetan oinarritutako testurak banatzeko ".basis" fitxategi formatu unibertsala. Erreferentziazko ezarpen-kodea C++-n idatzita dago eta hornituta Apache 2.0 lizentziapean.

Oinarria Osagarri unibertsalak lehenago argitaratua Draco 3D datuen konpresio sistema eta GPUrako testurak hornitzeko arazoa konpontzen saiatzen da. Orain arte, garatzaileek errendimendu handia lortzen duten baina GPUaren espezifikoak diren eta diskoko espazio asko hartzen duten maila baxuko formatuen artean aukeratzera mugatu dira, eta tamaina murriztea lortzen duten baina errendimenduan GPU ehundurarekin lehiatu ezin duten beste formatu batzuen artean.

Basis Universal formatuak jatorrizko GPU ehunduraren errendimendua lortzeko aukera ematen du, baina konpresio maila handiagoa eskaintzen du.
Basis GPU ehundurak maila baxuko hainbat formatutara transkodetze azkarra eskaintzen duen bitarteko formatua da, mahaigaineko sistemetan zein gailu mugikorretan erabiltzeko, erabili aurretik. Gaur egun onartzen dira PVRTC1 (4bpp RGB), BC7 (6 RGB modua), BC1-5, ETC1 eta ETC2 formatuak. Etorkizuneko laguntza espero da ASTC formatuan (RGB edo RGBA) eta 4/5 RGBA moduetarako BC7rako eta 4bpp RGBA PVRTC1erako.

Google eta Binomial open source Basis Unibertsala testura konpresio sistema

Oinarrizko formatuan dauden testurek bideo-memoria 6-8 aldiz gutxiago hartzen dute eta JPEG formatuan oinarritutako ehundura tipikoen datuen erdia eta RDO moduan ehundurak baino % 10-25 gutxiago transferitzea eskatzen dute. Adibidez, 891 KB-ko JPEG irudiaren tamainarekin eta 1 MB-ko ETC1 ehundurarekin, Oinarrizko formatuan datuen tamaina 469 KB-koa da kalitate goreneko moduan. Bideo-memorian testurak jartzean, probetan erabilitako JPEG eta PNG testurek 16 MB-ko memoria kontsumitzen zuten, testurek, berriz,
Oinarrizkoak 2 MB memoria behar dira BC1, PVRTC1 eta ETC1-era itzultzeko, eta 4 MB BC7-ra itzultzeko.

Google eta Binomial open source Basis Unibertsala testura konpresio sistema

Dauden aplikazioak Basis Universal-era migratzeko prozesua nahiko erraza da. Nahikoa da lehendik dauden testurak edo irudiak formatu berri batean birkodetzea proiektuak eskaintzen duen β€œbasisu” utilitatea erabiliz, beharrezko kalitate maila hautatuz. Ondoren, aplikazioan, errendatze-kodearen aurretik, basisu transkodetzailea hasieratu behar duzu, tarteko formatua egungo GPUak onartzen duen formatura itzultzeaz arduratzen dena. Aldi berean, irudiak prozesatzeko kate osoan zehar konprimituta geratzen dira, GPUra konprimituta kargatuta egotea barne. Irudi osoa aldez aurretik transkodetu beharrean, GPUak irudiaren beharrezko zatiak soilik deskodetzen ditu selektiboki.

Testura-matrize heterogeneoak (cubemaps), testura bolumetrikoak, testura-matrizeak, mipmap-mailak, bideo-sekuentziak edo testura-zati arbitrarioak fitxategi batean gordetzea onartzen du. Esaterako, posible da irudi sorta bat fitxategi batean biltzea bideo txikiak sortzeko, edo hainbat testura konbinatu irudi guztien paleta komun bat erabiliz eta irudi-txantiloi tipikoak deduplicatuz. Oinarrizko kodetzaile unibertsala inplementatzeak OpenMP erabiliz hari anitzeko kodeketa onartzen du. Transkodetzaileak hari bakarreko moduan bakarrik funtzionatzen du.

gainera eskuragarri Nabigatzaileentzako Basis Deskodetzaile unibertsala, WebAssembly formatuan entregatua, WebGLn oinarritutako web aplikazioetan erabil daitekeena. Azken finean, Google-k Basis Universal nabigatzaile nagusi guztietan onartu nahi du eta WebGLrako testura formatu eramangarri gisa eta etorkizuneko zehaztapen gisa sustatu nahi du. WebGPU, kontzeptualki Vulkan, Metal eta Direct3D 12 APIen antzekoa dena.

Kontuan izan da bideoa GPU aldean soilik txertatzeko gaitasunak Basis Universal-ek WebAssembly eta WebGL-en erabiltzaile-interfaze dinamikoak sortzeko soluzio interesgarri bihurtzen duela, zeinak aldi berean ehunka bideo txiki bistara ditzakeela CPU karga minimoarekin. SIMD argibideak WebAssembly-n kodek tradizionalekin erabil daitezkeen arte, errendimendu-maila hori oraindik ez da lortzerik, beraz, testura oinarritutako bideoa ohiko bideoa aplikagarria ez den eremuetan erabil daiteke. Bideorako optimizazio gehigarriak dituen kodea argitaratzeko prestatzen ari da, erabiltzeko gaitasuna barne I-markoak eta P-markoak betegarri moldagarria (CR) euskarria duena.

Iturria: opennet.ru

Gehitu iruzkin berria