← Назад к статьям

Разница между настройками сервера и клиента в программе для видеонаблюдения Xeoma

Несмотря на то, что для установки программы для видеонаблюдения Xeoma достаточно всего одного файла, она внутренне делится на 2 важных компонента: сервер и клиент. В общих чертах сервер берёт на себя всё самое важное (получает видео от камер, применяет к нему детекторы и фильтры, работает с архивами), а клиент просто демонстрирует результаты работы сервера на экране. Оба компонента могут работать как на одной и той же машине, так и на разных устройствах.

Их можно настраивать отдельно друг от друга, чтобы добиться максимального результата, но отличить настройки сервера от настроек клиента, просто глядя на интерфейс, бывает нелегко. Данная статья поможет вам усвоить эту разницу, что пригодится, например, при диагностике неисправностей и при тонкой настройке.

Сервер

Подавляющим большинством настроек в Xeoma заведует именно сервер.

  1. Модули – настройками всех без исключения модулей занимается сервер. Подключившись клиентом, эти настройки можно увидеть и изменить, но клиент эту информацию сам не хранит.
  2. Права пользователей – так же, как и с модулями, в окне Главное меню → Удалённый доступ → Пользователи можно проверять и изменять права пользователей (при условии, что используется пароль администратора), но работает со всеми этими данными только сервер.
  3. Часовые пояса – в том же окне можно задать для Xeoma часовой пояс; этот конкретный параметр актуален только для сервера. Однако часовые пояса имеют значение не только в пределах этого окна, мы вернёмся к этому вопросу, когда будем рассматривать настройки клиента.
  4. Лицензии – только сервер занимается вопросами активации различных лицензий. Стоит заметить, что произвести активацию на сервере можно, подключившись к нему клиентом, но весь этот процесс в любом случае будут отрабатывать настройки сервера.
  5. Ретранслятор – несмотря на то, что его задача – дать возможность клиенту подключиться к серверу из внешней сети, все настройки Ретранслятора (в т.ч. его активация) применяются именно к серверу.
  6. Установка (в автостарт) – практически все разновидности установки Xeoma касаются исключительно серверной части; единственное исключение – опция Автостарт клиента.
  7. Архив – как чистым видео, так и метаданными к нему занимается только сервер.
  8. Облачный сервис (в 1 клик) – с его помощью можно сделать ПК передаточным звеном между камерами и Xeoma Cloud; эту роль может выполнять только сервер.
  9. Декодирование видео – эта тема несколько сложнее, т.к. и сервер, и клиент могут принимать в этом участие, поэтому мы посвятим ей отдельный раздел.
  10. Буферизация – если в настройках Универсальной камеры стоит галочка Буферизированное чтение видеопотока, то сервер будет буферизировать видео от камер для более плавного проигрывания.
  11. Группы камер – поскольку группы задаются настройками конкретных модулей (Универсальная камера и Просмотр и архив), то ими тоже ведает сервер.
  12. eMap – сервер хранит как сами карты, так и расположение камер на них, а клиент можно использовать для того, чтобы загрузить на сервер новую карту или внести коррективы в уже существующую.
  13. Скриншоты – команду на создание скриншота отправляет клиент (по нажатию соответствующей кнопки), но полученный файл можно сохранить как на клиенте, так и на сервере. Сам процесс создания скриншота производится именно на сервере.
  14. PTZ – по аналогии со скриншотами, клиент высылает на сервер запрос PTZ, а сервер уже напрямую общается с камерами и хранит соответствующие настройки (например, туры и пресеты).

Клиент

Большинство тех настроек, что касаются визуальных эффектов на экране, находятся в ведении клиента.

  1. Меню просмотра – практически все элементы этого меню (страницы, визуализация, настройки окна и т.д.) хранятся на стороне клиента*; исключения: Синхронизация времени на ONVIF-камерах и eMap – их хранят настройки сервера.
  2. Мультисерверный режим – всё, что касается групп серверов (их адреса и пароли), хранится именно на клиенте.
  3. Языки – язык интерфейса актуален только для клиента, т.к. сервер работает полностью в фоне.
  4. Декодирование видео – об этом в отдельном разделе.
  5. Буферизация – если в Меню просмотра → Настройки декодирования стоит галочка Включить буферизацию на клиенте, то клиент будет буферизировать видео, полученное от сервера, для более плавного проигрывания.
  6. Часовые пояса – подключаясь к серверу, клиент проверяет системный часовой пояс своего ПК и сверяет его с часовым поясом сервера. Если они неодинаковы, то клиент вносит изменения в шкалу времени архива, чтобы показывать на ней время по часовому поясу клиента.
  7. Тепловые карты – тепловые карты, сгенерированные в архиве, хранятся на клиенте.


*В этом пункте достаточно легко ошибиться, настраивая сервер: порядок камер на экране и страницы с камерами по умолчанию уникальны для каждого клиента. Таким образом, если на сервере с GUI запустить и сервер, и клиент, настроить определённый порядок камер, а затем подключиться к нему с клиента на другом устройстве – на этом устройстве будет не тот порядок камер, какой был вручную задан на сервере. Однако можно заставить сервер хранить и такие настройки.

Декодирование

Декодирование – это процесс декомпрессии сжатого видео, только так это видео можно просмотреть. Xeoma позволяет проводить декодирование как на сервере, так и на клиенте, но делает это немного по-разному. Система получается очень гибкой и, как следствие, имеет несколько параметров и множество их сочетаний.

  • Если декодирование нужно полностью переложить на клиент, то на сервере можно сделать следующее: Главное меню → Удалённый доступ → Пользователи, ставим здесь галочку Принудительное декодирование видео на клиенте (для всех пользователей). Таким образом, сервер заставляет всех подключающихся к нему клиентов заниматься декодированием самостоятельно.
  • Если для каких-то пользователей важно, чтобы декодированием занимался сервер, то в этом же окне можно поставить галочку Разрешить декодирование видео на сервере (для текущего пользователя). В таком случае для нужных пользователей сервер будет декодировать видео сам, а прочие пользователи будут заниматься декодированием на клиенте.
  • В окне Меню просмотра → Настройки декодирования клиент может заставить указать, чьей стороне заниматься декодированием, с помощью выпадающих списков Декодирование видео на клиенте при просмотре в реальном времени и Декодирование видео на клиенте при просмотре архива (при этом Автоматическое определение считает приоритетным декодирование на стороне клиента, но перенесёт его на сторону сервера в случае, если клиент не справляется). Эти настройки уникальны для каждого клиентского устройства.
  • Дополнительно в Xeoma можно использовать аппаратное ускорение декодирования, которое тоже может производится как на сервере, так и на клиенте.

Также стоит заметить, что если сервер использует какие-либо детекторы, то он в любом случае будет производить декодирование на своей стороне. Таким образом, даже если декодирование полностью перенесено на клиент, сервер будет параллельно декодировать видео сам.

29 апреля 2021

Читайте также:
Клиент-серверная архитектура Xeoma
Новый микрокомпьютер Raspberry Pi 4