Скоро будет 7 лет с момента написания статьи "Видеонаблюдение под Ubuntu для «чайников» (ZoneMinder)". За эти годы она не раз корректировалась и обновлялась в связи с выходом новых версий, но кардинальная проблема, а именно — стоимость IP видеокамер, оставалась прежней. Её обходили оцифровывая аналоговые потоки и эмулируя IP камеры с помощью USB «вебок».

Ситуация изменилась с появлением китайских камер стандарта ONVIF (Open Network Video Interface Forum). Теперь любую камеру отвечающую стандарту вы можете настроить с помощью ONVIF Device Manager.


Более того, вы сразу можете увидеть адреса и параметры потоков вещания с камеры. Да, да. Теперь потоков, как минимум — 2, не считая звука. Один архивный — в максимальном качестве, другой — рабочий в меньшем разрешении.


* Все картинки кликабельны

Я буду рассказывать на примере камеры MISECU IPC-DM05-1.0 Купил её в «чёрную пятницу» по цене 1059,15 руб. Сейчас они подняли цену и я бы скорее приобрел GADINAN. Что в прочем, одно и то-же. В любом случае, аппаратная часть моей камеры определяется как hi3518e_50h10l_s39 не зависимо от того, какой логотип написан на коробке. Камера купольная, по факту представляет из себя шарик «на верёвочке» легко вынимаемый из гнезда-держателя. Если будете заказывать, обратите внимание, что блок питания надо покупать отдельно (DC 12V/2A). Я использовал БП от сгоревших китайских-же настольных часов. К сожалению, звука и управления позицией в камере нет. Для этих целей подойдет какой-нибудь беби-монитор типа этого или этого. Главное, что бы в названии было слово Onvif.

После распаковки и включения надо выставить IP адрес каждой камеры (по умолчанию у всех жестко 192.168.1.10), чтобы они не конфликтовали между собой. Это можно сделать в ONVIF Device Manager или штатной утилитой General Device Manage которая идет в комплекте, на мини CD. Далее, выставляем временную зону, параметры отображения дат и имя для каждой камеры. Создаем пользователей с правами «только для просмотра».

Веб-интерфейс камеры, программы CMS и интерфейс облака в браузере совершенно одинаковы, неудобны и требуют IE c ActiveX.


Благо, их можно с успехом заменить приложением XMeye установленным на Android или iOS. Но, прежде необходимо сделать нашу камеру видимой для облака. Для этого откройте порт по которому работает Onvif (8899) на вашем коммутаторе. В моём случае — это NAT Setting-Virtual Server. Если камер несколько, то внутренний порт для каждого IP оставляете прежним, а внешний меняете на пару значений. Далее, камера сама постучится в облако и предъявит свой индивидуальный CloudID. Вам нужно будет только добавить его в свой профиль в облаке.


Собственно, сама по себе камера уже может детектить движение, стримить видео и отправлять аллармы. Вкупе с облачным сервисом XMeye — это готовый сервис мониторинга.


Если вам хочется иметь свой собственный регистратор с архивами, и вы любите Windows, то ставьте бесплатные iSpy, или SecurOS Lite (до 32 камер) или бесплатную-же версию (до 8 камер) Xeoma. Кстати, у последней есть версии для Mac OS X, Linux включая ARM и Android.


С настройками не должно возникнуть проблем, так что можете дальше не читать. Остальная часть статьи написана для Linux.

Я был приятно удивлен обнаружив в Zoneminder v.1.30.0 визард для настройки ONVIF камер. Он позволяет подключить к консоли любой из потоков идущих с камеры в зависимости от аппаратных возможностей и потребностей оператора.






Установка и настройка Zoneminder никогда не были лёгким занятием. Последняя версия вышла особо капризной и требует предварительной установки веб-сервера LAMP, с последующим выполнением ряда дополнительных действий. Поэтому, приведу старый «джедайский» способ подключения камеры для более старых версий:

1. Определите адреса потоков через ONVIF Device Manager или Xeoma. У вас должно получиться что-то похожее:

rtsp://192.168.1.4/onvif1

или

rtsp://192.168.1.1*/user=****_password=****_channel=1_stream=1.sdp?real_stream

Не забудьте заменить звездочки (*) своими данными.

2. Проверьте адреса в проигрывателе VLC. Меню-Медиа-Открыть IRL

3. Добавьте новый монитор с параметрами:

Source Type — Remote
Remote Host Path — rtsp://192.168.1.1*/user=****_password=****_channel=1_stream=1.sdp?real_stream


Желаю удачи.
Поделиться с друзьями
-->

Комментарии (21)


  1. tem4a
    26.12.2016 15:54

    Как можно найти адрес вещания звукового потока на китайской камере?


    1. MrCleaner
      26.12.2016 15:58

      Также как видео. Например, на картинке с интерфейсом Xeoma, если колесико мыши вниз прокрутить — будет адрес аудио потока.


    1. Calc
      26.12.2016 17:22

      Для китайских камер я давно накатал такую штуку

      https://github.com/Calc86/onvif/blob/master/src/Main.java

      Если хоть немного знакомы с java, то можете под себя пересобрать.


  1. hokum13
    26.12.2016 17:01
    +2

    У ZM есть проблема с количеством одновременно отображаемых камер (5-6 для chrome&firefox). Обходится небольшим хаком системы:

    1. в DNS-е (или в hosts) делается кучка записей типа 1.zoneminder.local, 2.zoneminder.local, ... Из расчета 1 запись на 4 камеры.
    # Copyright (c) 1993-2009 Microsoft Corp.
    #
    # This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
    #
    # This file contains the mappings of IP addresses to host names. Each
    # entry should be kept on an individual line. The IP address should
    # be placed in the first column followed by the corresponding host name.
    # The IP address and the host name should be separated by at least one
    # space.
    #
    # Additionally, comments (such as these) may be inserted on individual
    # lines or following the machine name denoted by a '#' symbol.
    #
    # For example:
    #
    # 102.54.94.97 rhino.acme.com # source server
    # 38.25.63.10 x.acme.com # x client host

    # localhost name resolution is handled within DNS itself.
    # 127.0.0.1 localhost
    # ::1 localhost
    192.168.0.2 1.zoneminder.local
    192.168.0.2 2.zoneminder.local
    192.168.0.2 3.zoneminder.local
    192.168.0.2 4.zoneminder.local
    192.168.0.2 5.zoneminder.local


  1. zalessky
    26.12.2016 21:48

    ZM ооочень прожорливый. на D525 Атоме 6 камер (4*720 и 2*1080) не тянул. 100% загрузка проца
    Перепробовал кучу различных вариантов. Самым удобным оказался хренолоджи. Мало того, видеонаблюдение отъедает теперь не более 10% ресурсов и простая настройка камер, так еще много других полезностей


    1. MrCleaner
      26.12.2016 22:18

      Я правильно понимаю, что вы имели в виду XPEnology т.е модифицированную прошивку Synology DSM для PC или виртуальной машины? На форуме есть отдельная тема посвященная китайским камерам и проблемам с ними. Да, у сетевого накопителя Synology не плохие возможности для организации компактного видеонаблюдения, но переносить его на РС я бы не стал. Хотя… каждый точет как хочет :)


      1. zalessky
        27.12.2016 18:29

        Именно она. И проблем с настройкой зоопарка камер у меня было гораздо меньше, чем на иных платформах. не заработал только привод на поворотной камере, но его никто и не смог победить, кроме ONVIF Device Manager и родного китайского приложения от камеры
        А в чем проблема переноса на PC? ZM же на PC крутится?


  1. joker-zzz
    26.12.2016 22:11

    У нас на офисе стоит пара камер, выведенных в онлайн. Перекресток очень веселый под окном. Сплошные аварии. Пробовали собирать из говна и палок на коленке видеосервер на Linux. Узнали много нового про то, что китайский RTSP протокол != общемировому. Что есть нюансы с ZM и прочими Flussonic'ами. Пару раз приходили из полиции, просили запись, а нету. Стабильностью вся эта красота не отличается. В результате камеры заменены на Hikvision, пишется все на регистратор RVI.

    Кстати, есть Axxon Next Free. Поинтересуйтесь. Может быть пройдете под ограничениями.

    Теперь любую камеру отвечающую стандарту вы можете настроить с помощью ONVIF Device Manager.


    Не любую. А 50/50. ONVIF пока не очень стандартный стандарт. Его реализуют мягко говоря по-разному даже именитые производители. И в этой связи с совместимостью в сфере IP видеонаблюдения мы часто имеем проблемы.


    1. MrCleaner
      26.12.2016 22:25

      Всё правильно, коллега. Для офиса есть SLA и другой уровень требований, цен и уделенного времени. Впрочем, и статья бы тогда писалась для Хабра, а не для GeekTimes.


    1. dkv
      27.12.2016 21:09

      Axxon как раз таки свернул свою программу щедрости, а ISS наоборот отличился. 32 канала без ограничения под архивы с возможностью разворачивать несколько удалённых рабочих мест — это ли не сказка? Все эти ZM идут лесом. А кто боится винды под видеонаблюдение- тот просто не видел реального аптайма таких систем.


  1. zvic
    26.12.2016 23:52

    Теперь потоков, как минимум — 2, не считая звука. Один архивный — в максимальном качестве, другой — рабочий в меньшем разрешении.

    Не совсем так: архивный поток — максимальное разрешение, скорость записи 5 — 10 кадров в секунду (больше для разбора инцидента не надо), а вот «живое видео» необходимо показывать с максимально возможным количеством кадров, разрешение может быть маленьким, так как обычно показывается мультиплексированное изображение с нескольких камер на одном мониторе.


  1. lolipop
    27.12.2016 01:58

    Благо, их можно с успехом заменить приложением XMeye установленным на Android или iOS. Но, прежде необходимо сделать нашу камеру видимой для облака. Для этого откройте порт по которому работает Onvif (8899) на вашем коммутаторе. В моём случае — это NAT Setting-Virtual Server. Если камер несколько, то внутренний порт для каждого IP оставляете прежним, а внешний меняете на пару значений. Далее, камера сама постучится в облако и предъявит свой индивидуальный CloudID. Вам нужно будет только добавить его в свой профиль в облаке.

    5+ за вредные советы. ждите визита mirai.
    PS облачный сервис китайцев работает даже за тройным натом, ничего пробрасывать не нужно.


    1. codrem
      27.12.2016 03:53

      Облачный сервис можно отключить через так называемую CMS идущую в комплекте с китайскими камерами.
      Я себе на rpi3 построил сборку zm+motion+16gb SD card, работает так себе, но пару домушников уже засняло. У zm есть «фатальный недостаток» — оно пишет не видео, а картинки, из-за чего 100 алармов с лёгкостью забивают 8гб. Сейчас там есть альтернативная ветка, поддерживающая запись h264 напрямую в mp4 контейнер и показ алармов в html5 плеере, но все ещё нестабильно работает, зато те же 100 алармов занимают меньше гига места


      1. codrem
        27.12.2016 04:01
        +1

        И да, rtsp китайцы явно понимают по своему, потому что с ним регулярно какие-то грабли вылазит при декодировании, зато говорят если купить китайский же nvr все станет лучше и веселее. Тогда видео он будет забирать не по стандартному 554 порту, а через свой собственный — 34567. Там же передаются и метаданные алармов похоже. Буду признателен если кто знает как бы использовать этот порт для получения видео+мета и заворачивания в zm/ffmpeg/whatever чтоб на выходе иметь только архив видео алармов


        1. lolipop
          27.12.2016 11:18

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


          1. MrCleaner
            27.12.2016 12:16

            Вы про Ivideon Server говорите? Есть под Windows и MacOS. Насколько я понял при беглом осмотре, локально бесплатно, облачный сервис по подписке.


    1. MrCleaner
      27.12.2016 12:39

      Поясните. Мы убрали дефолтные логин и пароль администратора и дали выход данным по протоколу Onvif с IP адреса камеры. Сканирование портов коммутатора извне определит открытые порты и позволит злоумышленнику обращается к камере по открытому порту. Червь Mirai использует уязвимость установленных производителем комбинаций логин-пароль методом перебора из 61 возможной комбинации. Как это может нам навредить?
      Другое дело, что у меня нет сомнений, в возможных закладках от производителя. Допустим, он даже может получить права администратора на камеру внутри вашей домашней сети. Возможно, даже увидит шару ваших файлов. Что с того?


  1. Airrr
    27.12.2016 11:58

    А у вас есть в настройках камеры параметры rs232 порта? Там есть выбор none, GPS, general, transparent.
    На плате есть сам порт. При загрузке в нём консоль (в инете есть имя и пароль). Есть телнет на 23.
    И там есть /dev/ttyS000, который и является портом на плате.
    Только вот GPS, general, transparent ничего не меняют, и работает только echo 'test' > /dev/ttyS000 через телнет.

    А хотелось бы к нему приделать контроллер и управлять движением камеры, PTZ такой бюджетный. Кто бы разобрался с этим.
    Прошивок в интернете куча.


  1. MrZzzio
    27.12.2016 13:33

    Веб-интерфейс камеры, программы CMS и интерфейс облака в браузере совершенно одинаковы, неудобны и требуют IE c ActiveX.

    Подскажите пожалуйста, есть китайский аналоговый регистратор и пара камер к нему. Из за указанной выше проблемы в браузере смотреть и управлять можно только в Windows. Как на десктопе под Linux делать тоже самое? Умеет ли это Zoneminder или существуют более простые решения? Спасибо.


    1. MrCleaner
      27.12.2016 13:45

      Уточните модель, ответ будет точнее. В любом случае, проблема «IE c ActiveX» — это проблема интерфейса. Попробуйте Xeoma:
      "Xeoma также поддерживает видеорегистраторы – DVR, осуществляющие передачу данных по http/rtsp (есть прямые URL для MJPEG/JPEG/H264-потоков). Камеры будут определены в Xeoma как IP камеры при локальном поиске или поиске по IP/паролю. Также можно указать соответствующие URL в ручной настройке."


  1. LaFleur
    28.12.2016 12:20

    Если бы этот onvif действительно был стандартом для всех. И китайцев тоже. Жить было бы проще. И дешевле. Но пока не так. В итоге когда год назад нужно было организовать бюджетный вариант видеонаблюдения, скажем так, на даче — только 3г интернет — решили не рисковать и купили hikvision. Разумеется на aliexpress). И камеры, и простенький регистратор с poe. Производитель гарантирует работу своего регистратора только со своими же камерами, хотя поддержка onvif указана… но рисковать не охота, в итоге платим. Хотя надо заметить, что когда через год купили еще одну камеру, от производителя, поновее, даже с ней есть нюансы мелкие. Хотя производитель гарантирует… что уж про остальных говорить…
    P.s. в принципе победить проблемы железно программные можно. Но вот победить мошек и пауков на камерах пока не удается))