После двух лет с момента публикации прошлой значительной ветки состоялся релиз открытого медиацентра Kodi 19.0, ранее развивавшийся под именем XBMC. Готовые установочные пакеты доступны для Linux, FreeBSD, Raspberry Pi, Android, Windows, macOS, tvOS и iOS. Для Ubuntu сформирован PPA-репозиторий. Код проекта распространяется под лицензией GPLv2+.
С момента прошлого выпуска в кодовую базу было внесено около 5 тысяч изменений от 50 разработчиков, в том числе добавлено примерно 600 тысяч строк нового кода. Основные новшества:
- Значительно улучшена обработка метаданных: Добавлены новые теги и предоставлена возможность загрузки файлов с тегами по HTTPS. Улучшена работа с коллекциями и многодисковыми наборами компакт-дисков. Улучшена обработка даты выхода альбомов и продолжительности воспроизведения альбома.
- Расширены возможности библиотеки медиафайлов. Усилена связь различных компонентов с библиотекой музыки, например, для извлечения информацию о музыкантах и альбомах, одновременного показа видео и альбомов при поиске, отображения дополнительных сведений в диалогах. Улучшена группировка видеоклипов по музыкантам. Улучшена обработка файлов “.nfo” на разных платформах.
- Добавлена настройка для автоматического открытия полноэкранного режима визуализации музыки при начале воспроизведения. Предложен новый режим визуализации музыки, оформленный в стиле интерфейса из фильма Матрица.
- Добавлена возможность изменения уровня прозрачности субтитров и предоставлено новое тёмно-серое оформление субтитров. Предоставлена возможность загрузки субтитров через указание URI (URL-ссылка, локальный файл).
- Встроен программный декодировщик видео в формате AV1.
- Реализованы новые обработчики масштабирования видео, реализованные на базе OpenGL.
- В используемой по умолчанию теме оформления Estuary, оптимизированной для работы на телевизионных экранах с управлением через пульт дистанционного управления, переработано окно визуализации музыки. В окно визуализации добавлены дополнительные мультимедийные информационные флаги. По умолчанию задействован широкоформатный режим отображения списка воспроизведения с возможностью перемещения списка в любую область экрана через боковое меню. Добавлен новый информационный блок “Now Playing”, показывающий детальные сведения о воспроизводимой в текущий момент композиции и следующей композиции в списке воспроизведения.
- Улучшено качество изображений в играх c пиксельной графикой.
- Добавлена поддержка платформы tvOS и прекращена поддержка 32-разрядных iOS. На платформе iOS обеспечена поддержка игровых контроллеров, работающих через Bluetooth, таких как Xbox и PlayStation. Добавлен индикатор свободного и общего пространства на накопителе.
- На платформе Android добавлена поддержка статического HDR10 для любых источников и динамического HDR Dolby Vision для сервисов потокового вещания. На платформе Windows добавлена поддержка статического HDR10.
- Добавлены написанные на Python обработчики загрузки метаданных (scraper) для музыки – “Generic Album Scraper” и “Generic Artist Scraper”, а также для фильмов и телешоу – “The Movie Database Python” и “The TVDB (new)”. Данные обработчики заменили собой старые загрузчики метаданных на базе XML.
- Улучшен режим PVR (просмотр Live TV, прослушивание интернет-радио, работа с электронным телегидом и организация видеозаписи по расписанию). Добавлена система напоминаний о просмотре. Реализованы виджеты домашнего экрана для групп каналов TV и радио. Улучшен интерфейс управления каналами и группами. Добавлена возможность сортировки каналов и EPG в соответствии с порядком, выданным бэкендом. Увеличена производительность поиска, EPG и телегида. Предоставлен API для разработки дополнений к PVR на C++.
- Добавлено предупреждение о возможных проблемах безопасности при запуске сетевого обработчика на внешнем сетевом интерфейсе. По умолчанию включён запрос пароля при обращении к web-интерфейсу.
- Для установленных дополнений обеспечена проверка источника для того, чтобы недопустить перезапись дополнения при появлении дополнения с тем же именем в подключённом стороннем репозитории. Добавлены дополнительные предупреждения о нарушении целостности или устаревании дополнений.
- Прекращена поддержка Python 2. Разработка дополнений переведена на Python 3.
- Предоставлен единый универсальный исполняемый файл для Linux, поддерживающий работу поверх X11, Wayland и GBM.
Напомним, что изначально, проект был нацелен на создание открытого мультимедиа плеера для игровой приставки XBOX, но в процессе развития трансформировался в кросс-платформенный медиацентр, работающий на современных программных платформах. Из интересных функций Kodi, можно отметить поддержку широкого спектра форматов мультимедиа и средств аппаратного ускорения декодирования видео; поддержка пультов дистанционного управления; возможность проигрывания файлов по FTP/SFTP, SSH и WebDAV; возможность удалённого управления через web-интерфейс; наличие гибкой системы плагинов, реализованных на языке Python и доступных для установки через специальный каталог дополнений; подготовка плагинов для интеграции с популярными online-сервисами; возможность загрузки метаданных (текстов песен, обложек, рейтинга и т.п.) для имеющегося контента. На базе Kodi развивается около десятка коммерческих телеприставок и несколько открытых ответвлений (Boxee, GeeXboX, 9×9 Player, MediaPortal, Plex).