Efter nio mÄnaders utveckling har den stabila versionen av den kompositiva servern Weston 15.0 publicerats, vilket frÀmjar teknologier som möjliggör full stöd för Wayland-protokollet i Enlightenment, GNOME, KDE och andra anvÀndarmiljöer. Utvecklingen av Weston syftar till att tillhandahÄlla en högkvalitativ kodbas och arbets exempel för anvÀndning av Wayland i skrivbordsmiljöer och inbÀddade lösningar, sÄsom plattformar för bilunderhÄllningssystem, smartphones, TV-apparater och andra konsumentprodukter. Koden för projektet distribueras under MIT-licensen.
Ăndringar i den nya grenen av Weston:
- En ny grafisk skal "lua-shell" har lagts till (kan anropas som "weston --shell=lua"), vilket möjliggör anvÀndning av Lua-sprÄket för att anpassa fönsterhanteringens beteende och skapa helt skrÀddarsydda anvÀndarmiljöer. Som exempel pÄ "lua-shell" implementerades ett enkelt mosaiksystem för fönsterhantering.
- En experimentell renderingsbackend har lagts till, som anvÀnder grafiska API:er frÄn Vulkan (aktiveras som "weston --renderer=vulkan"). Backend gör det möjligt att köra Weston ovanpÄ andra kompositiva servrar baserade pÄ Wayland och X11, och att arbeta direkt med DRM-subsystemets drivrutiner i kÀrnan, som stöder Vulkan 1.0. Utöver backend har Wayland-klienterna simple-vulkan och simple-dmabuf-vulkan lagts till.
- Stöd för Wayland-protokollen commit-timing-v1 och fifo-v1 har lagts till. Protokollet commit-timing gör det möjligt att knyta tidsbegrÀnsningar till innehÄllet pÄ ytan (den kompositiva servern mÄste Äterspegla förÀndringar i innehÄllet sÄ snart som möjligt efter den angivna tiden, men inte tidigare). Protokollet fifo implementerar en FIFO-mekanism för att behandla uppdateringsköer av visningsytans innehÄll. Tillsammans möjliggör dessa protokoll en jÀmn visning och rendering av bilder med hÀnsyn till vertikal synkronisering vid tillÀmpningar som spel och videouppspelning. Stöd för Vulkan-tillÀggen VK_KHR_present_id2 och VK_KHR_present_wait2 har lagts till, vilket gör det möjligt att överföra bilder i FIFO-lÀge utan att öka latensen.
- Stöd för Wayland-protokollet color-representation-v1 har lagts till för att definiera fÀrgrepresentationen av Wayland-yta, vilket Àr nödvÀndigt för att stödja HDR och korrekt rendering av fullfÀrgade YUV-buffertar. Protokollet möjliggör för Wayland-klienter att överföra metadata som behövs för att definiera transparens, fÀrgmodell, subdiscretisering och kvantiseringsomrÄde, som tillÀmpas vid omvandlingen av bufferten med data för YUV-fÀrgmodellen till RGB-representation. Stöd för pixelformat med 10 bitar per kanal, sÄsom NV15, NV20, NV30 och P030, har lagts till.
- Funktionen att aktivera KMS (Kernel Mode Setting) kÀrnmoduler för att avlasta (off-load) fÀrgkonverteringsoperationer till styrenheten har lagts till.
- Möjligheten att anvÀnda profileraren Perfetto för att identifiera prestandaproblem vid rendering, samt för att spÄra och visualisera körningstider för olika operationer, har tillhandahÄllits.
- GrundlÀggande stöd för mekanismen VRR (Variable Refresh Rate) har lagts till i DRM-backenden, som adaptivt Àndrar bildskÀrmsuppdateringsfrekvensen för att sÀkerstÀlla smidighet och avbrottsfri visning under spel och video. För att anvÀnda det krÀvs en DRM-drivrutin som stöder VRR.
KĂ€lla: opennet.ru
