Необязательный пакет, предназначен для
тестирования системы видеонаблюдения без реальных
ip-видеокамер.
webcam-emu это эмулятор сетевых mjpg (Motion
JPEG
over HTTP)
видеокамер, например, Axis, Planet, D-Link, и другие,
см. список mjpeg
ip-камер.
webcam-emu “отдаёт” jpeg-и из некоторого каталога
по протоколу http.
Сначала вы должны прописать или удостовериться что
прописан debian-репозитарий AVReg в конфигурационном
файле менеджера пакетов APT
«/etc/apt/sources.list».
Примеры строк в /etc/apt/sources.list для некоторых
deb-дистрибутивов.
# Debian 4.0 Etch
deb http://avreg.net/debian/ etch main contrib non-free
# Debian 5.0 Lenny
deb http://avreg.net/debian/ lenny main contrib non-free
# Ubuntu 8.04 Hardy Heron
deb http://avreg.net/ubuntu/ hardy main contrib non-free
# Ubuntu 8.10 Intrepid
deb http://avreg.net/ubuntu/ intrepid main contrib non-free
Примечание: вместо avreg.net вы можете
использовать зеркало
avreg.linuxdvr.ru
Далее, выполните следующие 2 команды.
Выполнять от root-а или через sudo
# aptitude update
# aptitude install webcam-emu
Прим.: вместо команды aptitude вы можете
пользоваться apt-get, Synaptic или любым
другим фронтендом пакетного менеджера APT.
Если вы хотите использовать webcam-emu на других
Linux-дистрибутивах или операционных системах, вы можете
самостоятельно портировать и доработать
Makefile и, возможно, исходные коды пакета
webcam-emu (GPLv2) с учётом правил и
политик сборки ваших систем.
Исходный код самой программы представляет собой скрипт
на языке Ruby, который портирован и включен в большинство
дистрибутивов Linux и Unix.
Сразу после установки пакета устанавливается
автоматический способ запуска (sysv init) в момент
запуска/загрузки компьютера.
Интерактивный способ запуска, в любом терминале,
CTRL-C - выход.
$ webcam-emu
[2009-05-19 14:16:47] INFO WEBrick 1.3.1
[2009-05-19 14:16:47] INFO ruby 1.8.5 (2006-08-25) [i486-linux]
[2009-05-19 14:16:47] INFO WEBrick::HTTPServer#start: pid=5635 port=60001
localhost - - [19/May/2009:14:18:39 MSD] "GET /mjpg/video.mjpg?fps=3 HTTP/1.1" 200 0
- -> /mjpg/video.mjpg?fps=3
<CTRL-C>
[2009-05-19 14:16:51] INFO going to shutdown ...
[2009-05-19 14:16:51] INFO WEBrick::HTTPServer#start done.
Запуск демоном, остановка, перезапуск.
# /etc/init.d/webcam-emu {start|stop|restart}
или
# invoke-rc.d webcam-emu {start|stop|restart}
Все настройки webcam-emu находятся в конфигурационном
файл «webcam-emu.yaml» текстового
формата YAML, который основной скрипт
webcam-emu будет последовательно “искать” в
следующих каталогах:
-
«/etc/webcam-emu/»,
-
«/etc/»,
-
«$HOME/»
-
и текущем
«./».
По-умолчанию, устанавливается файл
«/etc/webcam-emu.yaml»
/etc/webcam-emu.yaml
### Параметры http сервера Webrick ###
:BindAddress: '0.0.0.0' # принимать запросы на этом адресе/интерфейсе
# "0.0.0.0" - на любых адресах/интерфейсах
:Port: 60001 # номер порта tcp
:MaxClients: 64 # макс. кол-во одновременных соединений
:RequestTimeout: 5 # время ожидания запроса после соединения
:ServerSoftware: 'webcam-emu/0.5'
### Параметры эмулятора ###
Debug: false
JpegsRoot: '/var/lib/webcam-emu'
# Структура каталогов с jpeg-файлами:
# {JpegsRoot}/
# 640x480/
# color/
# 01.jpg, 02.jpg, ...
# grey/
# 01.jpg, 02.jpg, ...
#
# CGI параметр "resolution"
DefResolution: '640x480' # значение по-умолчанию для "resolution"
# CGI параметр "color"
DefColor: 1 # значение по-умолчанию для "color",
# 1(цвет.) или 0 (ч/б.)
# url-path алиасы для режима снапшот или одиночный кадр
JpegHandler:
:aliases:
- '/axis-cgi/jpg/image.cgi' # любые Axis ip-камеры и видеосерверы
- '/jpg/image.jpg' # большинство ip-камер Planet
- '/image.jpg' # некоторые D-Link ip-камеры
# url-path алиасы и другие параметры
# режима потокового mjpg-видео по протоколу http (Motion JPEG)
MjpgHandler:
:boundary: 'myboundary' # строка-разделитель boundary
:default_fps: 5 # кадров в секунду, CGI параметр "fps"
:default_mode: 0 # CGI параметр "mode", допустимые значения:
# 0 - последовательно передавать все jpeg-файлы
# 1 - передавать jpeg-файлы с шагом равным
# значению параметра "fps", т.е. эмулировать
# пропуск кадров или ограничение fps на
# "живом" 25(PAL)/30(NTSC) fps источнике видео
# 2 - начинать передачу с первого jpeg-файла
# в начале каждой секунды
:aliases:
- '/axis-cgi/mjpg/video.cgi' # любые Axis ip-камеры и видеосерверы
- '/mjpg/video.mjpg' # большинство ip-камер Planet
- '/mjpeg.cgi' # некоторые D-Link ip-камеры
# Смотрите также другие известные нам пути URL в других ip-камерах:
# http://www.linuxdvr.ru/rus/docs/apps-ipcam-capture.html
Значения параметров «resolution»,
«color», «fps», и
«mode» можно устанавливать CGI-параметрами
(т.е. в самом URL-e для запроса
GET), например:
http://localhost:60001/mjpeg.cgi?resolution=720x576&color=0&fps=12&mode=2
Из какого каталога webcam-emu будет читать и отправлять
jpeg-файлы, определяется значениями параметров
«resolution» и «color» (см.
описание структуры каталогов в комментариях конф. файла
выше).
http://localhost:{Port}/axis-cgi/mjpg/video.cgi
http://localhost:{Port}/mjpg/video.mjpg?resolution=640x480&color=1&fps=3
http://localhost:{Port}/mjpg/video.mjpg?fps=7&mode=2
“Нативно”, т.е. без плагинов, апплетов, ActiveX-ов и
т.п. приблуд
, с потоком Motion JPEG может
работать только Mozilla Firefox (из известных браузеров,
естественно). Для Mozilla Filerox есть 2 способа
отображения motion jpeg видео:
-
Открыть
URL
непосредственно:
firefox
'{URL}'
(ну, или набрав в адресной строке). Простой, но не
очень стабильный способ.
-
Создать тестовую страницу с элементом
<IMG src="URL">,
например:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Mozilla Firefox html page for webcam-emu testing.</title>
</head>
<body>
<img src="http://localhost:60001/mjpg/video.mjpg?fps=3"
alt="see mjpg video here">
</body>
</html>
Если видео всё же не отображается, в числе прочего,
проверьте, не установлено ли у вас расширение
ImgLikeOpera (ILO), блокирующее загрузку
картинок?
Дополнительно, попробуйте обновить страницу (reload,
<F5>) или выбрать пункт «Загрузить изображение» в
контекстном меню, выпадающем по нажатию правой кнопки
мыши над элементом <IMG>.
vlc 'http://localhost:60001/mjpg/video.mjpg'
ffplay 'http://localhost:60001/mjpg/video.mjpg'
Первым шагом вам нужно установить программу
видеорегистрации AVReg. Полное руководство пользователя с
пошаговой инструкцией по установке читайте здесь
«Руководство пользователя.»
Для установки серверной части (без локального просмотрщика камер
avreg-mon, т.е. в реальном времени просмотр только
веб-браузером) достаточно установить метапакет
«avreg-server».
выполните от root-а или через sudo
aptitude install avreg-server
Далее, заходите веб-браузером по адресу:
http://localhost/avreg/
или, если вы работаете с другого компьютера по
сети
http://на-каком-там-сервере-у-вас-стоит-AVReg/avreg/
вводите логин «admin» или
«install» с пустым паролем и переходите на
страницу настройки камер по ссылкам «Настройки и
управление” и далее «Настройки» →
«Видеокамеры».
Для каждой “AVReg-овой” камеры (т.е. ранее
созданных в “админском” веб-интерфейсе), которая
планируется для использования с эмулятором, в
веб-интерфейсе нужно определить нижеследующие
параметры.
Если таких «эмулируемых» камер много или вообще все, то
вы можете определить значения параметров всего лишь
для одной специальной виртуальной AVReg-овой
камеры с именем «параметры для
всех».

Раздел «Главное»:
work = "Вкл."
Раздел «Камера»:
cam_type = "netcam"
geometry = 640x480, т.к. цветные jpeg-и 640x480 включены в пакет webcam-emu
color = 1
«Камера» ⇒
«ip-камеры»:
InetCam_IP = ip-адрес хоста, на котором работает эмулятор webcam-emu
«Камера» ⇒
«ip-камеры» ⇒
«протокол http»:
InetCam_http_port = tcp-порт, который слушает webcam-emu,
если не меняли, то 60001.
V.http_get = строка запроса GET, например, /mjpg/video.mjpg?fps=5
Если вы не можете найти параметр
InetCam_http_port в этом разделе, установите
«показывать все параметры» (а не «только основные»).

Удостоверьтесь что в конфигурационном файле
«/etc/avreg/avreg.conf» установлен
параметр «allow-duplicated-url».
/etc/avreg/avreg.conf, секция avregd {...}
# Позволять захватывать медиа-потоки с нескольких видеокамер
# с одинаковыми ip-адресом и номером порта, например, при
# использовании эмулятора mjpg веб-камер webcam-emu.
# Закомментируйте или установите в "no" при использовании
# c реальными ip-камерами.
allow-duplicated-url = yes
Далее, настраивайте любые другие AVReg-параметры «по
вкусу» и изучайте возможности и проверяйте работу
программы видеорегистрации AVReg в деле, а не со слов
маркетологов и прочих “продвигологов”
.


Всё, до развёртывания настоящей системы видеонаблюдения
остался всего лишь один шаг - покупка реальных видеокамер.
Сюда планируется разместить ссылки на
ваши цельные
статьи (не просто заметки в форуме и т.п.) по
настройке и тестированию ZoneMinder с использованием
нашего
webcam-emu (GPLv2). Напишите нам если вы
напишите и разместите в сети такую статью.