Как устроен Prism
Prism помогает смотреть домашнюю видеоколлекцию там, где вам удобно. Фильмы могут храниться на разных компьютерах, серверах и NAS, а смотреть их можно в браузере или на телевизоре с Android TV — встроенным или на приставке.
Не нужно собирать все файлы на одном диске. Подключите источники видео к Prism, чтобы видеть коллекцию в общей библиотеке и включать фильмы на нужном экране.
Как устроен просмотр
Компоненты Prism выполняют разные задачи при просмотре. Источник хранит видео на диске и передаёт его по сети, плеер показывает его на экране, а координатор находит, откуда получить выбранный фильм, и отправляет плееру команду его открыть.
Например, фильм хранится на домашнем сервере, а вы хотите посмотреть его в гостиной. Координатор передаёт плееру адрес фильма, и телевизор получает видео напрямую от источника. Переносить файл на телевизор не нужно.
Источников и плееров может быть несколько. Один источник может отдавать видео разным плеерам, а один плеер — показывать фильмы с разных источников.
Компоненты Prism
Хост — доступ к вашим видеофайлам
Prism.Host делает папки с видео доступными в домашней сети. Он находит файлы, определяет их формат и передаёт видео плеерам. Если требуется преобразование формата, хост выполняет его на лету с помощью FFmpeg.
Хост запускается на компьютере или сервере, у которого есть доступ к файлам. Это могут быть как локальные папки, так и подключённое сетевое хранилище. К одной библиотеке можно подключить несколько хостов.
Плеер для Android TV — просмотр на телевизоре
Prism.Player.Android устанавливается на телевизор или приставку с Android TV. Он получает команду запуска и показывает выбранное видео. Во время просмотра можно пользоваться обычным пультом телевизора.
Плеер не привязан к одному источнику: он может открывать видео с разных хостов. Каталога фильмов в самом плеере нет — выбор фильма и отправку команды берёт на себя координатор или средство запуска, например Prism Launcher.
Библиотека — каталог и координатор
Prism.Library объединяет фильмы со всех подключённых хостов в общий каталог. Она хранит группы и сведения о фильмах, чтобы коллекцию можно было организовать независимо от расположения файлов на дисках.
Откройте адрес библиотеки в браузере, чтобы посмотреть список фильмов, выбрать нужный и начать просмотр прямо на странице.
Библиотека также выполняет роль координатора: знает о плеерах в сети, находит источник выбранного фильма и может отправить команду запуска на нужный плеер. Само видео идёт от хоста к плееру напрямую.
Установка и настройка библиотеки
Android-клиент библиотеки — выбор фильма и экрана
Prism.Library.Android позволяет выбирать фильмы на телефоне или устройстве с Android TV. Просматривайте коллекцию по группам, открывайте сведения о фильме и выбирайте плеер, на котором хотите его включить.
На телефоне интерфейс управляется касаниями, на телевизоре или приставке — пультом. Для подключения укажите в настройках адрес сервиса библиотеки.
Клиент выполняет роль контроллера: передаёт ваш выбор библиотеке, а она находит источник фильма и отправляет команду выбранному плееру. За само воспроизведение отвечает плеер для Android TV. Клиент библиотеки и плеер можно установить на одно устройство, чтобы выбирать и смотреть фильмы на телевизоре.
Установка и настройка Android-клиента
Launcher для Windows — запуск из проводника
Prism.Launcher позволяет отправить видео на выбранный плеер прямо из проводника Windows через меню «Отправить». Это удобно, когда нужный файл уже перед вами.
Launcher работает с локальным хостом и плеерами; сервис библиотеки для этого сценария не требуется.
Установка и настройка Launcher
Интеграция с умным домом
Умный дом тоже может быть координатором: находить фильмы через библиотеку, запускать их на нужном телевизоре и получать состояние плееров. Так просмотр можно включить в свои сценарии автоматизации.
Компоненты Prism взаимодействуют по открытым протоколам: HTTP — для доступа к каталогу и видео, MQTT — для команд плеерам и сообщений об их состоянии. Через эти интерфейсы можно подключать свои компоненты и заменять части системы.
С чего начать
- Компоненты — выберите нужные компоненты и способ установки.
- HTTP API хоста — подключите свой компонент к источнику видео.
- HTTP API библиотеки — работайте с каталогом и запускайте фильмы на плеерах.
- Управление плеерами через MQTT — настройте запуск из своей системы автоматизации.