KODI — довольно развитый медиацентр для пк. Работает под всеми ОС: доступны сборки для популярных дистрибутивов Linux, приложение под Windows, как самостоятельное приложение так и вариант из Microsoft Store, MacOS; под мобильные платформы Android, iOS; есть сборки под одноплатники. Подробнее на офф.сайте kodi.tv
В этой статье я расскажу, как объединить несколько медиацентров (платформа не имеет значения) под одной базой. Для чего это нужно? Пример из жизни: Вы смотрите любимый фильм/сериал в комнате, внезапно вам хочется перекусить. Останавливаете воспроизведение (в этом случаем медиацентр запоминает время на котором просмотр закончился), идете на кухню (или туда где есть другое устройство с kodi на борту) и продолжаете просмотр с того места, где остановились ранее. Другой вариант, медиа-экраны в каком-либо заведении, где не требуется синхронность воспроизведения, но нужен единый плейлист.
Итак, для реализации нам потребуется:
- Несколько медиацентров
- Сервер баз данных, на данный момент поддерживается только MySQL, и то не рекомендуется разработчиками, как экспериментальная фича
- Единое место хранение медиа, например, NAS
Настройка по шагам:
- Настройка медиацентра с сетевым источником медиа
- Настройка медиацентра на работу с базой данных
- Настройка остальных медиацентров
Настройка медиацентра с сетевым источником медиа
К сожалению, если ваш медиацентр, уже настроен на работу с локальными источниками медиа, вам придется попрощаться с текущей базой. В нее входят:
- Все обложки
- Названия фильмов
- Описания фильмов
- Списки актеров
- Состояние фильмов/сериалов, место где остановился просмотр
- Рейтинг, если задавался
- Имена исполнителей
- Описания исполнителей
Для работы нескольких медиацентров с одной библиотекой нужно чтобы все они имели доступ к медиа. Решается это хранение медиафайлов на сетевом хранилищ или файловом сервере, на настройке хранилища останавливаться не буду — это тема для отдельной статьи.
Нам придется полностью очистить медиатеку, для этого идем в «Настройки -> Медиа -> Медиатека». Выбираем «Очистка медиатеки» в Видео и Аудио.
Далее возвращаемся на главную страницу и переходим в раздел «Видео» и выбираем пункт «Добавить видео»
Откроется окно «Добавить видео источник», в котором нажимаем кнопку «Обзор»
В следующем окне «Выберите новый ресурс» опускаемся в самый низ и выбираем «Добавить сетевой адрес…»
Откроется окно «Добавить сетевой адрес»
Протокол (в нашем случае настраиваем обычную smb/windows папку) — Сеть Windows (SMB)
Имя сервера — указываем имя нашего хранилища, лучше указать явно IP адрес, так как на разных клиентах могут возникать проблемы с разрешением имен
Если перейти к Обзору то Kodi попытается просканировать Windows сеть на наличие сетевых ресурсов.
Общая папка — имя «расшаренной» папки с вашими фильмами
Имя пользователя и Пароль — мне так и не удалось заставить Kodi работать с анонимным доступом, поэтому лучше на файловом ресурсе создать отдельного пользователя для kodi с паролем.
Все те же самые операции необходимо повторить для библиотеки аудио.
Настройка медиацентра на работу с базой данных
Подразумевается, что в вашей локальной сети уже имеется сервер MySQL (других kodi пока не поддерживает), про сейчас замечу только то, что он должен быть доступен по сети, и, желательно, завести отдельного пользователя для медиацентра.
Перейдем к настройке самого медицентра. Нам необходим будет файл advancedsettings.xml
. По-умолчанию этого файла не существует, его надо будет создать в папке:
Android | Android/data/org.xbmc.kodi/files/.kodi/userdata/ |
iOS | /private/var/mobile/Library/Preferences/Kodi/userdata/ |
LibreELEC | /storage/.kodi/userdata/ |
Linux | ~/.kodi/userdata/ |
OSMC | /home/osmc/.kodi/userdata/ |
Mac | /Users/<your_user_name>/Library/Application Support/Kodi/userdata/ |
Windows | %APPDATA%\Kodi\userdata |
Windows UWP | %LOCALAPPDATA%\Packages\XBMCFoundation.Kodi_4n2hpmxwrvr6p\LocalCache\Roaming\Kodi\ |
Его содержимое:
<advancedsettings> <videodatabase> <type>mysql</type> <host>192.168.1.4</host> <port>3306</port> <user>kodi</user> <pass>XXXXXXXXXXX</pass> </videodatabase> <musicdatabase> <type>mysql</type> <host>192.168.1.4</host> <port>3306</port> <user>kodi</user> <pass>XXXXXXXXXXX</pass> </musicdatabase> <videolibrary> <importwatchedstate>true</importwatchedstate> <importresumepoint>true</importresumepoint> </videolibrary> </advancedsettings>
host
— хост с базой данных
posrt
— порт базы данных, по-умолчанию 3306
user
— пользователь mysql с правами создавать базы и писать в них
pass
— пароль пользователя
После этого можно запускать сканирование медиатеки. Все найденные и опознаные медиа будут добавлены уже в базу данных, а не в локальное хранилище центра.
Настройка остальных медиацентров
Для остальных медиацентров нужно выполнить полностью первый пункт. А также скопировать файл advancedsettings.xml по пути указанному в табличке. После этого перезапустить центр.
Если у вас остались вопросы, пишите в комментарии, с радостью на все отвечу.