Google och Binomial har slÀppt koden för texturskomprimeringssystemet Basis Universal

Företagen Google och Binomial Vem har nyligen gÄtt med i CNCF kÀlltexter Basis Universal, en codec för effektiv komprimering av texturer och det relaterade universella filformatet '.basis' för distribution av texturer baserat pÄ bilder och video. Den referensimplementeringens kod Àr skriven i C++ och levereras Àr licensierad under Apache 2.0.

Basis Universal kompletterar tidigare publicerat systemet för komprimering av 3D-data Draco och försöker lösa problemet med leverans av texturer för GPU. Tidigare har utvecklare varit begrÀnsade till valet mellan lÄgnivÄformat som möjliggör hög prestanda men Àr GPU-specifika och tar mycket plats pÄ skivan, och andra format som tillÄter storleksminskning men inte kan konkurrera med GPU-texturer nÀr det gÀller prestanda.

Formatet Basis Universal möjliggör prestanda pÄ nivÄ med inbyggda GPU-texturer men erbjuder en högre kompressionsnivÄ.
Basis Àr ett mellanformat som innan applicering möjliggör snabb omkodning till olika lÄgnivÄformat för GPU-texturer som anvÀnds bÄde pÄ stationÀra system och mobila enheter. För nÀrvarande stöds översÀttning till format som PVRTC1 (4bpp RGB), BC7 (lÀge 6 RGB), BC1-5, ETC1 och ETC2. I framtiden förvÀntas stöd för formatet ASTC (RGB eller RGBA) och lÀgen 4/5 RGBA för formatet BC7 och 4bpp RGBA för PVRTC1.

Google och Binomial har slÀppt koden för texturskomprimeringssystemet Basis Universal

Texturer i formatet basis tar 6–8 gĂ„nger mindre videominne och krĂ€ver överföring av cirka dubbelt sĂ„ mycket mindre data Ă€n typiska texturer baserade pĂ„ JPEG-format och 10–25% mindre Ă€n texturer i RDO-lĂ€get. Till exempel, med en JPEG-bildstorlek pĂ„ 891 kB och en ETC1-textur pĂ„ 1 MB, Ă€r datastorleken i formatet Basis 469 kB i högsta kvalitet. NĂ€r texturen placeras i videominne förbrukade de testade texturerna i JPEG- och PNG-format 16 MB minne, medan texturerna i formatet
Basis krÀvde 2 MB minne vid översÀttning till BC1, PVRTC1 och ETC1, och 4 MB vid översÀttning till BC7.

Google och Binomial har slÀppt koden för texturskomprimeringssystemet Basis Universal

ÖversĂ€ttningsprocessen för befintliga applikationer till Basis Universal Ă€r ganska enkel. Det rĂ€cker med att omkoda befintliga texturer eller bilder till det nya formatet med hjĂ€lp av den verktyg som erbjuds av projektet, 'basisu', och vĂ€lja önskad kvalitetsnivĂ„. DĂ€refter mĂ„ste omkodaren basisu initieras i applikationen före renderingskoden, vilket ansvarar för att översĂ€tta det mellanliggande formatet till det format som stöds av den aktuella GPU:n. Under hela bearbetningskedjan förblir bilderna komprimerade, inklusive att de laddas komprimerade i GPU:n. IstĂ€llet för att omkoda hela bilden pĂ„ förhand, dekodar GPU:n selektivt endast nödvĂ€ndiga delar av bilden.

Det stöds att spara heterogena texturmÀngder (cubemap), volumetriska texturer, texturmÀngder, mipmap-nivÄer, videosekvenser eller valfria texturutdrag i en och samma fil. Till exempel kan en serie bilder packas i en fil för att skapa en kort video, eller flera texturer kan sammanfogas med en gemensam palett för alla bilder och deduplicering av typiska bildmönster. Implementeringen av Basis Universals kodare stöder flertrÄdad kodning med hjÀlp av OpenMP. Omkodaren fungerar för nÀrvarande endast i entrÄdat lÀge.

Ytterligare Àr tillgÀnglig Basis Universal-dekodern för webblÀsare levereras i WebAssembly-format och kan anvÀndas i webbapplikationer baserade pÄ WebGL. Slutligen avser Google att uppnÄ stöd för Basis Universal i alla större webblÀsare och frÀmja det som ett bÀrbart texturformat för WebGL och framtida specifikationer. WebGPU, konceptuellt liknande API:erna Vulkan, Metal och Direct3D 12.

Det noteras att möjligheten att integrera video med efterföljande bearbetning enbart pÄ GPU-sidan gör Basis Universal till en intressant lösning för att skapa dynamiska anvÀndargrÀnssnitt pÄ WebAssembly och WebGL, dÀr hundratals smÄ videor kan visas samtidigt med minimal belastning pÄ CPU:n. Innan möjligheten att anvÀnda SIMD-instruktioner i WebAssembly blev tillgÀnglig var en sÄdan prestandanivÄ med traditionella codecs fortfarande ouppnÄelig, sÄ videor baserade pÄ texturer kan anvÀndas inom omrÄden dÀr vanlig video inte Àr tillÀmplig. För nÀrvarande förbereds kod med ytterligare optimeringar för video, som inkluderar möjligheten att anvÀnda I-frames och P-frames med stöd för adaptiv fyllning (CR).

KĂ€lla: opennet.ru

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster