rilascio stabile del server composito , sviluppando tecnologie che facilitano il pieno supporto del protocollo in Enlightenment, GNOME, KDE e altri ambienti desktop. Lo sviluppo di Weston è mirato a fornire una base di codice di alta qualità e esempi pratici per l'uso di Wayland in ambienti desktop e in soluzioni incorporate, come piattaforme per sistemi di infotainment automobilistici, smartphone, televisori e altri dispositivi di consumo.
Il cambiamento del numero di versione principale di Weston è dovuto a modifiche all'ABI che rompono la compatibilità. Le modifiche in Weston:
- Aggiunta del supporto per la tecnologia di protezione contro la copia illegale dei contenuti , che viene utilizzata per crittografare il segnale video trasmesso tramite interfacce DVI, DisplayPort, HDMI, GVIF o UDI. In libweston è stato implementato un flag per le chiamate weston_output, weston_surface e weston_head per abilitare la protezione dei contenuti trasmessi. Aggiunto un esempio di applicazione client per visualizzare contenuti protetti;
- Aggiunto un plugin per il server multimediale , sviluppato per sostituire PulseAudio e oltre all'audio supportare anche il processamento dei flussi video. Il plugin per organizzare l'uscita su un desktop remoto in modo simile al plugin di uscita basato su GStreamer precedentemente disponibile. Sul lato ricevente può essere utilizzato qualsiasi client con supporto per pipewire, inclusi GStreamer (ad esempio, «gst-launch-1.0 pipewiresrc ! video/x-raw,format=BGRx ! …»);
- Nel gl-renderer è stato aggiunto il supporto per l'estensione EGL per l'aggiornamento selettivo del contenuto delle superfici, saltando le aree in cui non ci sono state modifiche;
- Aggiunto un nuovo framework weston_debug per la debug e la registrazione degli eventi (weston_log_context);
- Aggiunti nuovi file di intestazione libweston-internal.h e backend.h. Nel primo sono state trasferite funzioni per lavorare con
‘weston_compositor’, ‘weston_plane’, ‘weston_seat’, ‘weston_surface’, ‘weston_spring’, ‘weston_view’, mentre nel secondo — ‘weston_output’; - Effettuate modifiche per garantire ;
- Nel compositor-drm è stato aggiunto il supporto per la proprietà FB_DAMAGE_CLIPS. Il codice è stato separato in file distinti per l'estrazione dei parametri EDID, il trattamento delle modalità video, l'interazione con l'API KMS, il lavoro con il framebuffer e la gestione degli stati;
- Aggiunto un plugin 'file stream' per la trasmissione di contenuti da file;
- I backend backend-drm sono stati spostati in una directory separata,
backend-headless,
backend-rdp,
backend-wayland,
backend-x11 e
backend-fbdev; - Per ottimizzare le immagini PNG è stato utilizzato il pacchetto basato su un algoritmo di compressione ;
- È stata aggiunta la compatibilità con le estensioni xdg_output_unstable_v1 e zwp_linux_explicit_synchronization_v1. Sono stati aumentati i requisiti per la versione del pacchetto (per la compilazione è richiesta la versione 1.18);
- Completato il passaggio al sistema di build . Il supporto per la build utilizzando autotools è stato interrotto.
Fonte: opennet.ru
