Веб сервер в программе для видеонаблюдения Xeoma
Веб сервер Xeoma отличается от многих модулей своей многофункциональностью. Действительно, в отличии от, например, модуля «Расписание», единственная, но оттого ничуть не менее важная задача которого – включать или выключать систему видеонаблюдения в определенное время, модуль «Веб сервер» может использоваться по-разному для различных целей.
Часть 1. Веб сервер и удалённый просмотр камеры через браузер
Главная задача модуля «Веб сервер» – просмотр камеры в реальном времени почти с любого устройства, даже с неподдерживаемой операционной системой, с помощью браузера. Подключив к камере этот модуль, вы сможете просматривать камеру удалённо через браузер (при условии наличия реального статического IP адреса).Для того, чтобы сделать это, подключите к камере модуль «Веб сервер».
Здесь сохраняется общее правило подключения модулей: если подключить Веб Сервер после модуля-фильтра (например, детектора движения), то изображение будет поступать в браузер, только когда модуль будет его пропускать. Обычно для браузера требуется постоянный просмотр, в таком случае модуль «Веб Сервер» лучше подключить напрямую к камере.
Совет: если нужен просмотр архива через браузер, убедитесь, что в цепочке есть активный модуль «Просмотр и Архив» и что в нем есть записи.
В его настройках вы найдёте ссылки (URLи) для различных потоков: изображений JPEG, видео MJPEG, Flash видео со звуком, общей страницы веб сервера для всех камер, к которым подключён модуль «Веб сервер» на этом компьютере.
Если нужно включить авторизацию для входа через браузер, задайте имя пользователя и пароль для входа.
Обратите внимание, что в настройках модуля ссылка нередактируемая, но localhost можно заменить на фактический IP адрес – внутренний или внешний – уже при вставке в браузер.
Совет: обратите внимание на названия в окошках «Путь, по которому…». Изображения с камер в веб странице идут в алфавитном порядке названий в этих окошках. Например, если у одной камеры значится «image1», а у другой «image 99», в веб интерфейсе первой будет идти та, что с «image1».
Внимание! Если вы используете разделение потоков (прямое сохранение в архив) в модуле «Универсальной камеры», не забывайте, что Веб сервер для этой камеры будет использовать поток для просмотра (первое поле URL).
Внимание! Не все браузеры поддерживают воспроизведение MJPEG потока в режиме реального времени.
Если ваш браузер не поддерживает MJPEG, используйте другой браузер или главную страницу веб интерфейса.
Главная страница. С помощью ссылки вида http://IP:10090/ вы сможете зайти на главную страницу веб сервера и просмотреть все камеры с подключёнными к ним модулем «Веб сервер» на этом ПК.
Внимание: если какая-либо камера перестала показывать или недоступна по каким-то другим причинам, в веб странице будут пустые окошки вместо изображения с таких камер.
В браузере вы можете просматривать все камеры с подключёнными к ним модулем «Веб сервер» в реальном времени, их архивные записи, а также управлять PTZ функциями (если камеры поддерживают PTZ и они были обнаружены в Xeoma). PTZ контрол появится на экране в режиме просмотра одной камеры в веб-интерфейсе (для включения и использования PTZ в браузере требуется лицензия Pro).
В верхней панели в веб странице вы увидите вкладки «Просмотр камер» (по умолчанию попадаете на эту страницу), «Архив», «Опции», «Частота кадров».
«Просмотр камер» – страница просмотра всех камер, на которую вы попадаете при входе в веб страницу, или одной камеры.
«Архив» – страница просмотра архива. Если вы переходите в эту вкладу из страницы просмотра всх камер, нужно будет выбрать камеру, для которой браузер откроет просмотрщик архива.
«Опции» – выпадающее меню, в котором вы можете выбрать добавление/удаление камеры или поиск (см. ниже).
«Частота кадров» – с помощью бегунка вы сможете задать максимальную частоту обновления картинок со всех камер. Этот параметр влияет только на просмотр в браузере и не влияет на частоту кадров в серверной части Xeoma (запись будет идти в настроенном в Xeoma fps). Также частота кадров не будет выше, чем настроено в камере.
Просмотр одной камеры. Нажав на изображение с нужной камеры, вы перейдёте в режим просмотра одной – этой – камеры. Если у вас одна камера, для её просмотра нажмите на изображение с неё.
На странице просмотра одной камеры в верхней панели пункты остаются те же, за исключением «Частоты кадров», которая здесь заменяется на опцию с говорящим названием «Полноэкранный режим».
Под изображением с камеры вы можете выбрать частоту кадров и качество изображения (оба параметра влияют только на просмотр в браузере и не влияют на частоту кадров и качество в серверной части Xeoma).
Архив. Для просмотра архива какой-либо камеры перейдите во вкладку «Архив».
Здесь вы увидите название папки архива в Xeoma, шкалу воспроизведения (нужный участок можно выбирать бегунком или с помощью выпадающих списков дат и времени).
В «Параметрах просмотра» вы можете выбрать скорость воспроизведения и снизить качество для снижения трафика (этот параметр влияет только на просмотр в браузере и не влияет на частоту кадров в серверной части Xeoma).
Экспорт. Также есть выгрузка интересующего отрезка из архива на машину, с которой осуществляется просмотр. Для этого нажмите кнопку «Загрузить» и выберите начало и конец отрезка.
Просмотр в браузере потока со звуком.
Способ 1 — webRTC (актуальный, доступен только для Xeoma Pro и Пробной версии программы)
Cовременная технология webRTC, позволяющая использовать вычислительные мощности веб-браузера для просмотра «живого» потока со звуком и в некоторых случаях даже перенести часть нагрузки на его сторону.
Чтобы реализовать трансляцию через webRTC, включите в настройках модуля «Веб Сервер» опцию «Трансляция со звуком через webRTC (перекодирование на стороне браузера)» (чтобы перенести нагрузку от обработки стрима камеры на сторону браузера, в котором осуществляется просмотр) или «Трансляция со звуком через webRTC с перекодированием на стороне Xeoma» (для того, чтобы обработку стрима производила машина с серверной частью Xeoma). Эти опции доступны только в режиме Xeoma Pro и Пробной версии программы.
Если в настройках модуля «Веб Сервер» выбрана хоть одна из опций webRTC, то в веб интерфейсе Xeoma будет доступен выбор между просмотром MJPEG (используется по умолчанию) или webRTC. Переключение с MJPEG на webRTC и наоборот доступно отдельно на странице просмотра всех камер и на странице просмотра одной камеры.
При первом открытии страницы с включенным webRTC-вещанием со звуком браузер может выдать сообщение, что звуковые дорожки запрещены в настройках браузера. Чтобы включить возможность получать звук в браузере, передвиньте бегунок Громкости на ненулевое значение или включите воспроизведение звука в настройках браузера, например:
Обратите внимание, что опция «Трансляция со звуком через webRTC (перекодирование на стороне браузера)» работает только с H264-потоками. Если у вас используется H265/H265+ поток и выбрана эта опция, в веб-интерфейсе вы увидите предупреждение о невозможности webRTC-трансляции. В таком случае рекомендуем выбрать в настройках модуля «Веб Сервер» другую опцию — «Трансляция со звуком через webRTC с перекодированием на стороне Xeoma».
Способ 2 — Flash (Устаревший)
Adobe прекратила поддержку Flash Player 31 декабря 2020 года. Это значит, что данная технология не будет работать в новых версиях браузеров. Однако в версиях браузеров, вышедших до этой даты, поддержка описанного ниже способа еще возможна. |
Чтобы просмотреть Flash видео со звуком в окне браузера, в настройках модуля «Веб сервер» отметьте соответствующую ячейку и используйте ссылку для flv-видео (или перейдите к просмотру Flash-видео прямо из главной страницы просмотра веб сервера).
В окне просмотра Flash используйте кнопки:
A — чтобы сменить разрешение картинки;
B — чтобы начать воспроизведение / поставить воспроизведение на паузу;
C — чтобы изменить громкость звука
D — чтобы открыть поток во всю окно (включить полноэкранный режим — недоступен для Mac OSX)
Внимание! В браузере Mozilla для поддержки Flash может потребоваться установка плагина Flash плейер.
Добавление камер – вручную. Через веб интерфейс также можно найти и добавить IP камеры через пункт в верхней панели «Опции». Добавить камеру можно одну за другой вручную — с помощью пункта «Добавление источника»:
Добавление камер автоматическим поиском. Или вы можете использовать наш поиск:
Действуют те же правила, что и при поиске через клиент: можно искать по конкретному адресу или по подсети. Заполните все поля и нажмите «Начать сканирование».
Сравнение с клиент-серверным подключением.
+ В отличие от клиент-серверного подключения, просмотр камер через браузер может осуществляться с любого устройства с выходом в Интернет, в т.ч. с мобильных, планшетов, даже с не поддерживаемой операционной системой.
— Однако в отличие от клиент-серверного подключения, этот способ не работает, если на компьютере с Xeoma и камерами видеонаблюдения нет статического IP адреса.
Часть 2. Ведение записи архива на другой ПК
Если камера обрабатывается на одном ПК, а вести запись с неё нужно на другом компьютере, например, дублировать запись на центральный пункт мониторинга, это также осуществляется с помощью модуля «Веб сервер».
В данном случае необходимо к камере подключить «Веб сервер», а на принимающем компьютере (в нашем примере — на центральном пункте мониторинга) использовать вместо камеры модуль «Другая Xeoma»:
+ Вы сможете дублировать записи на другой ПК.
— Может потребоваться дополнительная лицензия (если количество используемых модулей превысит 3).
Совет: чтобы передавать на сервер не только видео, но и аудио и все метаданные, воспользуйтесь комбинацией «HTTP отправка на другую Xeoma» — «HTTP приемник».
Часть 3. Эмулирование IP камеры
Если хотите сделать из веб-камеры (USB камеры) IP камеру, доступную по сети другим компьютерам или Xeoma Cloud. В этом случае к нужной камере нужно подключить модуль «Веб сервер», на принимающем компьютере эта камера будет «подхвачена» как IP камера.
Часть 4. Встраивание на сайт
Изображение с камеры вы можете в режиме реального времени транслировать на ваш сайт. Динамически обновляемые картинки с камеры проиллюстрируют пробки на дорогах, погодные условия. Можно следить и транслировать потоки из жизни вашего домашнего любимца. разместить динамически обновляющиеся изображения или видео на вашем сайте и транслировать актуальные снимки и видео в высоком качестве без установки Xeoma, тем самым делая контент вашего сайта более привлекательным и полезным для гостей.
Пример использования Веб сервера для встраивания на сайт вы можете найти в статье нашего пользователя «Web сервер видеотрансляции при помощи IP-камеры и Xeoma».
API
Для вашего удобства есть API по взаимодействию с Xeoma:
Варианты забрать картинку с сервера (realtime preview):
1) mjpeg видео (если браузер поддерживает):
http://<сайт>:<порт>/<путь_MJPG_из_настроек>?oneframe=0&waitTimeoutMs=1000
2) mjpeg один кадр:
http://<сайт>:<порт>/<путь_MJPG_из_настроек>?oneframe=1&waitTimeoutMs=1000
3) jpeg один кадр:
http://<сайт>:<порт>/<путь_jpeg_из_настроек>?
Дописать в URL (то, что нужно):
а) указать разрешение для кадра: resolution=640×480&
б) указать пользователя: login=<пользователь>&
в) указать пароль: password=<пароль>&
waitTimeoutMs – это ожидание ответа от сервера, значение от 100 до 1000 в среднем.
Примеры:
1) mjpeg видео с указанным разрешением и пользователем:
http://localhost:10090/video0.mjpg?oneframe=0&waitTimeoutMs=1000&login=alladin&password=1
2) jpeg с с указанным разрешением и пользователем:
http://localhost:10090/image0.jpg?resolution=1024×768&login=alladin&password=1
Архив:
0) Список дат и минут не получить отдельными запросами. Также не получить отдельно список существующих архивов.
1) Список минут на нужную дату (если знаем дату) получить можно:
после адреса сервера указать команду archive_minutes=, где указать дату archive_date= и имя архива (из настроек) archive=
Пример:
http://localhost:10090/?archive_minutes=&archive_date=2015-11-26&archive=PreviewArchive.9
возвращает минуты в формате hh:mm, разделитель — перенос строки.
2) Кадр на нужную дату, минуту и секунду:
получить кадр можно через команду archive_frame=, зная имя архива, дату, минуту и миллисекунду внутри этой минуты.
Пример (забирает кадр из архива Preview+Archive.9 на дату 26.11.2015 13:19:45.435):
http://localhost:10090/?archive_frame=&archive=Preview+Archive.9&archive_date=2015-11-26&archive_minute=13:19&archive_millis=45435&maxResolution=&scaleFactor=100
Возвращает кадр в формате JSON вида:
{«base64jpeg»:»<тут_jpeg_в_base64>«, «millisFromMinuteStart»:<миллисекунды_от_начала_минуты>, «time»:»<запрошенная_минута>«, «status»:»Success»}
Пример ответа:
{«base64jpeg»:»/9j/4A….5Wf/9k=», «millisFromMinuteStart»:45448, «time»:»13:19″, «status»:»Success»}
При запросе неправильной даты или имени архива вернет:
{«base64jpeg»:»», «millisFromMinuteStart»:0, «time»:»00:00″, «status»:»RequestedMinuteNotExist»}
3) Имя архива настраивается в модуле архива. По умолчанию, оно имеет формат Preview+Archive.N, где N — номер (id) архива.
4) Список параметров:
scaleFactor — это параметр сжатия jpeg. От 0 до 100 (100 — лучшее качество). Лучше не указывать что-то ниже 80.
maxResolution — это размер картинки в формате 0x0 (ширина и высота)
archive_date — на какую дату забираем картинку. формат даты YYYY-MM-DD
archive_minute — на какую час-минуту забираем картинку. формат минуты hh:mm
archive_millis — на какую миллисекунду внутри указанной минуты забираем картинку. формат — число. от 0 до 59999.
archive — имя архива из настроек модуля архива
Авторизация:
http://IP:PORT/?login=LOGIN&password=PASSWORD&getsessionkey=
LOGIN — логин, PASSWORD — пароль.
Добавление камеры:
http://IP:PORT/?addchain=&cameraSettings=&cameraLogin=LOGIN&cameraPassword=PASSWORD&previewUrl=PREVIEWURL&archiveUrl=ARCHIVEURL&enableH264ArchiveId=false
LOGIN — логин камеры.
PASSWORD — пароль камеры.
PREVIEWURL — Url на просмотр.
ARCHIVEURL — Url для архива.
enableH264ArchiveId=false — галочка «Использовать запись H.264-потока в архив без перекодирования», false — выключено, true — включено.
Добавление FTP приемника:
http://IP:PORT/?addchain=&ftpReceiverSettings=&ftpReceiverServerAddress=ADDRESS&ftpReceiverServerPort=FTPPORT&ftpReceiverLogin=LOGIN&ftpReceiverPassword=PASSWORD
LOGIN — логин для входа на FTP сервер.
PASSWORD — пароль для входа на FTP сервер.
ADDRESS — адрес FTP сервера.
FTPPORT — порт FTP сервера.
Хотите кастомизировать страницы веб сервера Xeoma? Это просто. Воспользуйтесь нашей инструкцией по кастомизации веб сервера!
Как и остальные особенности Xeoma, «Веб сервер» так же прост в использовании и в то же время обладает профессиональной эффективностью. Модули программы для видеонаблюдения Xeoma созданы, чтобы решать ваши задачи.
Больше информации вы сможете найти в обучающем видео о работе модуля Веб сервер Xeoma.
Читайте также: Сравнение возможностей удалённого доступа
Обновлено 10 июня 2017