Po prawie dwóch latach od publikacji ostatniego znaczącego wątku ukazało się otwarte centrum multimedialne Kodi 20.0, rozwijane wcześniej pod nazwą XBMC. Centrum multimedialne zapewnia interfejs do oglądania telewizji na żywo i zarządzania kolekcją zdjęć, filmów i muzyki, umożliwia nawigację po programach telewizyjnych, pracę z elektronicznym przewodnikiem telewizyjnym i organizowanie nagrań wideo według harmonogramu. Dostępne są gotowe pakiety instalacyjne dla systemów Linux, FreeBSD, Raspberry Pi, Android, Windows, macOS, tvOS i iOS. Kod projektu jest rozpowszechniany na licencji GPLv2+.
Początkowo projekt miał na celu stworzenie otwartego odtwarzacza multimedialnego dla konsoli do gier Xbox, jednak w procesie rozwoju został on przekształcony w wieloplatformowe centrum multimedialne działające na nowoczesnych platformach programowych. Interesujące funkcje Kodi obejmują obsługę szerokiej gamy formatów plików multimedialnych i dekodowanie wideo z akceleracją sprzętową; obsługa pilotów; możliwość odtwarzania plików poprzez FTP/SFTP, SSH i WebDAV; możliwość zdalnego sterowania poprzez interfejs WWW; obecność elastycznego systemu wtyczek, zaimplementowanego w Pythonie i dostępnego do instalacji poprzez specjalny katalog dodatków; przygotowanie wtyczek do integracji z popularnymi serwisami internetowymi; możliwość pobrania metadanych (tekstów, okładek, ocen itp.) istniejących treści. W oparciu o Kodi powstaje kilkanaście komercyjnych dekoderów i kilka otwartych oddziałów (Boxee, GeeXboX, 9x9 Player, MediaPortal, Plex).
Od ostatniej wersji w kodzie wprowadzono ponad 4600 zmian. Główne innowacje:
- Zaimplementowano możliwość pobierania wielu wystąpień dodatków binarnych. Na przykład możesz pobrać wiele wystąpień dodatku TVHeadend, aby połączyć się z różnymi serwerami, ale używając tych samych ustawień dodatku, takich jak grupy kanałów i kanały ukryte.
- Dodano obsługę sprzętowej akceleracji dekodowania wideo w formacie AV1 (w systemie Linux poprzez VA-API), opracowaną przez Open Media Alliance (AOMedia), która reprezentuje takie firmy jak Mozilla, Google, Microsoft, Intel, ARM, NVIDIA, IBM, Cisco , Amazon, Netflix, AMD, VideoLAN, Apple, CCN i Realtek. AV1 jest pozycjonowany jako publicznie dostępny, bezpłatny format kodowania wideo, który zauważalnie wyprzedza H.264 i VP9 pod względem poziomów kompresji. Do interfejsu API Inputstream dodano także obsługę AV1, dzięki czemu dodatki mogą używać interfejsu inputsream.adaptive do odtwarzania strumieni w formacie AV1 w dodatkach.
- Przeprojektowano system pracy z napisami. Kod przetwarzania formatu napisów został zmodernizowany, aby uprościć rozwój i konserwację. Dodano możliwość dynamicznego pozycjonowania czcionek, zmiany koloru tła i ramki obszaru napisów. Ulepszona obsługa formatów SAMI, ASS/SSA i TX3G. Dodano obsługę formatu napisów WebVTT i formatu czcionki OTF (OpenType Font).
- W systemie uruchamiania gier i emulatorów konsol do gier opartych na libretro zaimplementowano możliwość zapisywania stanu, aby kontynuować grę od przerwanej pozycji, nawet jeśli sama gra nie obsługuje zapisu.
- Dla platformy Windows zaimplementowano pełną obsługę rozszerzonego zakresu dynamiki (HDR, High Dynamic Range). Linux zapewnia możliwość konfiguracji wyjścia HDR przy użyciu interfejsu API GBM (Generic Buffer Management).
- Dodano osobne ustawienie do ustawiania głośności efektów dźwiękowych w interfejsie.
- Dodano nowe okno dialogowe wyboru koloru.
- Dodano możliwość pracy przez proxy HTTPS.
- Zaimplementowano możliwość dostępu do pamięci zewnętrznej za pomocą protokołu NFSv4.
- Dodano obsługę protokołu WS-Discovery (SMB Discovery) do identyfikacji usług w sieci lokalnej.
- Menu kontekstowe w różnych oknach otrzymały ujednoliconą formę i zaimplementowano takie funkcje, jak odtwarzanie albumu bezpośrednio z widżetów.
- Na platformie Linux udoskonalono odtwarzanie dysków optycznych. Dodano domyślne mocowanie napędów optycznych za pomocą udisków. Zaimplementowano wznawianie odtwarzania z obrazów ISO płyt Blu-Ray i DVD.
- Wiele pracy włożono w poprawę stabilności, wydajności i bezpieczeństwa. Rozszerzono API dla dodatków.
- Dodano obsługę serwera multimediów PipeWire.
- Zintegrowana obsługa kontrolerów gier Steam Deck.
- Dodano obsługę urządzeń Apple opartych na chipie M1 ARM.
Źródło: opennet.ru