Xeoma превращает IP-, ONVIF-, RTSP- и USB-камеры в настраиваемую систему видеонаблюдения: показывает живое видео, записывает архив, реагирует на движение и другие события, отправляет уведомления, управляет поворотными камерами и даёт удалённый доступ к серверу наблюдения. Программа особенно полезна там, где готового режима «камера записывает всё подряд» недостаточно: дома можно оставить запись только по движению, в офисе — разделить права операторов, на складе — контролировать пропадание сигнала и место на диске, а в более сложной системе — связать несколько детекторов, расписания и действий в одну схему. Главная особенность Xeoma — модульные цепочки: источник видео, фильтры и действия соединяются визуально, поэтому один и тот же поток можно одновременно писать в архив, показывать оператору и передавать в другие модули.
- Поддержка 50+ мультимедиаформатов
- 150+ эффектов для видео
- Хромакей для замены фона
- Бесплатный режим без удалённого доступа
- Часть AI-модулей лицензируется отдельно
- Pro-функции недоступны в младших редакциях
Как устроена Xeoma и почему важны модульные цепочки
В Xeoma камера сама по себе — только источник данных. Практическое поведение системы задаёт цепочка модулей. Самая короткая рабочая схема состоит из источника и назначения: например, «Универсальная камера» → «Просмотр и Архив». Такой вариант даёт постоянное отображение и запись. Если между ними вставить «Расписание» и «Детектор движения», запись будет проходить только тогда, когда совпали оба условия: текущее время разрешено расписанием и детектор считает движение подходящим под заданные параметры.
Логика похожа на визуальный конструктор. В верхней части окна детальных настроек находятся категории и доступные модули, а в рабочей области — соединённые узлы текущей камеры. Модули делятся на источники, фильтры и назначения. Источник создаёт поток: это может быть камера, микрофон, файл, экран, FTP- или HTTP-приёмник. Фильтр решает, пропускать ли поток дальше, либо модифицирует его. Назначение делает с прошедшим сигналом конкретное действие: показывает, записывает, отправляет письмо, сохраняет файл, публикует поток или выполняет другую операцию.
Схему можно разветвлять. Например, от «Универсальной камеры» один путь ведёт через «Детектор движения» к «Просмотру и Архиву», а второй — через «Детектор проблем» к «Отправке Email». Тогда обычное движение отвечает только за запись нужных эпизодов, а потеря связи, затемнение кадра или нехватка ресурсов формируют отдельное уведомление. Это удобнее, чем пытаться свести все условия в один универсальный переключатель.
Разветвления могут и сходиться. Практический пример — две зоны одной камеры с разной чувствительностью. Для первой ветки ставят один «Детектор движения», для второй — другой, после чего обе ветки соединяют с одним архивом. Запись начинается, когда условие выполнено хотя бы в одной ветви. Важно учитывать логику слияния: если сигналы из нескольких ветвей приходят одновременно, в модуль назначения попадает одна из них, поэтому сложные схемы лучше проектировать осознанно, особенно если потом предполагается поиск по метаданным.
Состояние цепочки видно непосредственно в детальных настройках. Рабочие соединения отображаются светлыми; если один из фильтров блокирует поток, последующие элементы становятся неактивными. Это полезный диагностический признак: когда камера видна, но архив не заполняется, сначала нужно смотреть не на диск, а на цепочку и выяснять, какой модуль перестал пропускать сигнал.

У новых интерфейсных вариантов верхняя панель в детальных настройках компактна: подписи к модулям и строка поиска появляются при наведении. Для длинных наборов это заметно ускоряет работу. Можно искать сразу несколько названий, разделяя варианты символом вертикальной черты. Саму цепочку разрешено оставлять на экране без лишних панелей — элементы управления постепенно скрываются при бездействии и появляются после движения мыши, нажатия клавиши или касания.

У каждого модуля есть собственный диалог параметров. В современных версиях цепочкам можно давать понятные названия модулей вместо одинаковых стандартных подписей. Это не косметика: в системе с десятками камер подписи вроде «Детектор движения — входная дверь» и «Детектор движения — парковка» уменьшают риск поменять параметры не того узла. Изменённое имя применяется после подтверждения окна настроек.
Для фильтров важны три состояния. Включённый модуль обрабатывает поток по своим правилам. Режим игнорирования позволяет временно пропустить модуль, не разрушая цепочку. Выключенный модуль останавливает прохождение сигнала дальше. Если при отладке нужно быстро понять, виноват ли конкретный фильтр, безопаснее сначала перевести его в игнорирование, проверить поведение цепочки, а уже затем корректировать параметры.
Установка и начало работы
На настольных системах Xeoma можно запустить без классической установки. Исполняемый файл стартует серверную и клиентскую части одновременно: сервер принимает и обрабатывает видеопотоки, а клиент показывает интерфейс и подключается к серверу. Такой запуск удобен для первичной проверки совместимости камер. Для постоянного видеонаблюдения серверную часть обычно переводят в автозапуск, чтобы запись возобновлялась вместе с системой после перезагрузки.
Диалог установки открывается через «Главное меню» → «Установить» → «Установить». В нём выбирают, какую часть запускать автоматически и куда поместить файлы программы. На сервере без необходимости постоянного локального просмотра логично оставлять сервер в автозагрузке, а клиент запускать по мере надобности. На рабочем месте оператора, наоборот, может понадобиться автоматический запуск клиента с подключением к удалённому серверу.

При первом старте Xeoma показывает начальный экран и запускает сервер. Если серверная часть ещё не успела подняться, появляется диалог подключения с сообщением об инициализации. В локальной конфигурации адресом обычно служит localhost; для удалённого подключения используются адрес другого сервера, P2P-идентификатор или данные выбранного способа доступа. Пароль можно сохранить, но на общедоступном компьютере это стоит делать только после настройки отдельной учётной записи с ограниченными правами.

Если клиент и сервер разных выпусков, Xeoma предупреждает о несовпадении. Игнорирование предупреждения иногда позволяет соединиться, но производитель отдельно указывает на возможные проблемы с просмотром архива и другими функциями. Для рабочей системы разумная практика — обновлять клиент и сервер согласованно и перед изменениями сохранять конфигурацию.
В Linux сервер можно запускать без графической оболочки. Для командного запуска предусмотрено разделение на серверную и клиентскую части; это полезно на мини-ПК, Raspberry Pi и выделенных серверах. На стороне компьютера, с которого оператор просматривает камеры, графический клиент всё равно нужен. В консольных Linux-сценариях также стоит проверить зависимости для звука и права исполнения файла, прежде чем искать ошибку в самой конфигурации камер.
После первого запуска программа предлагает поиск камер в локальной сети. Автопоиск идёт в фоне, поэтому интерфейсом можно пользоваться одновременно. Если нужные устройства найдены, сканирование можно остановить. Камеры, доступные без авторизации или со стандартными данными, добавляются автоматически; защищённые устройства появляются в списке добавления и требуют правильного логина и пароля.
Стартовая цепочка зависит от выбранного режима и редакции. Для расширенных режимов типичная схема включает «Универсальную камеру», «Расписание», «Детектор движения» и «Просмотр и Архив», а отдельной веткой — «Детектор проблем» и отправку письма. Эту заготовку не следует воспринимать как окончательную: после первого запуска нужно проверить срок хранения архива, путь на диск, зоны движения, уведомления и расписание. Значения по умолчанию рассчитаны на быстрый старт, а не на конкретный объект.
Добавление IP-, ONVIF-, RTSP- и USB-камер
Для камеры в той же сети сначала имеет смысл использовать простой локальный поиск из меню «+». Xeoma не требует заранее выбрать производителя и пытается определить доступные потоки автоматически. Если устройство отдаёт несколько потоков, программа старается использовать схему dual streaming: более лёгкий поток для общего просмотра и основной поток более высокого качества для архива. Это один из ключевых способов уменьшить нагрузку на сервер и сеть без ухудшения качества записей.
Камеру за пределами локальной сети удобнее искать через «Поиск по IP/паролю». В диалоге указываются известный адрес, данные авторизации и, при необходимости, порт. Можно передать список адресов и учётных данных, чтобы не добавлять устройства по одному. Если камера подключена через DVR или использует нестандартный путь потока, автоматический поиск может ничего не найти — тогда переходят к ручному добавлению.
Команда «Добавить новую камеру вручную» создаёт стандартную цепочку и сразу открывает настройки «Универсальной камеры». Здесь вводят адрес потока для просмотра и, при наличии отдельного потока, адрес для прямой записи в архив. Для RTSP-источников можно выбрать транспорт Auto, TCP, UDP или UDP Multicast. Если сеть нестабильна, TCP часто оказывается предсказуемее; если важна минимальная задержка и инфраструктура это позволяет, возможен UDP. Выбирать протокол нужно по поведению конкретной камеры и сети, а не по универсальному правилу.
В поле потока Xeoma показывает найденные параметры: разрешение, частоту кадров, кодек и битрейт. Эти сведения берутся с камеры. Изменение качества обычно выполняется в веб-интерфейсе самой камеры, а не в Xeoma. Если в программе выбран не тот поток, полезно сначала проверить список URL в «Универсальной камере», а затем настройки кодирования на устройстве.
Для общего мультиоконного просмотра желательно использовать поток с более низкими параметрами. В архив можно направить основной H.264 или H.265-поток. Такой режим позволяет хранить качественную запись и не заставлять процессор одновременно декодировать десятки тяжёлых потоков только ради сетки превью. Если камера умеет отдавать два потока, это почти всегда полезнее, чем уменьшать качество единственного архивного потока.
Опция буферизированного чтения делает воспроизведение плавнее, но добавляет задержку. Документация прямо предупреждает о задержке порядка нескольких секунд, поэтому этот параметр уместен для нестабильного потока, но нежелателен там, где оператор вручную управляет PTZ и ожидает мгновенной реакции. При проблеме «картинка плавная, но отстаёт от реальности» первым делом стоит проверить именно буферизацию.
Для H.264 доступна экономия процессорного времени за счёт декодирования только ключевых кадров при просмотре. Она особенно заметна на потоках высокого разрешения, когда оператору не нужен полный кадровый ряд в общей сетке. Архив при этом может продолжать сохраняться из основного потока. Это не заменяет корректную настройку dual streaming, но помогает на системах, где камеры не дают удобного второго потока.
USB-камеры и карты видеозахвата тоже могут использоваться как источники. Аналоговые платы должны корректно определяться операционной системой и предоставлять стандартный интерфейс захвата; каждый канал рассматривается как отдельное устройство. Если камера видна в системе, но не появляется в Xeoma, сначала стоит проверить драйвер и доступность устройства другим программам, а уже затем настройки цепочки.

После добавления несколько камер заполняют главное окно. В современных вариантах интерфейса изображение может растягиваться на ячейку, чтобы убрать пустые поля. Если это обрезает важную часть кадра, в управлении раскладками можно отключить растягивание и вернуть показ полного изображения с возможными боковыми полосами. Для охранной камеры сохранность краёв кадра важнее эстетики сетки, поэтому режим стоит выбирать по зоне контроля.
Главное окно, сетки, страницы и быстрые настройки
Главное окно рассчитано на постоянную операторскую работу. В центре находятся ячейки камер, снизу — панель основных команд, а через главное меню доступны удалённый доступ, пользователи, регистрация, установка, информация и системные функции. При бездействии элементы управления могут скрываться, чтобы не перекрывать видео; любое действие возвращает их.

Для нескольких десятков камер лучше сразу разделить их по страницам. В меню раскладок можно переключить просмотр в настраиваемый режим, выбрать нужные камеры и создать страницу. Страницы переименовываются по смыслу: «Первый этаж», «Склад», «Парковка», «Периметр». Это быстрее, чем каждый раз искать нужный канал в общей сетке. Камеры в раскладке можно переставлять перетаскиванием, а для крупных систем дополнительно использовать дерево устройств и группы.
Быстрые настройки открываются для выбранной камеры и показывают основные модули её цепочки. Такой экран удобен для оперативных действий: временно выключить фильтр, перейти в детальные настройки, удалить или добавить модуль, запустить просмотр архива, открыть управление PTZ или сделать снимок. Для сложной перестройки логики всё равно нужно переходить в детальные настройки — быстрый режим предназначен не для проектирования большой схемы, а для повседневного управления.

Если камера поддерживает PTZ, в окне появляются элементы поворота, наклона, масштабирования и дополнительные команды. Набор доступных кнопок зависит от возможностей устройства и лицензии. Xeoma запоминает, нужно ли показывать виртуальный джойстик для конкретной камеры, поэтому оператору не приходится каждый раз включать его вручную.

Для PTZ полезно заранее настроить пресеты — фиксированные позиции камеры. Тогда оператор не тратит время на точное наведение вручную, а вызывает заранее сохранённую точку. Тур PTZ позволяет проходить по пресетам по расписанию. В системах, где нескольким пользователям разрешено управление одной поворотной камерой, нужно также настроить права и приоритеты, иначе два оператора могут одновременно отправлять противоречивые команды.
Интерактивная карта eMap нужна, когда оператору важнее видеть физическое расположение камер, чем список названий. На план помещения или территории расставляются камеры; по клику открывается изображение, а срабатывания детекторов можно визуально привязать к точкам объекта. Для многоэтажного здания поддерживаются отдельные карты этажей. В больших системах такой способ быстрее обычной сетки, потому что поиск камеры происходит по месту, а не по номеру.
Имя камеры лучше задавать в «Универсальной камере» и придерживаться единой схемы. Название «CAM12» мало помогает при тревоге, а «Склад — ворота 2» сразу даёт контекст. То же имя используется в других представлениях, поэтому аккуратное именование в начале проекта экономит время позже — особенно в архивах, уведомлениях и списках доступа пользователей.
Детальные настройки и параметры модулей
Окно детальных настроек — рабочее место для построения логики Xeoma. В верхней панели доступны готовые образцы, источники, фильтры и назначения. В центре расположена схема выбранной камеры, а внизу — навигация и действия над цепочкой. Для системы из нескольких камер полезно переключаться между схемами прямо в этом окне, не возвращаясь каждый раз в общий просмотр.
Добавление модуля сводится к выбору нужного элемента и соединению его с цепочкой. Но порядок имеет значение. Если «Расписание» стоит до «Детектора движения», то детектор вообще не получает поток в запрещённое время. Если модуль уведомления подключить после детектора, письмо уходит только при его срабатывании. Если подключить назначение непосредственно к камере параллельной веткой, оно получает постоянный поток независимо от условий другой ветви.
Не стоит собирать одну гигантскую последовательность из всех функций. Цепочка легче обслуживается, когда каждое ответвление отвечает за понятную задачу: запись, тревоги, удалённый просмотр, интеграцию. Тогда отключение одного сценария не разрушает остальные. Например, обслуживание почтового сервера не должно останавливать архив, а временное отключение аналитики — лишать оператора живого видео.
Окно настроек конкретного модуля показывает только относящиеся к нему параметры. У «Детектора движения» это зона, чувствительность, длительность, размер объекта и способ сравнения кадров; у «Просмотра и Архива» — путь, срок и объём хранения; у «Веб сервера» — адреса потоков, логины, пароли и параметры трансляции. Внизу находятся команды подтверждения и отмены. После изменения критичной настройки лучше вернуться в цепочку и проверить, что линии до назначения остались активными.
Поля интерфейса визуально различают редактируемые и информационные значения. Это особенно полезно в сетевых модулях: часть адресов Xeoma генерирует сама, а часть пользователь меняет вручную. Не нужно пытаться «исправлять» серое информационное поле — если требуемый параметр недоступен для редактирования, его источник находится в другом модуле или на стороне камеры.
Переименование модулей полезно сочетать с документированием схемы. Встроенных комментариев к проекту немного, поэтому смысл желательно зашивать в названия: «Расписание — рабочие дни», «Архив — 30 дней», «Email — потеря камеры». Такой подход помогает при передаче системы другому администратору и снижает вероятность случайно удалить не тот модуль.
Если цепочка перестала работать после серии изменений, отладку лучше вести от источника к назначению. Сначала открыть «Универсальную камеру» и убедиться, что поток приходит. Затем по одному проверять фильтры, переводя подозрительный модуль в режим игнорирования. Наконец, проверить назначение: путь к архиву, параметры почты, адрес веб-сервера. Этот порядок локализует причину быстрее, чем одновременное изменение нескольких параметров.
«Универсальная камера»: потоки, кодеки и прямая запись
«Универсальная камера» — основной источник для IP-камер. В её настройках Xeoma хранит имя источника, учётные данные, адрес потока просмотра и адрес потока, который может использоваться для прямой записи. Если камера отдаёт ONVIF, RTSP или другой поддерживаемый поток, программа либо находит URL автоматически, либо позволяет указать его вручную.
Разделение потоков решает две разные задачи. Для сетки из нескольких камер нужен лёгкий поток, который сервер или клиент сможет декодировать без высокой нагрузки. Для доказательной записи нужен основной поток с нужным разрешением и битрейтом. В «Универсальной камере» эти задачи можно развести: первый URL использовать для просмотра, второй — для архива. При просмотре одной камеры разрешается переключиться на поток высокого качества, если это нужно оператору.
Прямая запись в архив важна для производительности. Если поток H.264 или H.265 можно сохранить без декодирования и повторного кодирования, процессор не тратит ресурсы на лишнее преобразование. Архив сохраняется в сжатом виде, а декодирование происходит при просмотре. Это особенно заметно на сервере с большим количеством камер, где основная нагрузка возникает не от записи как таковой, а от декодирования и аналитики каждого кадра.
У прямой записи есть логическое ограничение: фильтр не может модифицировать закодированный поток, не декодировав его. Поэтому операции, которые реально меняют изображение, требуют обработки кадров. Исключения вроде отбора эпизодов по движению работают иначе: детектор анализирует поток просмотра и разрешает или запрещает сохранять соответствующие интервалы основного потока. Маркировка времени в таком сценарии может храниться как информация, накладываемая при воспроизведении.
Если модулю аналитики требуется высокая детализация, в его настройках можно включить использование потока высокого разрешения из архива. Это повышает качество исходных данных для детектора, но возвращает нагрузку на декодирование. Поэтому включать эту опцию для всех фильтров подряд не следует. Сначала стоит оценить, действительно ли объект распознавания слишком мал в низком потоке, и только затем переводить конкретный модуль на высокое разрешение.
Параметр транспортного протокола для RTSP пригодится при сетевых проблемах. TCP старается доставить данные без потерь и может накапливать задержку при плохом канале. UDP даёт меньшую задержку, но чувствительнее к потерям пакетов. Multicast уместен только в сети, где он осознанно настроен. Режим Auto удобен как стартовая точка, но при «сыплющемся» изображении полезно вручную проверить TCP и UDP.
Буферизация — компромисс между плавностью и задержкой. Она способна сгладить неравномерную доставку кадров, но делает управление в реальном времени менее отзывчивым. Для камеры на входной двери или PTZ это может мешать; для удалённой общей камеры, где важнее отсутствие рывков, задержка приемлема. Нельзя лечить буферизацией перегруженный сервер: если процессор не успевает декодировать потоки, нужно снижать объём работы, а не только увеличивать буфер.
Отдельно стоит проверить частоту кадров и битрейт на стороне самой камеры. Xeoma показывает параметры найденного потока, но не заменяет интерфейс камеры для кодирования. Если устройство отдаёт 4K при 25–30 кадрах/с, а задача — наблюдать медленно меняющуюся складскую зону, снижение FPS или настройка второго потока часто эффективнее любых программных оптимизаций на сервере.
Детектор движения: зоны, чувствительность и ложные срабатывания
«Детектор движения» в Xeoma не просто включает запись при любом изменении кадра. Он позволяет ограничить область анализа, отсеять слишком мелкие или крупные объекты, задать чувствительность и выбрать способ сравнения. При правильной настройке это уменьшает количество пустых записей и делает поиск по архиву полезнее.
Зона детектирования рисуется непосредственно по изображению. Контролируемая область выделяется, а участки, где движение нужно игнорировать, очищаются. Для уличной камеры обычно исключают ветви деревьев, оживлённую дорогу за забором, флаг, вентиляционную решётку и другие постоянные источники изменений. Чем точнее зона соответствует реальной охраняемой области, тем меньше придётся компенсировать помехи грубой настройкой чувствительности.
Порог чувствительности регулируют после зоны. Если значение слишком высокое, детектор начинает реагировать на шум матрицы, дождь, тени и небольшие изменения освещения. Если слишком низкое — пропускает медленное движение или небольшой объект. Настройку нужно проверять на реальной сцене в разное время суток, а не только днём при спокойном освещении.
Ограничение размера объекта помогает отделить интересующее движение от помех. Для входа в помещение можно исключить очень мелкие изменения; для парковки — настроить диапазон под человека или автомобиль. Полное резкое изменение кадра, например при сдвиге камеры, лучше поручить «Детектору проблем», потому что по смыслу это саботаж или неисправность, а не обычное движение.
В выпадающем списке способа детектирования доступны как минимум сравнение соседних кадров и сравнение с накапливаемым фоном. Первый вариант хорошо реагирует на непосредственные изменения между кадрами. Второй полезен там, где фон постоянно немного меняется: колышутся деревья, движутся облака, меняется освещение. Результат зависит от сцены, поэтому универсального лучшего метода нет.
Параметры длительности позволяют отсекать слишком короткие события. Это полезно, если вспышка света или единичный артефакт не должны запускать запись. Есть и обратный сценарий — срабатывание при отсутствии движения в течение заданного времени. Такой режим применим для контроля оборудования: если ожидается регулярное вращение, перемещение или другая активность, остановка становится событием.
Для поиска движения в постоянно записываемом архиве детектор можно использовать как источник метаданных, а не как блокирующий фильтр. Соответствующая опция заставляет его непрерывно пропускать поток, но сохранять сведения о найденном движении. В результате архив остаётся сплошным, а поиск по зонам и временной шкале всё равно работает.
В Pro доступны дополнительные способы уменьшить ложные срабатывания, включая распознавание характерных признаков людей и автомобилей в контексте детектора движения. Это повышает требования к вычислениям и не отменяет базовую настройку зоны. Если кадр заполнен листвой и бликами, сначала нужно очистить зону и нормализовать поток, а уже затем подключать более тяжёлую аналитику.
Для разных участков одного кадра с различными условиями лучше использовать несколько детекторов в параллельных ветвях. Например, узкая зона у калитки может иметь высокую чувствительность и небольшой минимальный размер объекта, а дальняя парковка — другой порог. Объединение результатов в один архив позволяет сохранить единый канал записи, не усредняя настройки до неудобного компромисса.
Расписание, фильтры и реакция на события
Модуль «Расписание» определяет дни недели и интервалы, когда расположенные после него модули активны. По умолчанию стандартная цепочка работает круглосуточно, но для офиса или магазина это не всегда рационально. Например, в рабочие часы можно вести постоянную запись, а после закрытия — включать запись только по движению и тревожные уведомления.
Ключевой момент — место расписания в цепочке. Если поставить его перед детектором и архивом, оба модуля перестанут получать поток вне разрешённого времени. Если архив должен работать постоянно, а уведомления — только ночью, расписание следует вынести в отдельную ветку перед тревожным назначением. Такой принцип делает поведение схемы предсказуемым.
«Детектор проблем» отвечает за технические инциденты: потерю связи с камерой, отсутствие обновления изображения, резкое затемнение или засвет, поворот камеры, нехватку свободного места, памяти и другие признаки проблем сервера и архива. Его логично держать в независимой ветке от обычной детекции движения. Тогда камера может перестать записывать по событию, но система всё равно сообщит о технической причине.
«Отправка Email» умеет формировать письма автоматически, прикладывать изображения или видео и объединять близкие события. Для сервисов, которые требуют отдельный пароль приложения, в Xeoma нужно указывать именно такой пароль, а не обычный пароль почтового ящика. При неправильной авторизации полезно проверить настройки почтового сервиса до изменения цепочки.
В параметрах почтового модуля есть интервалы объединения событий, задержка добавления изображений и частота отправки. Эти настройки влияют не только на количество писем, но и на предзапись. Если требуется корректно приложить предшествующие событию кадры, значения задержек нужно согласовать с настройками модуля, а не просто увеличивать их в надежде получить больше материала.
Кроме электронной почты Xeoma поддерживает другие назначения: мобильные уведомления, сообщения через Telegram Bot, HTTP-команды, звуковой сигнал, FTP и сохранение в файл. Выбор зависит от сценария. Для тревоги оператору удобно push-уведомление, для интеграции с воротами — HTTP-команда или релейный модуль, для резервной передачи кадров — FTP. Один детектор может разветвляться сразу на несколько действий.
Не следует подключать каждое уведомление к каждому движению. На проходной это быстро создаст поток бесполезных сообщений. Практичнее сначала отфильтровать событие: расписание → зона движения → при необходимости распознавание нужного типа объекта → уведомление. Архив при этом можно вести по более широкому условию, чтобы не потерять контекст.
Если система должна реагировать на сочетание условий, модульная схема позволяет строить ветви и использовать дополнительные логические фильтры. Важно после каждой перестройки проверить реальные срабатывания, а не только внешний вид цепочки. Белая линия показывает прохождение сигнала в текущий момент, но корректность охранного сценария проверяется серией тестовых событий.
Запись: «Просмотр и Архив», хранение и диски
Основной модуль записи называется «Просмотр и Архив». В нём задаются имя камеры для отображения, папка или сетевой путь хранения, имя архива, ограничения по времени и объёму. Это место нужно настроить до длительной эксплуатации: оставленное значение по умолчанию подходит для проверки, но не определяет реальную политику хранения.
Срок хранения и максимальный размер архива решают разные задачи. Ограничение по времени удаляет слишком старые записи, а лимит по объёму не даёт одному каналу занять весь диск. Для охранной системы обычно задают оба параметра так, чтобы архив соответствовал требуемой глубине, но оставлял запас для операционной системы, базы и других камер. Заполнять системный диск «до нуля» опасно даже если Xeoma умеет удалять старые фрагменты.
Путь можно направить на отдельный локальный диск, смонтированный сетевой ресурс или подготовленное хранилище. В Standard и Pro поддерживается указание нескольких путей с распределением новых записей по доступному месту. На Unix-системах особенно важно, чтобы сетевой или внешний диск был действительно смонтирован до запуска записи: одинаковый путь к обычной пустой папке и к точке монтирования выглядит для приложения правдоподобно, но данные могут попасть не туда.
Имя папки архива имеет системную часть, которую не стоит произвольно менять на диске. Если требуется понятное название для оператора, лучше использовать имя камеры и штатные поля интерфейса. Ручное переименование внутренних папок во время работы может привести к тому, что программа перестанет видеть прежние записи или создаст новый каталог.
Для H.264/H.265 основной сценарий — сохранять уже сжатый поток без лишнего перекодирования. В зависимости от источника Xeoma использует собственный формат для MJPEG либо контейнер MKV для компрессионных потоков. Пользователю не требуется вручную конвертировать каждую запись: для выдачи фрагмента наружу предназначен экспорт из проигрывателя архива.
Запись по движению экономит место, но не всегда является лучшей политикой. Если событие критично и нельзя рисковать слишком поздним срабатыванием, разумно использовать предзапись и постзапись либо постоянный архив с метаданными движения. Тогда начало события не теряется, а оператор получает контекст до и после тревоги. На объектах с постоянной активностью запись «только по движению» может почти не уменьшить объём, зато усложнит анализ.
Для многокамерного просмотра можно дополнительно сохранять уменьшенную копию архива. Низкокачественная копия полезна не как доказательный материал, а для навигации и синхронного просмотра нескольких каналов, особенно при ускоренном воспроизведении. Основной архив остаётся в исходном качестве, а клиент декодирует облегчённые потоки.
Политику хранения стоит проверять не по расчёту «битрейт × время» в вакууме, а по фактическому расходу после нескольких суток. Камеры с переменным битрейтом, разной интенсивностью сцены и записью по событиям дают неодинаковый объём. Xeoma не отменяет необходимость контролировать свободное место и резервирование критичных данных.
Проигрыватель архива и поиск событий
Архив открывается из нижней панели или из ячейки камеры. Основной инструмент навигации — временная шкала. На ней видны записанные интервалы, положение текущего кадра и элементы управления воспроизведением. Масштаб шкалы меняется, поэтому можно переходить от часов к более точному интервалу без последовательного перематывания всего материала.
В обновлённом интерфейсе панель архива стала компактнее: часть элементов разворачивается при наведении, а в состоянии покоя остаётся только необходимая информация. Это освобождает место под видео, но иногда сбивает пользователя, который ищет привычную кнопку. Если элемент «пропал», достаточно подвести указатель к нижней панели.
На шкале можно видеть интенсивность движения. Когда архив связан с «Детектором движения», сегменты получают визуальные различия, помогающие быстро найти активные эпизоды. Это не замена поиску, но хороший первый фильтр: оператор сразу видит, где в длительном интервале происходило больше изменений.
Поиск по архиву использует метаданные соответствующих модулей. Поиск движения требует «Детектор движения» в цепочке; поиск по распознанным объектам, номерам или лицам — соответствующих модулей и настроек. Если нужный детектор не работал в момент записи, проигрыватель не сможет задним числом создать отсутствующие метаданные простым переключателем.
Для движения можно выделить область прямо в архиве и найти эпизоды, где активность происходила именно там. Это полезно, когда большая часть кадра постоянно занята людьми, а интересует только дверь, окно или участок у автомобиля. Несколько зон можно использовать одновременно; найденные события отмечаются на временной шкале.
Мини-превью при наведении на шкалу позволяет оценить содержимое эпизода без перехода к нему. Эта функция особенно удобна при грубой навигации по часу или дню: пользователь видит ключевой кадр возле курсора, а затем уже перемещает основной указатель в нужное место. На медленном удалённом соединении появление миниатюр зависит от того, насколько быстро клиент получает данные архива.
Меню проигрывателя содержит настройку стартовой позиции, поиск, экспорт, удаление интервала, снимок экрана и другие действия. В Pro дополнительно доступны функции, связанные с одновременным просмотром нескольких архивов и рядом профессиональных инструментов. Наличие конкретного пункта определяется редакцией, лицензиями и модулями в цепочке, поэтому два сервера Xeoma могут показывать неодинаковое меню.
Стартовую позицию можно настроить так, чтобы архив открывался с начала, близко к концу, с последнего просмотренного места либо с общей позиции при последовательном просмотре камер. Последний вариант удобен при расследовании: выбрав время на первой камере, оператор открывает следующую примерно в той же временной точке и сопоставляет перемещение объекта.
В Pro доступно обратное воспроизведение. Это полезно, когда исходная точка события известна, а нужно проследить, откуда появился человек или автомобиль. Вместо ручного шага назад архив можно воспроизводить от более нового времени к более старому. Для стандартного анализа это вспомогательный инструмент, а не отдельный тип записи.
Важный фрагмент разрешается пометить как неудаляемый интервал. Такая защита снижает риск, что штатная циклическая очистка или операторская работа удалит нужный эпизод. Однако это не полноценный резервный носитель: доказательный материал всё равно следует экспортировать и хранить в соответствии с политикой организации.
Панель временной шкалы можно перенести вверх. Это мелочь, но на видеостене или нестандартном рабочем месте расположение элементов имеет значение: нижний край может быть перекрыт другим окном, панелью ОС или физической рамкой дисплея.
Экспорт видео и отдельных кадров
Архив Xeoma рассчитан на внутреннее хранение, а для передачи записи используется экспорт. В меню выбирают «Экспорт: задать интервал», после чего на шкале появляются маркеры начала и конца. Пользователь передвигает их на требуемый отрезок и повторно запускает экспорт. В следующем диалоге задаются имя файла, папка и формат.
Для видео доступны варианты MJPEG, WMV, MPEG-4 AVI и H.264 AVI. Для отдельного кадра можно выбрать JPEG, PNG или BMP. Если задача — передать небольшой эпизод коллегам или сохранить доказательство, экспорт лучше выполнять из штатного меню, а не копировать внутренние файлы архива наугад: Xeoma знает границы фрагментов и корректно формирует выходной файл.
Если нужен один кадр, устанавливать длинный интервал не требуется. Бегунок ставят на нужный момент и выбирают экспорт кадра. Это отличается от функции «Снимок экрана» в живом просмотре: в архиве кадр берётся из записанного материала, и его качество зависит от самого архива.
Функция «Снимок экрана» доступна и в архивном проигрывателе. Она сохраняет кадр в разрешении просматриваемой записи. В быстром просмотре живой камеры снимок может браться в исходном разрешении камеры. Место хранения снимков задаётся правилами Xeoma; пользователь выбирает сторону — клиент или сервер — в тех диалогах, где это поддерживается.
Для таймлапс-сценария при экспорте можно прореживать кадры, например выгружать каждый N-й кадр. Это не меняет оригинальный архив: создаётся отдельный производный материал. Такой подход удобен для длительных процессов — стройки, очереди, изменения обстановки — когда полный многосуточный ролик слишком велик.
При экспорте большого промежутка следует учитывать вычислительную нагрузку. Если исходный формат приходится перекодировать, процессор и диск будут заняты дольше, чем при простом чтении архива. На рабочем сервере лучше не запускать несколько тяжёлых экспортов одновременно с пиковой аналитикой, особенно если ресурсы уже используются близко к пределу.
Удалённый доступ: клиент, P2P и Ретранслятор
Архитектура Xeoma изначально разделяет сервер и клиент. Сервер остаётся рядом с камерами и хранит архив, а клиент подключается к нему для просмотра и администрирования. В одной локальной сети достаточно знать адрес сервера и пароль учётной записи. Для доступа через Интернет способ зависит от сетевой инфраструктуры.
Диалог открывается через «Главное меню» → «Удалённый доступ» → «Подключение к удалённому серверу». В локальной сети клиент может использовать внутренний адрес. Для внешнего подключения при наличии публичного статического адреса нужен корректно настроенный сетевой доступ и открытые только необходимые порты. Не следует публиковать сервер без пароля и ограничений доступа только потому, что это быстрее на этапе проверки.
Когда публичного адреса нет, Xeoma предлагает P2P-подключение. На сервере его включают через «Удалённый доступ» → «Настройка P2P-подключения», после чего получают уникальный адрес. Клиенту нужны этот адрес и пароль соответствующей учётной записи. Если идентификатор скомпрометирован, предусмотрено получение нового P2P-адреса.
Отдельный сервис «Ретранслятор» решает ту же сетевую проблему через промежуточную инфраструктуру, но лицензируется отдельно и требует постоянного доступа к Интернету. Он предназначен для клиент-серверного подключения, а не для браузерного просмотра. По текущей документации Ретранслятор использует администраторское подключение и не заменяет гибкую систему операторских профилей.
Клиентская часть может быть установлена на другом компьютере или мобильном устройстве. Серверная лицензия не приобретается на каждый клиент: лицензируется сервер, а подключаемых клиентских частей может быть несколько. На iOS доступна именно клиентская роль, тогда как Android имеет варианты с более широкими возможностями.
Для рабочей системы нужно различать «удалённую камеру» и «удалённый клиент». В первом случае сервер Xeoma получает поток камеры из другой сети. Во втором оператор получает доступ к уже работающему серверу. Это разные направления трафика, разные порты и разные причины ошибок. Если камера не добавляется, проверка клиентского P2P ничего не исправит; если клиент не подключается к серверу, URL RTSP камеры тоже не относится к проблеме.
Бесплатный режим сервера имеет ограничения удалённого доступа, поэтому перед диагностикой нужно посмотреть, в каком режиме работает именно серверная часть. Клиентская редакция при этом не определяет возможности сервера. Это частая причина путаницы после успешного локального теста: на том же компьютере всё видно, а отдельный клиент подключиться не может.
Веб-сервер и просмотр через браузер
Браузерный доступ в Xeoma реализуется отдельным модулем «Веб сервер». Это не основной режим работы всей программы: сервер Xeoma продолжает работать как обычное приложение или служба, а модуль публикует выбранную камеру и архив для браузера. Для каждой камеры, которую нужно показать через веб-интерфейс, модуль добавляют в соответствующую цепочку.
Место модуля в цепочке определяет, какой поток увидит браузер. Если поставить «Веб сервер» после детектора движения, изображение будет проходить только в моменты, когда фильтр разрешает сигнал. Для постоянного живого просмотра модуль обычно подключают непосредственно к камере отдельной веткой. Если через браузер нужен архив, в цепочке должен быть рабочий «Просмотр и Архив» с уже созданными записями.
В настройках «Веб сервера» Xeoma показывает адреса JPEG/MJPEG-потоков и общей страницы, а также параметры авторизации. Для удалённого доступа вместо локального имени сервера используется реальный доступный адрес. Логин и пароль можно задавать на общий вход и на отдельный поток. Публиковать веб-интерфейс в Интернет без авторизации не следует.
Браузер позволяет смотреть живые камеры и архив, а также выгружать нужный фрагмент на клиентскую машину. Частота кадров и качество веб-представления настраиваются отдельно и не меняют исходный поток камеры на сервере. Это полезно при медленном канале: архив сохраняется в полном качестве, а браузеру можно отдать облегчённое изображение.
Для звука и более современной передачи поддерживается WebRTC. Вариант, где декодирование и перекодирование выполняет браузер, предъявляет ограничения к исходному кодеку; в частности, для H.265 может потребоваться режим с обработкой на стороне Xeoma. Если в веб-интерфейсе появляется предупреждение о невозможности WebRTC для H.265, нужно менять режим трансляции, а не сам архив.
Защищённое HTTPS-подключение можно включить в детальных настройках «Веб сервера». Это отдельная настройка от шифрования клиент-серверного канала. Для внешнего доступа желательно использовать защищённый вариант и не путать его с обычным HTTP только потому, что локальная проверка в браузере прошла успешно.
Ретранслятор не переносит веб-интерфейс через себя. Если организация не имеет публичного адреса и хочет именно браузерный доступ, нужно проектировать сетевую схему отдельно: VPN, корректный внешний доступ или другая поддерживаемая архитектура. P2P и Ретранслятор прежде всего относятся к нативному клиенту Xeoma.
Пользователи, права доступа и защита соединений
В многопользовательской системе не стоит раздавать пароль администратора всем операторам. Xeoma позволяет создавать учётные записи через «Главное меню» → «Удалённый доступ» → «Пользователи» и задавать права по отдельным камерам и действиям. Можно разрешить просмотр живого видео, но запретить архив; оставить архив, но запретить удаление; разрешить PTZ только для части камер; запретить изменение настроек и управление звуком.
Такое разделение особенно важно на посту охраны. Оператору обычно нужен просмотр, переход к архиву и, возможно, PTZ. Право менять цепочки, удалять архивы и перенастраивать сервер лучше оставить администратору. Иначе обычная попытка «сделать картинку ярче» может закончиться изменением критичной конфигурации или остановкой записи.
Для PTZ предусмотрены отдельные ограничения и приоритеты. Камеру можно полностью закрыть от управления конкретному пользователю либо настроить уровни приоритета, чтобы старшая учётная запись могла перехватывать управление у младшей. Это полезно в диспетчерском центре, где одна камера доступна нескольким рабочим местам.
В настройках блокировки пользователей есть белый список IP-адресов и подсетей. Он позволяет ограничить вход даже при верном пароле. Для стационарных операторских мест такой фильтр добавляет полезный уровень защиты. Но нельзя полагаться только на него: пароль, шифрование и сетевые правила всё равно остаются необходимыми.
В новых версиях доступна двухфакторная аутентификация для клиент-серверного подключения. Код отправляется на электронную почту учётной записи при попытке входа. Функция применяется к пользовательским профилям, но не к администратору и не к веб-интерфейсу. Поэтому её нельзя считать универсальной 2FA для всех способов доступа; веб-сервер нужно защищать собственными средствами.
Для нативного клиент-серверного канала Xeoma поддерживает TLS. Настройка требует сертификата и приватного ключа на сервере, а публичного сертификата — на клиентах. Приватный ключ должен оставаться только на сервере. Если он попадает на общую папку или рабочие станции операторов, смысл шифрования резко снижается.
HTTPS в модуле «Веб сервер» и TLS клиент-серверного соединения — разные механизмы. Первый защищает браузерный трафик, второй — собственный протокол соединения Xeoma. В системе, где используются оба способа удалённого доступа, нужно настраивать оба контура. Проверка значка замка в браузере не подтверждает, что нативный клиент также шифрует соединение.
Для аудита полезен «Журнал событий», который открывается через «Главное меню» → «Информация» → «Журнал событий». Он фиксирует изменения в модулях и цепочках, подключения и отключения клиентов, действия со снимками и другие операции. При включении логирования срабатываний детекторов журнал может быстро расти, поэтому на большой системе нужно следить за его объёмом.
Безопасная эксплуатация начинается с простых мер: заменить стандартные пароли камер, использовать разные учётные записи, не давать оператору административных прав без необходимости, ограничить внешнюю публикацию портов, включить шифрование для удалённых соединений и хранить резервную копию конфигурации отдельно от сервера. Возможности Xeoma не компенсируют небезопасные настройки сетевых камер и маршрутизатора.
Резервные копии, восстановление и отказоустойчивость
Конфигурация Xeoma ценнее, чем кажется. В крупной системе это десятки URL, паролей, зон детектирования, расписаний, путей хранения и прав пользователей. Поэтому резервная копия настроек нужна не только перед обновлением, но и после существенной перенастройки.
Через «Главное меню» → «Установить» → «Восстановление» доступны экспорт и импорт настроек. При экспорте создаются файлы с основными серверными параметрами и клиентскими настройками. Основной файл содержит камеры и цепочки, а вспомогательный — параметры интерфейса, размера окна, декодирования и другие клиентские детали. Копию следует хранить на другом носителе или компьютере.
Xeoma также создаёт внутренние резервные копии при изменениях и позволяет сохранить текущую конфигурацию в каталог резервов вручную. Команда восстановления возвращает выбранное состояние. Это удобно после ошибочной массовой правки, но не заменяет внешнюю копию: повреждение диска сервера может уничтожить и рабочую конфигурацию, и встроенные бэкапы одновременно.
Ручной способ восстановления основан на файле настроек сервера. Перед заменой файла Xeoma нужно остановить, чтобы запущенный процесс не перезаписал изменения. Такой метод полезен на headless-сервере, но требует аккуратности: лучше сначала сохранить текущий файл с другим именем, затем восстановить проверенную копию и только после этого запускать сервер.
Резервирование сервера — отдельная функция. В меню установки можно настроить резервный сервер, который принимает работу при недоступности основного. Для этого резервная машина должна иметь сопоставимую лицензию нужного типа и количества источников. Это не «бесплатный второй экземпляр»: отказоустойчивость нужно учитывать при лицензировании и проектировании хранилища.
Сам архив также требует резервной стратегии, если записи критичны. Неудаляемый интервал защищает от штатного удаления внутри Xeoma, но не от отказа накопителя. Для важных объектов применяют отдельные диски, RAID, сетевое хранилище, экспорт ключевых фрагментов или дублирование на другой сервер в зависимости от требований проекта.
«Детектор проблем» помогает заметить условия, при которых резервирование уже понадобится: недостаток места, памяти, потерю связи, проблемы с базой архива, некорректную остановку и другие события. Его лог лучше контролировать вместе с системными журналами ОС. Наличие детектора не отменяет мониторинг SMART накопителей, состояния RAID и сетевого хранилища.
Производительность: как не перегрузить сервер
Нагрузка Xeoma определяется не одним количеством камер. На неё одновременно влияют разрешение, FPS, кодек, битрейт, количество декодируемых потоков, детекторы, число клиентов, одновременный просмотр архива и экспорт. Две системы на 20 камер могут требовать радикально разное железо, если одна пишет H.264 напрямую, а другая декодирует каждый 4K-поток для нескольких модулей аналитики.
Первый инструмент оптимизации — dual streaming. Низкий поток направляют на общую сетку и простые детекторы, высокий — на прямую запись. Это уменьшает CPU-нагрузку и сетевой трафик к клиентам. Высокое разрешение включают для конкретного модуля только там, где низкого потока недостаточно для задачи.
Второй инструмент — прямая запись сжатого потока. Если серверу не требуется перекодировать H.264/H.265 перед архивированием, запись сама по себе обходится дешевле по процессору. Но любой фильтр, которому нужны декодированные кадры, снова добавляет вычисления. Поэтому бессмысленно включать тяжёлую аналитику на всех камерах «на будущее».
Третий инструмент — аппаратное декодирование. Xeoma поддерживает аппаратные механизмы для совместимых видеокарт и встроенной графики. На сервере это может быть NVIDIA CUDA и Intel Quick Sync в поддерживаемых конфигурациях. На клиентской стороне набор вариантов шире и зависит от ОС и драйвера: среди них используются Quick Sync, CUDA, DXVA2, D3D11VA, Vulkan, VAAPI, VDPAU и другие механизмы для соответствующих платформ.
Аппаратное ускорение имеет смысл только при совместимом кодеке, драйвере и достаточно тяжёлом потоке. Если небольшая камера с низким разрешением почти не нагружает CPU, перенос её на GPU не даст заметной практической пользы. Кроме того, количество одновременно декодируемых каналов ограничивается возможностями конкретной видеокарты.
Четвёртый инструмент — декодирование на клиенте. Если сервер должен главным образом принимать и писать потоки, а операторские станции достаточно мощные, часть работы просмотра можно перенести на них. Это особенно полезно для видеостены и нескольких рабочих мест. Но при слабых клиентах эффект обратный: оператор получит рывки и задержки, хотя сервер будет свободнее.
Пятый инструмент — облегчённый архив для многокамерного воспроизведения. Синхронное проигрывание нескольких записей, особенно с ускорением, нагружает декодер сильнее обычного живого просмотра. Низкокачественная копия архива позволяет оператору ориентироваться по событиям, не декодируя сразу несколько исходных потоков высокого разрешения.
Наконец, важна дисковая подсистема. Последовательная запись многих потоков и одновременный экспорт, воспроизведение и очистка архива создают смешанную нагрузку. Медленный диск может стать узким местом даже при свободном CPU. Отдельный накопитель для архива, достаточный запас свободного места и адекватная файловая система обычно важнее попытки «ускорить» Xeoma одним параметром.
Производительность лучше оценивать на пилотной конфигурации с реальными камерами. Синтетическая цифра «сколько камер выдержит процессор» мало полезна без параметров потоков и модулей. Для нового объекта стоит сначала подключить несколько типовых камер, включить будущую аналитику и архив, посмотреть загрузку CPU/GPU/диска, затем масштабировать расчёт.
Типичные проблемы и последовательная диагностика
Камера не находится автоматически
Сначала убедитесь, что сервер Xeoma и камера действительно находятся в одной сети и камера доступна по своему адресу. Затем попробуйте «Поиск по IP/паролю», указав правильные данные авторизации и порт. Камеры за DVR и устройства с нестандартным RTSP-путём часто приходится добавлять вручную. Если известен точный URL, используйте «Добавить новую камеру вручную» и вставьте поток в «Универсальную камеру».
Камера добавлена, но изображения нет
Откройте настройки источника и переключите найденный поток. Проверьте кодек, логин и пароль, транспорт TCP/UDP, а также доступность камеры другим клиентом. Если изображение есть в «Универсальной камере», но отсутствует дальше, пройдите цепочку слева направо: серые соединения укажут на фильтр, который блокирует сигнал.
Изображение заметно отстаёт
Проверьте буферизированное чтение потока. Оно специально увеличивает плавность ценой задержки. Затем оцените сеть и загрузку декодирования. При PTZ задержка особенно заметна, поэтому для управляемой камеры лучше использовать лёгкий поток просмотра и минимально необходимую буферизацию.
Процессор загружен почти постоянно
Сравните потоки просмотра и архива. Если в общей сетке декодируются основные 4K-потоки, настройте dual streaming. Проверьте, какие модули используют высокое разрешение, не включено ли лишнее перекодирование, доступно ли аппаратное декодирование и можно ли перенести часть работы на клиент. Отключать запись как первую меру обычно неправильно: прямая запись может быть дешевле аналитики.
Архив не появляется
Убедитесь, что «Просмотр и Архив» включён и получает белую активную линию от предыдущего модуля. Проверьте путь, права записи, наличие диска и свободное место. Если перед архивом стоит детектор, временно переведите его в игнорирование: если запись началась, проблема в условии фильтра, а не в накопителе.
Архив слишком быстро заканчивается
Проверьте срок хранения, лимит объёма и фактический битрейт камер. Слишком большой основной поток быстро съедает диск. Можно снизить параметры на самой камере, перейти на запись по событию там, где это допустимо, или расширить хранилище. Не стоит уменьшать разрешение архива только ради экономии, если оно требуется для идентификации деталей.
Нет писем о событии
Проверьте, доходит ли сигнал до «Отправки Email» и срабатывает ли предыдущий детектор. Затем проверьте SMTP-параметры и необходимость пароля приложения у почтового сервиса. Если письмо приходит без ожидаемой предзаписи, пересмотрите интервалы объединения событий и задержки вложений.
Клиент не подключается к серверу
Сначала проверьте адрес, пароль и режим серверной части. Внутри локальной сети исключите маршрутизацию и брандмауэр. Для внешней сети определите, какой способ используется: публичный IP, P2P или Ретранслятор. Не смешивайте их настройки. Если появляется предупреждение о несовпадении версий клиента и сервера, приведите компоненты к одинаковой версии.
В браузере нет камеры
Проверьте, добавлен ли «Веб сервер» именно в цепочку этой камеры и не стоит ли он после фильтра, который сейчас блокирует поток. Для архива должен быть активен «Просмотр и Архив». При внешнем доступе локальный адрес сервера нужно заменить на доступный сетевой адрес, а авторизацию и HTTPS — настроить отдельно.
WebRTC не работает с H.265
Режим, перекладывающий обработку на браузер, рассчитан не на все исходные кодеки. Для H.265 используйте вариант WebRTC с перекодированием на стороне Xeoma либо другой поддерживаемый способ просмотра. При этом оцените нагрузку: серверное перекодирование заметно тяжелее простой выдачи MJPEG или прямого потока.
Оператор не видит кнопку или камеру
Причина может быть не в интерфейсе, а в правах. Учётная запись способна скрывать архив, настройки, PTZ, снимки и отдельные камеры. Войдите под администратором и проверьте профиль пользователя. Если элемент есть у администратора и отсутствует у оператора, сначала исправьте права, а не переустанавливайте приложение.
Редакции, пробный режим и ограничения лицензии
Xeoma работает в бесплатном, пробном и коммерческих режимах. Перед настройкой проекта важно понимать именно функциональные ограничения, а не только название редакции. В пробном режиме можно проверить расширенные возможности, но настройки и тестовые данные имеют ограничения по сохранению. Для постоянной эксплуатации выбирают коммерческую редакцию или бесплатный режим, если его рамки действительно подходят задаче.
Бесплатный режим рассчитан на базовый сценарий. Он разрешает просмотр большого числа камер, но ограничивает число модулей в цепочке, количество модулей записи/отправки и удалённое управление. Поэтому система «две камеры, локальный монитор, простая запись» может в него укладываться, а полноценный удалённый пост с несколькими реакциями — уже нет.
Пробный режим нужен для проверки совместимости и функций до покупки. Он может имитировать возможности разных редакций, включая Pro, чтобы пользователь увидел, какие пункты появятся в нужной лицензии. Но тестовая конфигурация не должна восприниматься как готовый рабочий сервер: у пробного режима есть сбросы и ограничения, которые сделаны специально для тестирования.
Коммерческие редакции различаются не просто количеством камер. Имеют значение допустимое число модулей, наличие профессиональных функций, удалённый доступ, eMap, многокамерный архив и интеллектуальные модули. Если проект строится вокруг конкретной функции, проверять нужно её наличие в выбранной редакции, а не ориентироваться на общее слово «платная».
Часть аналитики продаётся как дополнительные модули поверх подходящей лицензии. К таким функциям относятся некоторые варианты распознавания лиц, объектов, эмоций, QR-кодов и другие специализированные инструменты. Это важное ограничение бюджета: наличие пункта в интерфейсе пробной Pro-конфигурации не означает, что функция автоматически входит в любую купленную лицензию.
Постоянная лицензия привязывается к серверу, при этом клиентские подключения отдельно не лицензируются. В случае замены камер лицензия не привязана к конкретным физическим устройствам: количество разрешённых источников остаётся за сервером. Для виртуальных машин и отдельных сценариев существуют специальные правила активации, поэтому перенос работающего сервера лучше планировать до изменения оборудования.
Период бесплатных обновлений зависит от типа лицензии и выбранного срока. После его окончания можно продолжать использовать разрешённую версию, но переход на более новый выпуск может потребовать продления. Перед обновлением производственного сервера стоит проверить право на нужную версию, сохранить настройки и архивные политики, а затем обновлять клиентские рабочие места согласованно.
Ретранслятор лицензируется отдельно и не является частью обычной серверной лицензии. Это сервис удалённого соединения, а не «старшая редакция» Xeoma. Если публичный IP уже есть или используется VPN/P2P, Ретранслятор может не понадобиться. Выбирать его стоит по сетевой схеме, а не как обязательное дополнение.
Для резервного сервера нужна отдельная сопоставимая лицензия, потому что это самостоятельная машина, готовая принять нагрузку. Этот момент важно учитывать при расчёте отказоустойчивой системы: резервирование программной конфигурации и лицензирование резервной мощности — разные задачи.
Интеллектуальные модули и аналитика
Xeoma выходит далеко за рамки простого детектора движения, но аналитические функции имеют разную стоимость по ресурсам и лицензиям. В программе есть модули распознавания объектов, лиц и автомобильных номеров, счётчики посетителей, детекторы пересечения линии, толпы, оставленных предметов, звуковых событий, парковочных мест и другие специализированные инструменты. Наличие конкретного модуля следует проверять для выбранной редакции и лицензии.
Правильная архитектура аналитики начинается не с включения всех детекторов, а с формулировки события. Если нужно знать, сколько людей пересекло вход, достаточно камеры, подходящего кадрирования и счётчика/линейного детектора. Если требуется тревога только при автомобиле в закрытой зоне ночью, цепочка может включать расписание, детектор движения или объектов и отдельное уведомление. Чем конкретнее условие, тем легче тестировать схему.
Аналитика чувствительна к качеству исходного кадра. Для номера автомобиля нужна достаточная детализация и подходящий угол; для лица — размер и качество изображения; для объектов — стабильная сцена. Если низкий поток просмотра слишком мал, конкретный модуль можно перевести на высокое разрешение. Но это увеличит CPU/GPU-нагрузку, поэтому решение нужно принимать адресно.
Распознавание не следует считать гарантированным фактом только потому, что модуль сработал. Любая видеоаналитика имеет ложные положительные и отрицательные результаты. Для ответственных сценариев нужно сохранять исходный видеоконтекст, проверять событие оператором и настраивать пороги на реальном объекте. Модуль помогает сократить объём ручной работы, но не превращает изображение плохого качества в достоверные данные.
Метаданные аналитики особенно полезны в архиве. Если детектор работал во время записи, по событиям можно искать нужные интервалы, строить журналы и быстрее переходить к фрагменту. Поэтому для расследований полезно думать не только о том, какое действие выполнить при тревоге, но и какие метаданные сохранить для последующего поиска.
Для интеграции предусмотрены HTTP-команды, релейные сценарии, внешние программы, Modbus и другие механизмы. Это позволяет связать видео с воротами, сигнализацией, кассовыми системами и автоматизацией. Такие схемы требуют отдельного тестирования отказов: что произойдёт при недоступном внешнем устройстве, повторится ли команда, не откроются ли ворота при ложном событии. Видеодетектор должен быть частью продуманной логики, а не единственной защитой.
Практический сценарий: домашняя камера с записью по движению
Для дома обычно не нужна длинная цепочка. Сначала добавьте камеру локальным поиском или вручную, затем проверьте два потока в «Универсальной камере». Лёгкий поток оставьте для просмотра, основной — для архива. Если камера смотрит на двор, исключите из зоны движения дорогу, деревья и другие места, где постоянная активность не представляет интереса.
Следующая схема достаточна для большинства случаев: «Универсальная камера» → «Детектор движения» → «Просмотр и Архив». Для уведомлений отведите отдельную ветку после детектора. Настройте предзапись и разумный постинтервал, чтобы запись не начиналась уже после того, как человек вошёл в кадр, и не обрывалась при кратком отсутствии движения.
Проверьте систему вечером и ночью. ИК-подсветка, насекомые, снег и дождь меняют характер сцены сильнее, чем кажется при дневной настройке. Если уведомлений слишком много, сначала корректируйте зону и размер объекта, затем чувствительность. Простое снижение чувствительности до минимума может убрать и полезные события.
Удалённый просмотр лучше организовать через нативный клиент с P2P или другой защищённый способ. Если нужен браузер, добавьте «Веб сервер» отдельной веткой и включите авторизацию/HTTPS. Не открывайте обычный веб-порт наружу только ради удобства просмотра с телефона.
Практический сценарий: офис с операторами и расписанием
В офисе требования обычно сложнее: камеры должны записывать постоянно или по графику, ночью сообщать о движении, а охранник — видеть архив, но не менять серверные настройки. Начните с именования камер и страниц: «Ресепшен», «Коридор 1», «Склад», «Парковка». Создайте отдельные раскладки для охраны и администратора.
Для камеры входа можно сделать две ветви. Первая: «Универсальная камера» → «Просмотр и Архив» для постоянной записи. Вторая: «Универсальная камера» → «Расписание — ночь» → «Детектор движения» → «Мобильные уведомления» и «Отправка Email». Днём архив остаётся непрерывным, но тревоги не беспокоят сотрудников. Ночью любое подходящее движение отправляет уведомление.
Отдельно подключите «Детектор проблем» к служебной почте или другому каналу. Его сообщения должны отличаться от тревог движения: потеря камеры требует технической реакции, а человек в закрытом офисе — охранной. Если всё приходит одним потоком без понятной темы, оператор быстро перестаёт различать приоритеты.
Создайте учётную запись охранника с доступом к нужным камерам, архиву и PTZ, но без удаления записей и изменения цепочек. Администраторский пароль храните отдельно. Если охранных постов несколько, добавьте ограничения по камерам и приоритеты PTZ. Перед вводом в эксплуатацию протестируйте вход под каждой ролью.
Практический сценарий: склад или производство
На складе главная трудность — большое количество движения и камер. Запись только по обычному движению часто экономит мало места, потому что люди и техника перемещаются весь день. Более практичен постоянный архив с метаданными движения, а уведомления — только для конкретных зон и нерабочего времени.
Для общего мониторинга настройте низкие потоки и страницы по зонам. Основные потоки пишите напрямую в архив. Если серверу нужно одновременно показывать десятки камер на видеостене, перенесите часть декодирования на клиент и проверьте аппаратное ускорение. Не направляйте высокое разрешение на каждую ячейку только ради того, чтобы картинка выглядела максимально резкой в миниатюре.
Для ворот и погрузочных зон пригодятся отдельные детекторы пересечения, объектов или номеров, если проект этого требует и есть соответствующие лицензии. Критичный фрагмент после инцидента сразу экспортируйте и помечайте в архиве, а не рассчитывайте, что циклическая запись будет хранить его бесконечно.
На производстве «Детектор проблем» особенно важен: потеря потока, заполнение диска или остановка сервера может остаться незаметной на фоне большого числа каналов. Служебные уведомления следует отправлять не тем же способом, что обычные события, иначе техническая авария затеряется среди тревог.
Практический сценарий: несколько объектов и удалённый центр
Если камеры распределены по филиалам, сначала решите, где будут серверы и архив. Часто выгоднее держать локальный сервер Xeoma на каждом объекте, а центральный операторский клиент подключать к ним удалённо. Тогда потеря внешнего канала не останавливает локальную запись, а после восстановления связи архив снова доступен оператору.
Для одновременной работы с несколькими серверами Xeoma предусмотрены соответствующие режимы удалённого просмотра. У каждого сервера должны быть собственные пользователи, пароли и политика резервного копирования. Не стоит использовать один общий администраторский пароль для всех филиалов: компрометация одного рабочего места тогда открывает всю систему.
Если внешний IP отсутствует, выбирают P2P, Ретранслятор, VPN или другую допустимую сеть. Веб-интерфейс проектируется отдельно, потому что Ретранслятор не является туннелем для браузерного модуля. На слабых WAN-каналах особенно важно использовать низкий поток просмотра и не тянуть основной архивный поток без необходимости.
Для централизованного расследования удобна единая схема имён камер и синхронизированное время. Если серверы и камеры показывают разное время, сопоставление событий между филиалами превращается в ручную задачу. Настройку NTP нужно делать осознанно и учитывать, что отдельные команды синхронизации на камерах могут менять их собственные настройки времени.
Снимки, маркировка и дополнительные инструменты оператора
Быстрый снимок доступен из настроек отдельной камеры и из архивного проигрывателя. Для живой камеры кадр сохраняется с исходным разрешением, а для архива — в разрешении записи. Функция рассчитана на одну камеру, поэтому если нужно регулярно получать изображения с нескольких каналов, правильнее использовать «Сохранение в файл» или другую автоматизированную цепочку.
Снимки хранятся в отдельной структуре папок по имени камеры. В интерфейсе можно выбрать, на чьей стороне сохранять снимок — клиента или сервера, если соответствующая опция доступна. Это важно при удалённой работе: оператор может ожидать файл на своём ПК, а он окажется на сервере наблюдения.
Модуль «Маркировка» добавляет в изображение дату, время, текст, координаты или логотип. В прямой записи компрессионного потока часть маркировки может применяться как данные, отображаемые при просмотре, чтобы не перекодировать видео. Если юридически важна «впечатываемая» маркировка в экспортированный файл, результат нужно заранее проверить на конкретной конфигурации.
Для навигации оператору также помогают eMap, дерево камер, пользовательские страницы и быстрые настройки. Эти инструменты решают одну задачу разными способами: страница удобна для фиксированной сетки, дерево — для иерархии, eMap — для пространственного расположения. Большая система становится значительно удобнее, если выбрать основной способ навигации и придерживаться единого именования.
Обновление сервера без потери рабочей конфигурации
Обновлять рабочий сервер лучше как отдельную техническую операцию, а не между делом. Сначала экспортируйте настройки и зафиксируйте текущую версию клиента и сервера. Затем убедитесь, что для активной лицензии разрешён переход на выбранный выпуск. Если система использует дополнительные модули, аппаратное декодирование или нестандартные интеграции, запишите их состояние до обновления — это упростит проверку после перезапуска.
Если Xeoma установлена в автозапуск, штатная процедура удаления позволяет сохранить настройки и архивы. Это важно: деинсталляция исполняемой части и удаление конфигурации — не одно и то же действие. При ручной работе через консоль серверную часть также нужно корректно остановить, а не просто оборвать питание машины. После запуска новой версии первым делом проверьте соединение клиента с сервером и отсутствие предупреждения о несовпадении версий.
Далее проверяются не все камеры подряд, а критические точки. Откройте несколько источников разных типов, убедитесь, что архив продолжает пополняться, детектор движения срабатывает, почтовое или мобильное уведомление доходит, а удалённый клиент и веб-доступ работают прежним способом. Если используется аппаратное ускорение, посмотрите загрузку CPU/GPU: обновление драйвера или изменение декодера способно изменить распределение нагрузки даже при неизменной схеме.
При неожиданной проблеме не стоит сразу пересоздавать цепочки. Сначала сравните версии, просмотрите журнал событий, проверьте пути к архивам и права доступа к дискам. Если причина действительно связана с новым выпуском, наличие сохранённой конфигурации и предыдущей версии позволяет аккуратно откатиться. На производственном сервере такой план возврата должен существовать до обновления, а не появляться после сбоя.
Мобильные клиенты тоже нужно учитывать. Сервер может продолжать работать, но слишком старый клиент отображать не все функции или вести себя иначе. Для объекта с несколькими операторскими ПК удобно обновлять один клиент как тестовый, затем сервер, после чего остальные рабочие места. Это уменьшает риск одновременно потерять доступ со всех постов.
Сравнение с аналогами
Xeoma полезно сравнивать не по количеству пунктов в меню, а по типу работы. Это система видеонаблюдения: она постоянно принимает потоки камер, хранит архив, реагирует на события и обслуживает удалённых операторов. ВидеоМОНТАЖ решает другую задачу — ручное создание и обработку готовых роликов. Blue Iris и Agent DVR, напротив, относятся к той же категории видеонаблюдения, поэтому с ними важны архитектура, поддерживаемые платформы, запись и удалённый доступ.
| Задача | Xeoma | ВидеоМОНТАЖ | Blue Iris | Agent DVR |
|---|---|---|---|---|
| Постоянное видеонаблюдение | Да, сервер, камеры и архив | Нет, это видеоредактор | Да | Да |
| IP/ONVIF/RTSP-камеры | Основной сценарий | Не предназначен для VMS | Поддерживает сетевые и другие камеры | Поддерживает IP, ONVIF и RTSP |
| Модульная логика | Визуальные цепочки источников, фильтров и действий | Монтажный проект с клипами и эффектами | Триггеры, профили, действия и правила | Детекторы, действия, расписания и интеграции |
| Монтаж готового ролика | Только экспорт архивных фрагментов, не монтажная среда | Основная задача: клипы, эффекты, хромакей, титры | Экспорт записей, не классический видеомонтаж | Экспорт и работа с записями, не монтажный редактор |
| Операционные системы сервера | Windows, Linux, macOS, ARM и другие поддерживаемые платформы | Windows | Windows 10/11 и Windows Server-сценарии | Windows, macOS, Linux, Docker, Raspberry Pi |
| Браузерный просмотр | Через модуль «Веб сервер» | Не относится к задаче | Встроенный UI3 веб-сервер | Основной интерфейс доступен в современном браузере |
| Удалённый доступ без обычного публичного IP | P2P или отдельный Ретранслятор для нативного клиента | Не относится к задаче | Зависит от сетевой конфигурации и средств продукта | Удалённый сервис через защищённый relay по подписке |
| Видеоаналитика | Базовые и дополнительные модули, часть требует Pro или отдельной лицензии | Эффекты и коррекция изображения, а не охранная аналитика | Встроенная AI-аналитика в актуальной ветке | Встроенные и внешние AI-интеграции |
Xeoma и ВидеоМОНТАЖ
ВидеоМОНТАЖ не является прямой заменой Xeoma. Он рассчитан на человека, который уже имеет видеофайлы и хочет собрать ролик: импортировать распространённые форматы, обрезать материал, добавить переходы, эффекты, титры, музыку, выполнить хромакей и экспортировать готовое видео. У него нет задачи круглосуточно держать десятки IP-камер подключёнными к серверу, вести циклический архив и запускать действия от детектора движения.
Xeoma, наоборот, не следует выбирать для творческого монтажа. Архивный экспорт позволяет выдать фрагмент записи или кадр, но в программе нет монтажной временной шкалы с дорожками, художественных переходов и процесса сборки фильма, сопоставимого с редактором. Если требуется подготовить ролик из экспортированных фрагментов наблюдения, логичен двухэтапный процесс: сначала получить нужные эпизоды из Xeoma, затем монтировать их в специализированном видеоредакторе.
Поэтому сравнение с ВидеоМОНТАЖ полезно прежде всего для разграничения задач. ВидеоМОНТАЖ поддерживает десятки мультимедийных форматов, каталог эффектов и хромакей; Xeoma — сетевые камеры, архив, детекторы, права операторов и удалённый мониторинг. Наличие слова «видео» в обеих программах не делает их взаимозаменяемыми.
Xeoma и Blue Iris
Blue Iris — прямая альтернатива для видеонаблюдения, ориентированная на Windows. Актуальная версия поддерживает до 128 камер в полной лицензии, умеет записывать по движению, звуку, расписанию или постоянно, имеет встроенный веб-сервер UI3, мобильный доступ, действия по тревогам и аппаратное ускорение. В современной ветке также развиваются встроенные AI-функции для объектов, лиц и автомобильных номеров.
Главное архитектурное отличие — платформа и способ конфигурирования. Xeoma работает на нескольких настольных и серверных ОС, включая Linux и ARM, и строит обработку как визуальные цепочки модулей. Blue Iris привязан к Windows и использует собственную систему настроек камер, профилей, триггеров, зон и действий. Для пользователя, который уже разворачивает Windows-сервер и предпочитает традиционную панель VMS, это один тип рабочего процесса; для Linux/ARM-сервера или проекта, где важны визуальные ветви обработки, — другой.
Blue Iris умеет сохранять стандартные видеоформаты и собственный DVR-контейнер, поддерживает веб-просмотр живых камер и клипов и разграничение удалённых пользователей. Xeoma сильнее завязывает логику на цепочку: один поток можно визуально разветвить к архиву, веб-серверу, письму, HTTP-команде и другим назначениям. Сравнивать продукты следует по конкретному проекту — ОС, числу камер, требуемой аналитике, модели лицензирования и способу удалённого доступа.
Xeoma и Agent DVR
Agent DVR также относится к прямым альтернативам и работает на Windows, macOS, Linux, Docker и Raspberry Pi. Он поддерживает IP-камеры, ONVIF, RTSP и USB, умеет сохранять исходный поток без перекодирования, записывать по обнаружению, тревоге, расписанию или внешнему событию, использовать pre/post buffer и dual streaming. Ограничение числа камер задаётся в основном возможностями оборудования, а не фиксированным программным пределом.
Интерфейс Agent DVR изначально ориентирован на браузер: локальная панель доступна через современный веб-клиент. У Xeoma основной интерфейс — нативный клиент, а браузерный просмотр добавляется модулем «Веб сервер» к нужным камерам. Это различие влияет на эксплуатацию: в Agent DVR браузер — центральный способ управления, в Xeoma — дополнительный контур рядом с клиент-серверным приложением.
Agent DVR предоставляет локальное личное использование без оплаты, а удалённый доступ, бизнес-использование, облачные функции и часть сервисов связаны с подпиской. У Xeoma есть бесплатный и пробный режимы, несколько коммерческих редакций, отдельные дополнительные модули и отдельный Ретранслятор. Поэтому сравнивать только стартовую цену некорректно: нужно разложить стоимость по удалённому доступу, коммерческому применению, аналитике и резервной инфраструктуре.
По аналитике Agent DVR сочетает встроенные детекторы и интеграции с локальными или облачными AI-сервисами. Xeoma предлагает большой набор собственных модулей и дополнительные лицензируемые функции. В обоих случаях тяжёлая аналитика требует реальных вычислительных ресурсов; название функции в списке возможностей не означает, что слабый мини-ПК сможет без нагрузки обработать десятки высоких потоков.
Как выбирать между системами по задаче
Если нужен монтаж готового видео с эффектами, титрами и хромакеем, рассматривается видеоредактор вроде ВидеоМОНТАЖ, а не VMS. Если нужна Windows-система с развитым веб-интерфейсом UI3, большим набором настроек камер и встроенным AI, сравнивается Blue Iris. Если важны кроссплатформенность, браузерное администрирование и современная модель удалённого сервиса, отдельно рассматривается Agent DVR. Если нужна визуальная модульная схема, сервер на Linux/ARM или сложное разветвление «детектор → несколько действий», проверяется Xeoma.
В любом случае перед окончательным развёртыванием нужно провести пилот на реальных камерах. Сравнение таблиц функций не покажет совместимость конкретной прошивки ONVIF, нагрузку выбранного кодека, качество детектора на вашей сцене и поведение удалённого канала. Практический тест из нескольких типовых камер даёт больше информации, чем теоретический подсчёт галочек.
Кому и для каких проектов подходит Xeoma
Xeoma имеет смысл рассматривать, когда видеонаблюдение должно быть не просто записью потока, а системой действий. В малой конфигурации это камера, движение и архив. В средней — страницы операторов, расписания, права пользователей и технические уведомления. В крупной — несколько серверов, специализированная аналитика, интеграции и резервирование.
Особенно уместна модульная модель там, где сценарии различаются от камеры к камере. На одной камере нужна запись 24/7, на второй — только движение, на третьей — счётчик посетителей, на четвёртой — публикация в браузер. Вместо глобальных режимов каждый источник получает собственную цепочку и может разветвляться на независимые действия.
С другой стороны, такая гибкость требует дисциплины. Чем больше модулей и ветвей, тем важнее именование, резервные копии, документация и тестирование. Система на сотни камер не должна состоять из хаотично дублированных цепочек без понятных названий. Перед масштабированием полезно сделать шаблоны типовых камер и договориться о едином формате имён.
Не стоит выбирать Xeoma как замену монтажному редактору или медиаплееру. Её сильная область — жизненный цикл видеонаблюдения: принять поток, проанализировать, показать, записать, найти событие, экспортировать фрагмент и предоставить управляемый доступ оператору. Для художественной обработки экспортированных записей нужен отдельный видеоредактор.
Чек-лист настройки перед постоянной эксплуатацией
- Проверить каждый источник. Убедиться, что камера стабильно отдаёт нужный поток, логин и пароль изменены со стандартных, время синхронизировано.
- Развести просмотр и архив. При наличии dual streaming использовать лёгкий поток для сетки и основной — для записи.
- Настроить цепочки по задаче. Не оставлять лишние модули «на всякий случай» и подписать важные фильтры и назначения.
- Проверить зоны детекторов. Протестировать движение днём, ночью и при типичных погодных или световых изменениях.
- Задать политику архива. Настроить путь, срок хранения, лимит объёма, запас свободного места и, при необходимости, несколько накопителей.
- Настроить технические тревоги. «Детектор проблем» должен сообщать о потере камеры, проблемах диска и других критичных состояниях в подходящий канал.
- Разделить пользователей. Операторам выдать только необходимые камеры, архив и PTZ; административные права оставить ограниченному кругу.
- Защитить удалённый доступ. Использовать пароли, разрешённые адреса, шифрование и подходящий способ подключения; не публиковать незащищённый веб-интерфейс.
- Сделать резервную копию. Экспортировать конфигурацию после настройки и хранить копию вне сервера.
- Проверить восстановление. Знать, где лежат настройки и как вернуть сервер после ошибки, не экспериментируя впервые во время аварии.
- Оценить производительность. В рабочем режиме проверить CPU, GPU, память, сеть и диски одновременно с просмотром, архивом и аналитикой.
- Проверить экспорт. Выгрузить тестовый фрагмент и отдельный кадр, открыть их на другом компьютере и убедиться, что формат подходит для реальной передачи материалов.
После такой проверки Xeoma становится предсказуемой системой, а не набором разрозненных камер. Основная работа администратора сводится к понятной последовательности: источник должен стабильно отдавать поток, фильтры — пропускать только нужные события, назначения — корректно записывать или уведомлять, а права и сеть — не давать лишнего доступа. Именно модульная структура делает эту последовательность видимой и позволяет изменять отдельный сценарий без перестройки всей системы.
