Po pięciu miesiącach prac rozwojowych opublikowano stabilną wersję serwera kompozytowego Weston 16.0. Rozwija ona technologie, które umożliwią pełne wsparcie protokołu Wayland w Enlightenment, GNOME, KDE i innych środowiskach użytkownika. Celem prac rozwojowych Weston jest dostarczenie wysokiej jakości bazy kodu i przykładów działania do wykorzystania Wayland w środowiskach graficznych i rozwiązaniach wbudowanych, takich jak platformy dla samochodowych systemów informacyjno-rozrywkowych, smartfonów, telewizorów i innych urządzeń konsumenckich. Kod projektu jest rozpowszechniany na licencji MIT.
Zmiany w nowym oddziale Weston:
- Dodano obsługę adnotacji debugowania podczas korzystania z profilera Perfetto w celu identyfikowania problemów z wydajnością renderowania oraz śledzenia i wizualizacji czasu wykonywania różnych operacji.
- Kontynuowano wdrażanie narzędzi do obsługi HDR i zarządzania kolorami z wykorzystaniem protokołu reprezentacji kolorów Wayland.
- Do renderer-gl dodano shader do mieszania warstw.
- Dodano obsługę skompresowanych formatów pikseli YUV.
- Dodano obsługę efektu wyjściowego w skali szarości w kompozytorze.
- Dodano obsługę protokołu modyfikatora alfa Wayland, który umożliwia klientom zmianę poziomu przezroczystości powierzchni i przeniesienie operacji przezroczystości na stronę kompozytową. serwer, który z kolei może przekierować te operacje do KMS.
- W zapleczu do interakcji z podsystemem DRM (Direct Rendering Manager) jądra Linux wprowadzono obsługę następujących parametrów:
- „kolor tła” — umożliwia zmianę koloru tła ekranu na kontrolerach wyświetlacza obsługujących tę funkcję.
- „tryb mieszania” – do mieszania pikseli alfa po stronie kontrolera wyświetlania podczas rysowania bieżącej warstwy na wierzchu warstw niżej położonych.
- „format koloru”, aby wybrać format koloru (RGB, YUV) używany na wyjściu monitora.
- Do biblioteki libweston dodano API umożliwiające pobranie listy urządzeń dotykowych.
- Usunęliśmy zduplikowaną funkcjonalność, która została zastąpiona przez backendy i powłoki. Usunięto obsługę funkcji Screenshooter, backendu nagrywania VA-API, frontendu udostępniania ekranu Screenshare oraz powłoki Fullscreen-Shell. Nieatomowy KMS, drm_virtual_output_api, protokół xdg-shell-v6 Wayland oraz wtyczki Pipewire i Remoting zostały wycofane.
Źródło: opennet.ru
