Zoneminder не показывает видео в браузере

Обновлено: 04.07.2024

В ходе роста и развития бизнеса мы доросли до того, чтобы обзавестись видеонаблюдением на территории. Нам смонтировали 10 камер и дошло дело до регистратора. Но мы ж любим компьютеры, Linux и бесплатный софт, поэтому начали искать решение, которое объединило бы все это. Ставить обычный видеорегистратор как-то не хотелось, по мне это решение для дома, которое работает из коробки, но абсолютно не гибкое и не масштабируемое.

В нашем сервере еще оставались свободные мощности и мы решили сделать сервер видеонаблюдения (NVR) как у больших. 160 Гб места на жестком диске должно было хватить для тестирования. Вообще мы планировали установить дополнительную дисковую полку и держать 30 дневный архив. Для этого нам надо около 8 Тб свободного места.

В качестве системы виртуализации на сервере у нас стоит Proxmox. Для NVR было выделено 4 ядра на процессоре, 16 ГБ ОЗУ и 160 Гб на диске (на первое время).

Устанавливаем операционную систему c Apache, MySQL и PHP

Устанавливаем ZoneMinder

Русификация ZoneMinder

Скачиваем файл с русским языком по данной ссылке - Руссификация .

Заменяем файл ru_ru.php из папки /usr/share/ zm/lang на скачанный нами файл

Настройка ZoneMinder

По умолчанию, доступ в ZM осуществляется без пароля, что не очень безопасно, поэтому надо включить аутентификацию. Выбираем в верхнем меню options - system и ставим галочку рядом с OPT_USE_AUTH. Логин: пароль по умолчанию admin:admin. Его можно поменять в разделе Users / Пользователи .

Включаем русский язык - Options - System в поле LANG_DEFAULT выбираем RU-RU. Нажимаем сохранить внизу страницы. При изменении любых параметров они вступят в силу только после того как вы их сохраните.

Обзор ZoneMinder

Главная страница

Верхнее меню

Сервер - страница, где отображаются, подключаются и настраиваются камеры видеонаблюдения.

Опции - страница с настройками.

Журнал - страница с логами, отображаются различные ошибки и события на которые стоит обратить внимание.

Группы - при добавлении камер вы можете их группировать. Когда у вас их 10 - это не нужно, но когда у вас их 300, то логично их как-то объединить.

Фильтры - ZM довольно гибкая программа и тут можно настраивать различные действия и условиях. По умолчанию работает 2 фильтра - очистка старых записей при заполнении диска и обновление дискового пространства (вот какую функцию этот фильтр выполняет пока не понял).

Цикл - показывает изображение с одной камеры, потом с другой и т.д. Смена происходит через определенных интервал.

Общий вид - показывает изображение со всех ваших камер на одной странице.

Обзор общего вида - также показывает изображение со всех ваших камер, но только еще можно посмотреть запись, если она у вас включена.

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

Строка состояния.

Чуть ниже Верхнего меню есть строка с информацией о состоянии сервера.

Нагрузка - показывает условную цифру в попугаях нагрузки на сервер. Чем она меньше тем лучше.

DB - состояние базы данных, но что значит 24/151 для меня загадка. Подозреваю, что когда будет 151/151 база будет переполнена.

Хранилище - показывает название хранилища (их можно быть несколько и названия могут быть разные) и сколько места занято в каждом хранилище.

/dev/shm - отображает объем занятой оперативной памяти в %.

Добавление новой камеры

Zoneminder умеет работать как с usb, так и с IP-камерами. Но USB на не интересуют, мы будем настраивать IP-камеры.

ZM может автоматически находить камеры, что очень упрощает их установку и настройку. Для этого камеры должны находиться в той же подсети, что и регистратор.

Нажимаем кнопку "Добавить монитор" (почему ZM называет камеру монитором для меня загадка). В правом верхнем углу нажимаем "Поиск камер ONVIF". ZM не всегда с первого раза может найти все камеры. Пробуйте несколько раз.

Выбираете нужную камеру, имя пользователя и пароль вводить не нужно (если они у вас не установлены на самой камере). Нажимаем След. выбираем профиль камеры (разрешение и частоту кадров) и Готово. После этого у вас будет заполнено окно с настройками камеры и вам надо будет только немного подкорректировать под себя.

Окно настройки камеры

Окно имеет 6 вкладок.

Вкладка Общее

Название -пишите название английскими буками. С русскими происходит какая-то проблема - они потом пропадают.

Примечание - тут можно указывать все что вам хочется.

Сервер - имеет смысл, когда у вас ZM разнесен по разным серверам и вы хотите, что бы за эту камеру отвечал конкретный сервер.

Тип источника - для IP камер лучше выбрать FFmpeg.

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

Разрешен - ставим галочку.

Привязанные мониторы - можно настроить что бы определенная камера писала при срабатывании движения на другой камере.

Группы - группировка камер.

Ограничение скорости записи - можно задать что бы ZM писал например со скоростью 15 кадров в секунду, но при этом ваша камера должно уметь писать больше 15 к/с иначе толку от настройки не будет.

Максимальный FPS для тревоги - можно настроить частоту кадров в режиме обычной записи например 5 к/с, а в режиме когда сработала тревога, например по движению, 25 к/с и записать каждый шаг нарушителя вашего спокойствия.

Устройств bktr -4 шт (столько же и микросхем), к плате можно подключить 16 камер, логично предположить что на одно устройство bktr можно подключить до 4х камер.
Вопрос как корректно указывать в ZM куда подключаться ? -> /dev/bktr0 ?

Отвечу, наверное нужно канал указывать при подключении bktr.
Сразу както не заметил . нет, номер ввода указывается в ZM, при конфигурации канала kodi писал(а): нет, номер ввода указывается в ZM, при конфигурации канала Я вас правильно понимаю, что при добавлении монитора на вкладке "Источник", в поле "Device Path" указываем /dev/bktr0, а в поле "Канал" выбираем из выпадающего списка номар канала?
В моем случае, как я понимаю, это номера 1. kodi писал(а): нет, номер ввода указывается в ZM, при конфигурации канала Я вас правильно понимаю, что при добавлении монитора на вкладке "Источник", в поле "Device Path" указываем /dev/bktr0, а в поле "Канал" выбираем из выпадающего списка номар канала?
В моем случае, как я понимаю, это номера 3. да, только 1-ый вход, в ZM у вас будет 16-ым .. в общем поищите его, он врятли совпадет с "названием"

Еще вопрос, у меня на данный момент нет аналоговой камеры что б подключить к плате, собственно проверить пока нет на чем.
Но когда я добавляю устройство и канал при попытке что то посмотреть в браузере на месте изображения "крестик", пиктограмка как будто на сайте нет картинки.

Так и должно быть, если не работает bktr или выбран не верный канал ? Или эфект должен быть другой, к примеру какой нить черный или серый экран.

Просто есть подозрения что что то не работает .
1. В логе messages

2. После перезагрузки Zm не запускается автоматом, руками - стартует нормально.
Как вычислить почему, и решить вопрос ?

За отсутствием камеры пока отложил настройку ZM bktr.

В наличии есть еще одна плата.
Производитель х.з

На плате 3 микросхемы, MV9200 – Vastvision P6an3-010 – 2 шт, Plx PCI6140-AA33PC - контроллер PCI.
Вывод pciconfig - lv

Возникла на днях нештатная ситуация. Ночью в системе видеонаблюдения ZoneMinder v. 1.28.1 отвалились камеры, подключенные через RTSP. Камеры автоматически обратно не подключились.

Все камеры работали, можно смотреть с них поток по RTSP в VLC. Но ZoneMinder показывает IP-шники красным, и захват видео с них не проводил.

Лог в виде картинки (с цветовой разметкой ошибок):


Лог в виде текста:

2015-07-20 01:15:54.622510 zmaudit 26137 INF Deleted 48 log table entries by time zmaudit.pl

2015-07-20 01:00:52.953100 zmaudit 26137 INF Deleted 54 log table entries by time zmaudit.pl

2015-07-20 00:45:51.383940 zmaudit 26137 INF Deleted 56 log table entries by time zmaudit.pl

2015-07-20 00:30:49.690660 zmaudit 26137 INF Deleted 68 log table entries by time zmaudit.pl

2015-07-20 00:15:47.998110 zmaudit 26137 INF Deleted 53 log table entries by time zmaudit.pl

2015-07-20 00:00:46.349670 zmaudit 26137 INF Deleted 68 log table entries by time zmaudit.pl

2015-07-19 23:45:44.635080 zmaudit 26137 INF Deleted 50 log table entries by time zmaudit.pl

2015-07-19 23:30:42.949400 zmaudit 26137 INF Deleted 53 log table entries by time zmaudit.pl

2015-07-19 23:15:41.300300 zmaudit 26137 INF Deleted 64 log table entries by time zmaudit.pl

2015-07-19 23:00:39.623740 zmaudit 26137 INF Deleted 50 log table entries by time zmaudit.pl

2015-07-19 23:00:32.086790 zmwatch 26146 ERR Unable to run "/usr/bin/zmdc.pl restart zmc -m 1", output is "Unable to connect to server" zmwatch.pl

2015-07-19 23:00:31.903150 zmwatch 26146 INF Restarting capture daemon for Monitor-1, shared data not valid zmwatch.pl

2015-07-19 23:00:30.881810 zmdc 26060 ERR 'zmc -m 4' exited abnormally, exit status 255 zmdc.pl

2015-07-19 23:00:30.848380 zmdc 26060 ERR 'zmc -m 3' exited abnormally, exit status 255 zmdc.pl

2015-07-19 23:00:30.775600 zmdc 26060 ERR 'zmc -m 1' exited abnormally, exit status 255 zmdc.pl

2015-07-19 23:00:30.731380 zmdc 26060 INF Starting pending process, zmc -m 2 zmdc.pl

2015-07-19 23:00:30.701511 zmc_m4 21752 INF Terminating Logger zm_logger.cpp 238

2015-07-19 23:00:30.701393 zmc_m1 21733 INF Terminating Logger zm_logger.cpp 238

2015-07-19 23:00:30.701159 zmc_m3 21746 INF Terminating Logger zm_logger.cpp 238

2015-07-19 23:00:30.649840 zmdc 26060 ERR 'zmc -m 2' exited abnormally, exit status 255 zmdc.pl

2015-07-19 23:00:30.648150 zma_m1 2017 WAR Signal: Lost zm_monitor.cpp 1312

2015-07-19 23:00:30.640013 zma_m3 2076 WAR Signal: Lost zm_monitor.cpp 1312

2015-07-19 23:00:30.631269 zma_m4 2162 WAR Signal: Lost zm_monitor.cpp 1312

2015-07-19 23:00:30.630997 zmc_m1 21733 ERR Failed to pre-capture monitor 1 256406500 (1/1) zmc.cpp 315

2015-07-19 23:00:30.612571 zmc_m3 21746 ERR Failed to pre-capture monitor 3 230245348 (1/1) zmc.cpp 315

2015-07-19 23:00:30.611971 zmc_m4 21752 ERR Failed to pre-capture monitor 4 251864036 (1/1) zmc.cpp 315

2015-07-19 23:00:30.571584 zmc_m2 21739 INF Terminating Logger zm_logger.cpp 238

2015-07-19 23:00:30.533832 zma_m2 2044 WAR Signal: Lost zm_monitor.cpp 1312

2015-07-19 23:00:30.523613 zmc_m2 21739 ERR Failed to pre-capture monitor 2 228574180 (1/1) zmc.cpp 315

2015-07-19 23:00:30.128932 zmc_m1 21735 ERR RTSP timed out zm_rtsp.cpp 725

2015-07-19 23:00:30.108945 zmc_m4 21755 ERR RTSP timed out zm_rtsp.cpp 725

2015-07-19 23:00:30.108917 zmc_m3 21748 ERR RTSP timed out zm_rtsp.cpp 725

2015-07-19 23:00:30.019289 zmc_m2 21741 ERR RTSP timed out zm_rtsp.cpp 725

2015-07-19 23:00:17.167846 zma_m1 2017 INF Monitor-1: 4374000 - Processing at 5.99 fps zm_monitor.cpp 1179

2015-07-19 22:59:23.370721 zma_m2 2044 INF Monitor-2: 4373000 - Processing at 5.99 fps zm_monitor.cpp 1179

2015-07-19 22:59:19.442285 zma_m4 2162 INF Monitor-4: 4380000 - Processing at 5.99 fps zm_monitor.cpp 1179

2015-07-19 22:58:55.409358 zma_m3 2076 INF Monitor-3: 4374000 - Processing at 5.99 fps zm_monitor.cpp 1179

2015-07-19 22:58:43.094760 zma_m2 2044 INF Monitor-2: 4372758 - Closing event 18260, alarm end zm_monitor.cpp 1531

2015-07-19 22:58:43.067326 zma_m2 2044 INF Monitor-2: 4372758 - Left alarm state (18260) - 76(1) images zm_monitor.cpp 1526

2015-07-19 22:58:35.229570 zma_m2 2044 INF Monitor-2: 4372708 - Gone into alert state zm_monitor.cpp 1519

2015-07-19 22:58:34.679224 zma_m2 2044 INF Monitor-2: 4372707 - Opening new event 18260, alarm start zm_monitor.cpp 1483

2015-07-19 22:58:34.595852 zma_m2 2044 INF Monitor-2: 4372707 - Gone into alarm state zm_monitor.cpp 1463

В ходе решения проблемы вот что нарыл. Вручную запущенный zmdc.pl выдает следующее:

$ /usr/bin/zmdc.pl restart zmc -m 1

Unable to connect to server

Похоже, что вывалился сервис zoneminder:

ZoneMinder is stopped

Вот какие процессы были запущены в момент, когда сервис zoneminder не работал:

www-data 2017 6.6 1.8 202760 77004 ? S Июл11 872:13 /usr/bin/zma -m 1

www-data 2044 7.3 1.8 202760 76992 ? S Июл11 954:51 /usr/bin/zma -m 2

www-data 2076 6.4 1.8 202760 77000 ? S Июл11 835:51 /usr/bin/zma -m 3

www-data 2162 4.5 1.8 202760 76980 ? S Июл11 591:07 /usr/bin/zma -m 4

root 8239 0.0 0.0 5280 760 pts/3 S+ 12:44 0:00 grep zm

www-data 26125 0.0 0.3 31664 14560 ? S Июл08 0:21 /usr/bin/perl -wT /usr/bin/zmfilter.pl

www-data 26137 0.0 0.2 27024 10024 ? S Июл08 2:49 /usr/bin/perl -wT /usr/bin/zmaudit.pl -c

А вот что стало, после того, как вручную был запущен сервис zoneminder :

www-data 9425 0.0 0.1 25384 6916 pts/3 S 12:59 0:00 /usr/bin/perl -wT /usr/bin/zmdc.pl startup

www-data 9457 2.2 1.8 206816 77112 pts/3 Sl 12:59 0:05 /usr/bin/zmc -m 1

www-data 9458 11.5 1.8 202760 76992 pts/3 R 12:59 0:27 /usr/bin/zma -m 1

www-data 9473 2.3 1.8 206804 77372 pts/3 Sl 12:59 0:05 /usr/bin/zmc -m 2

www-data 9476 13.5 1.8 203952 77784 pts/3 R 12:59 0:32 /usr/bin/zma -m 2

www-data 9491 2.2 1.8 205888 77104 pts/3 Sl 12:59 0:05 /usr/bin/zmc -m 3

www-data 9506 11.7 1.8 202760 76992 pts/3 S 12:59 0:28 /usr/bin/zma -m 3

www-data 9516 1.0 1.8 206664 77120 pts/3 Sl 12:59 0:02 /usr/bin/zmc -m 4

www-data 9517 4.4 1.8 201568 75632 pts/3 S 12:59 0:10 /usr/bin/zma -m 4

www-data 9528 0.0 0.3 31040 13912 pts/3 S 12:59 0:00 /usr/bin/perl -wT /usr/bin/zmfilter.pl

www-data 9536 0.0 0.2 27016 9876 pts/3 S 12:59 0:00 /usr/bin/perl -wT /usr/bin/zmaudit.pl -c

www-data 9543 0.0 0.1 25252 8152 pts/3 S 12:59 0:00 /usr/bin/perl -wT /usr/bin/zmwatch.pl

www-data 9553 0.0 0.3 29296 12544 pts/3 S 12:59 0:00 /usr/bin/perl -w /usr/bin/zmupdate.pl -c

root 9884 0.0 0.0 5276 764 pts/3 S+ 13:03 0:00 grep zm

Видно, что при старте сервиса zoneminder, все процессы были перезапущены (см. на время).

После этого действия ZoneMinder снова стал захватывать видео.

Таким образом, стало понятно, что упал сам ZoneMinder и его ватчдог zmwatch.pl . Для решения проблемы пришлось прописать /etc/crontab :

* * * * * root test "`service zoneminder status`" = "ZoneMinder is stopped" && service zoneminder start

После чего, для теста, искуственно был остановлен сервис zoneminder . Через минуту он был снова автоматически запущен и захват видео работал как прежде.

Репутация: 2
Всего: 109

Поставил zoneminder.
Подключил usb-камеру.
Всё пишет.
Видео генерирует для просмотра.
НО!

Живую трансляцию немогу никак просмотреть.

Firefox просто белое место показывает, а хром показывает вот что:

Особых ошибок в логах не вижу.

Что делать?
Куда копать?
Хочу живую трансляцию смотреть.

user posted image

Программистами не рождаются, - это родовая травма.

Репутация: 7
Всего: 88

Официальный форум или что-то в этом духе не спрашивали?
Utility is when you have one telephone, luxury is when you have two, opulence is when you have three — and paradise is when you have none.
— Doug Larson

Репутация: 2
Всего: 109

Пока нет.
Сейчас на стадии чтения доков.

user posted image

Программистами не рождаются, - это родовая травма.

  • Конкретные вопросы о конкретном ПО. В таких вопросах желательно привести точные данные о программе: версия программы, версия ОС, версия ядра, и проблему в форме: сделал Х, хотел получить Y, а получил Z.
  • Неконкретные вопросы о выборе ПО
  • Обзоры - как дополнение в ветку Обзоры
  • Вы должны соблюдать правила форума.
  • Помните: какой вопрос, такой и ответ. Прежде чем задать вопрос прочитайте вот эту статью на форуме CIT.
  • Оскорблять запрещается.
  • Религиозные войны в Религиозных войнах.
  • Общение "просто так" в Клубе юнуксоидов. В отличие от многих других разделов, здесь разрешается сдержанно оффтопить и юморить в тему.

За интересные статьи, находки, решения, программы и просто реальную помощь будут ставиться + в репу).

В данный момент этот раздел модерируют nerezus, nickless, powerfox, pythonwin, Imple и ZeeLax. Если вы хотите помочь нам, пишите в ПМ и мы обсудим.

[ Время генерации скрипта: 0.0917 ] [ Использовано запросов: 21 ] [ GZIP включён ]

Читайте также: