Возможности
Все плюсы системы на одной странице
От подключения камеры до разбора инцидента — в одном клиенте. А в основе — кластер, который тянет тысячи камер без единой точки отказа.
Захват и запись
Подключение камер по RTSP и ONVIF, автообнаружение устройств в сети. Архив сегментируется и пишется на локальные диски с автоматической ротацией.
Для ИТ-специалистов
Нативный Go-захват (gortsplib), сегменты MP4 по 10 секунд, ring buffer на диске. Multi-path storage — запись распределяется по нескольким дискам. Retention по сроку (дни) и свободному месту (min_free_percent).
Живой просмотр
Гибкие раскладки, плавный поток с низкой задержкой и управление поворотными камерами (PTZ) прямо из интерфейса.
Для ИТ-специалистов
Live-view через WebRTC (pion) и MSE по WebSocket. Один RTSP-поток камеры раздаётся множеству зрителей без повторного подключения к устройству.
Архив и таймлайн
Таймлайн по каждой камере, мгновенный переход к нужному моменту, синхронный просмотр нескольких камер и экспорт фрагментов архива.
Видеоаналитика и инциденты
Настраиваемые сценарии детекции событий и единая лента инцидентов для оператора: live + клип события, подтверждение и работа в режиме «диспетчерской».
Кластер до 1500 камер
Несколько серверов работают как единая система. Камеры автоматически распределяются и пересчитываются при сбое или добавлении узла.
Посмотреть вживую ↓Разграничение доступа
Группы пользователей с гибкими правами и теги камер. Оператор видит только те камеры, которые ему положены.
Для ИТ-специалистов
JWT-аутентификация, RBAC по permissions (live_view, playback, ptz_control, manage_cameras и др.). Доступ к камерам — через теги группы.
Кластерный режим
Главное преимущество — масштаб и надёжность
Несколько серверов работают как единая система: камеры распределяются автоматически, а при сбое узла переезжают на соседние — запись не прерывается. Попробуйте вживую:
Попробуйте сами
Уроните ноду или добавьте новую — и увидите, как камеры перераспределяются вживую.
Как это устроено
Три механизма, которые делают кластер надёжным
Распределение, отказоустойчивость и синхронизация работают автоматически — без ручной балансировки и внешних сервисов.
Автораспределение
Каждая камера детерминированно закрепляется за узлом по списку живых нод. Нагрузка делится поровну, без «горячих» серверов.
Для ИТ-специалистов
Закрепление вычисляется одинаково на всех нодах: assigned_node = live_nodes[camera_id % len(live_nodes)]. Поэтому каждый узел сам знает свой список камер без центрального координатора.
Отказоустойчивость
Список живых нод меняется — камеры упавшего узла пересчитываются на оставшиеся за секунды. Архив на работавших дисках остаётся целым.
Для ИТ-специалистов
Нет кворума и нет единой точки отказа — кластер работает даже из двух нод. При кратковременном split-brain возможна лишь временная дублирующая запись (приемлемо для NVR).
Синхронизация состояния
Изменения конфигурации мгновенно расходятся по всем нодам, а отстающие узлы при возврате в сеть сами догоняют пропущенное.
Для ИТ-специалистов
Двухуровневая синхронизация: мгновенная рассылка изменений всем узлам при любой правке конфигурации + периодическая сверка журнала событий. Узел, который был недоступен, при возврате в сеть сам запрашивает только пропущенные изменения.
Без центрального сервера
Узлы договариваются напрямую
Нет управляющей ноды, чью потерю пришлось бы переживать. Серверы постоянно обмениваются состоянием друг с другом — кластер остаётся согласованным сам по себе.
- Минимальный кластер — всего 2 сервера
- Никакого внешнего etcd/ZooKeeper и отдельной БД
- Узел вернулся в сеть — сам догнал состояние
- Добавили сервер — нагрузка тут же перераспределилась
- Линейный рост: ~150 камер на ноду
- До 1500+ камер в одном кластере
- Никаких простоев на расширение
Масштабирование
Растёт добавлением узлов
Нужно больше камер — просто добавьте сервер в кластер. Камеры автоматически перераспределятся, действующая запись не остановится. Проверьте это кнопкой «Добавить ноду» выше.
Покажем систему на ваших камерах
Запросите демонстрацию или расчёт конфигурации — подскажем число серверов и лицензий под ваши задачи.
Запросить демо →