Статьи в блоге Праймсофт

Главная / Блог / Статьи / Мобильность / ПС Мониторинг. Замысел, функции и некоторые технические детали.

ПС Мониторинг. Замысел, функции и некоторые технические детали.

Приложение предназначено для организации системы видеонаблюдения, а также для самостоятельной организации трансляций в случаях, когда невозможно использовать стационарную камеру. Цель приложения - дать пользователю доступ к своим видеокамерам, а также дать возможность самому организовать трансляцию с мобильного телефона и сохранить данные в своем хранилище.

Отличие приложения от ivideon или аналогичных состоит в использовании собственного недорогого сервера видео-стриминга и хранения данных. Пользователь приобретает устройство (хранилище) и устанавливает его дома. Его можно подключить к телевизору или оставить в качестве сетевого файлового хранилища (NAS). Фактически, устройство представляет собой сетевое файловое хранилище, одновременно выступающее как медиацентр и как сервер видео-наблюдения. В дальнейшем можно подключить к хранилищу IP-камеры или Web-камеры и с помощью мобильного приложения получать к ним доступ или управлять камерами.

Основные функции мобильного приложения

  • трансляция видео с подключенных камер;
  • трансляция видео (broadcasting) с камеры телефона c возможностью просмотра также на мобильном устройстве;
  • встроенные функции шифрования трафика (в том числе по ГОСТ Р 34.10-2001);
  • управление подключенными камерами по протоколу PTZ;
  • группирование камер и отображение камер на карте (при этом карта может работать в оффлайн-режиме и получать данные с любого ГИС-сервера, поддерживающего спецификации OGC);
  • хранение видео на сервере с возможностью транскодирования и синхронизации в облачное хранилище.

Трансляция с видео камер - это просмотр онлайн и оффлайн-видео с одной или нескольких камер одновременно. При достаточном объеме хранилища можно организовать большой архив записей, что интересно для систем видео-наблюдения. В приложении необходимо иметь возможность просматривать видео максимально далеко назад по времени.

Трансляция видео (broadcasting) с камеры телефона - это функция, которая есть далеко не у всех приложений видеомониторинга. Функция позволяет с помощью мобильного приложения организовать собственную видео-трансляцию через телефон без установки внешних камер. Например, можно сделать трансляцию какого-то небольшого мероприятия среди друзей или организовать трансляцию с места какого-нибудь события с одновременным сохранением данных на своем медиа-хранилище.

Шифрование по ГОСТ Р 34.10-2001 позволяет применять приложение в системах с повышенными требованиями безопасности, например, где требуется обеспечение защиты конфиденциальных данных или защиты гостайны.

Управление камерами - очень удобная функция, если используются управляемые камеры. Позволяет поворачивать камеру, изменять масштаб изображения.

Группирование камер позволяет объединить несколько камер в логическую группу, например, "дом", "работа", "помещение 1", для удобства представления и последующего обслуживания камер. Группирование позволяет упростить поиск требуемой камеры, если их более десятка. Кроме того, привязка групп и камер к географическому положению, позволяет удобно отображать камеры на карте.

Применение оффлайн-кеширования карт позволяет использовать приложение без выхода в интернет. Например, на масштабных мероприятиях или вне города часто возникают перебои с доступам в интернет. Однако можно заранее подготовиться к этой ситуации, если иметь локальный кеш карт для интересующего региона. Тогда даже при отсутствии выхода в интернет остается доступна функция геопозиционирования на карте.

Хранение видео на своем сервере - это функция медиасервера, которая работает в связке с мобильным приложением. Часто пользователи организуют видеонаблюдение и трансляции непубличных событий, например, домашние мероприятия, дни рождения и др. В этом случае удобно хранить данные на своем сервере без открытого доступа к нему извне. Приложение позволяет хранить и просматривать архивные видео на своем видеосервере.

Основные конкурирующие продукты

Все эти приложения можно объединить в две группы: 1) предлагают пользователю либо функции просмотра видео, либо 2) трансляции видеопотока с мобильного устройства на web-сервис.

Skype предоставляет двусторонний видео-чат через интернет-сервис, но не позволяет организовать видео-трансляцию с камер. Ivideon представляет собой отличный сервис видеонаблюдения, в котором мобильное приложение выступает исключительно в качестве клиента для просмотра видео, видео хранится исключительно на облачных серверах ivideon. Ipwebcam позволяет сделать из телефона видео-камеру, но требует к ней внешнего подключения для получения видео, что невозможно при отсутствии статического IP-адреса у телефона. Tinycam позволяет подключиться к камере для просмотра видео, но для работы требует прямой IP-доступ к камере, что невозможно в сотовых сетях или при использовании NAT/Firewall.

Только одно приложение из рассмотренных - ivideon - представляет собой полноценную систему организации видеонаблюдения с соответствующими функциями группирования камер, хранения видео, организации онлайн-доступа, отображения на карте. Но ни одно из приложений не предоставляет функции шифрования трафика в соответствии с требованиями ГОСТ, что осложняет их применение в системах, требующих выполнения этих правил. Например, в системах, где обрабатываются персональные данные или в госструктурах. Также ни одно приложение не может интегрироваться с OGC-совместимыми ГИС-сервисами и работать с оффлайн-картами.

Архитектура

Графически разрабатываемую систему можно изобразить следующим образом.

Система включает мобильное приложение, медиа-сервер и сервер хранения. Также возможно применение внешней ГИС-системы, поддерживающей спецификации OGC (WMTS, WFS, WMS). Ориентация на ГИС с поддержкой OGС позволяет не привязываться к API одной системы и при необходимости подключить другую систему с поддержкой спецификации. При отсутствии "домашнего" сервера, его функции выполняет облачный сервис, который также позволяет синхронизировать данные с домашним сервером.

Мобильное приложение для Android и iOS работает совместно с собственным сервером видео-наблюдения по зашифрованному протоколу. Приложение получает данные о доступных камерах, текущий видеоряд с камер, архивные записи, позволяет делать и просамтривать скриншоты с камер, а также создавать трансляцию со своего устройства. При этом все видео-данные остаются исключительно индивидуальными, т.к. хранение выполняется в собственном хранилище.

В качестве протокола видео-стриминга используются протоколы RTSP/RTMP/HLS. Хранение данных на сервере выполняется в формате MP4/FLV.

На схеме также изображено облачное хранилище. Данный сервис является расширением системы и позволяет увеличить локальное хранилище за счет защищенного облачного файлового сервиса. В случае, если объема локального хранилища недостаточно, можно подключить услугу синхронизации данных в облачный сервис. Тогда пользователю становятся доступны еще две новые возможности: 1) безграничное файловое хранилище для хранения видео-данных, 2) доступ к своим данным из любого места при наличие сети Интернет.

Дизайн приложения в скриншотах

Рис. 1. Обозначение объектов видеонаблюдения на карте.

Рис. 2. Выбор камеры наблюдения.

Рис. 3. Выбор фотографий и видеозаписей из архива.

Рис. 4. Управление поворотом и фокусом видеокамеры.