Main

Подключение IP-камер

На данной странице рассмотрим примеры использования IP - камер совместно с системой MajorDoMo Project.

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

Китайская ip PTZ камера Kai Cong для использования внутри помещения.

Технические характеристики

Подключение видеокамеры к системе можно осуществить простым добавлением в меню нового пункта с данными как показано в примере

<div align="center">
<br><img src="http://192.168.1.152/videostream.cgi?user=user&pwd=&resolution=8&rate=6" width="240">
</div>

Либо создать страницу и вывести на нее все камеры видеонаблюдения. Все зависит от Вашего желания.

В итоге мы получили вот такой вариант

Реагирование системы MajorDoMo Project на движение в камере.

Данный алгоритм реализовать в системе MajorDoMo Project можно несколькими способами. В данной статье мы попробуем рассмотреть их все. Какой из них реализовать у себя решать Вам...

1 Способ:

Большинство IP -Камер умеет работать с FTP сервером, т.е. имеется функция отправки видеофайлов либо снимком камеры с определенной переодичностью. Отправка может осуществляться по различным сценариям. Все зависит от функционала используемой камеры. Подробно останавливаться не будем. Обсуждение данной тематики можно перенести на форум форум.

Способ заключается в том, что в системе MajorDoMo Project имеется модуль слежения за папками Folders Последовательность действий пользователя сводится:

  • установить на компьютер, где используется система MajorDoMo Project любой FTP сервер
  • настроить камеру (отправка данных на FTP сервер)
  • настроить модуль слежения за папками Folders

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

2 Способ:

Реализовать возможно через отправку в систему запроса по принципу описанному в сценарии

Система безопасности и реакции на движение в доме

Запрос должен быть вида
http://homeserver/objects/?object=sensorMovement1&op=m&m=statusChanged&status=1

Например при использовании любой web камеры подключенной к компьютеру совместно с программой Webcam XP Описание Webcam XP можно воспользоваться функцией отправки СМС для отправки запроса в систему MajorDoMo Project.

3 Способ:

При наличии в IP камере (I/O Alarm Contacts/Ports)

можно реализовать сопряжения с контроллером Arduino на примере Датчика открытия въездных ворот.

Пример части кода для Arduino реализующий этот вариант использования IP камеры

//PODVAL Web SENSOR
Serial.println("G");
int current_garage = digitalRead(5);
//Serial.println(current_garage);
if (current_garage != (int)old_garage) 
{
   old_garage = (int)current_garage;
   sprintf(buf, "GET /objects/?object=sensorPodval&op=m&m=statusChanged&status=%i HTTP/1.0", (int)current_garage);
   sendHTTPRequest();
}

Подключаем датчик открытия въездных ворот

Для тех кто по какой то причине не может получить видеопоток со своей камеры, предлагаю использовать следующий вариант подключения. Скачиваем http://www.devline.ru/demo/ и устанавливаем демоверсию ПО "Линия" (от полной отличается только отсутствием записи). После установки в системе появляется видеосервер к которому можно подключить до 16 IP камер. Процесс подключения прост, достаточно указать ip адрес камеры, порт и при необходимости логин и пароль доступа к камере.

Программа сама подхватит поток и определит его параметры, иногда нужно подождать пару минут до завершения установки. Использование встроенного веб-сервера позволяет проводить интеграцию со сторонним программным обеспечением. http://www.devline.ru/aboutweb/ Для простоты воспользуемся готовым сервисом генерации кода http://www.devline.ru/translation/

Указываем данные как на скриншоте, (логин и пароль, а также уровни доступа настраиваются в программе заранее) После чего генерируем HTML код, который копируем на стрницу в MajorDoMo.

результат выглядит так

Jager

В данной статье мы рассмотрели несколько вариантов реализации поставленной задачи. Какой из вариантов использовать, решать только Вам.

Все вопросы, пожелания и обсуждение как в общем, так и в отношении данных примеров пишем на форуме


 

Обсуждение

 

mikhail.sn: Вы использовали видеопоток с cgi скрипта "videostream.cgi". В моей веб камере такого нету. Как узнать с какого скрипта брать видеопоток?

sergejey: Вы использовали видеопоток с cgi скрипта "videostream.cgi". В моей веб камере такого нету. Как узнать с какого скрипта брать видеопоток? Если у камеры есть просмотр через браузер, то можно взять путь к скрипту либо из исходного кода страницы просмотра, либо попробовать правой кнопкой кликнуть по изображению и скопировать путь к нему.

halt: А где приобрели такие камеры(Kai Cong)? по бюджету кажется наилучший вариант. Ссылочку можно? Или еще что порекомендуете?

Vit: А где приобрели такие камеры(Kai Cong)? по бюджету кажется наилучший вариант. Ссылочку можно? Или еще что порекомендуете? Камера была с КНР...сейчас только в наличии HD качества... посмотреть и почитать по железу, которое используется с данным проектом и интегрировано в него можно посмотреть на сайте находятвсе.рф смотрите...

Jager: Если у камеры есть просмотр через браузер, то можно взять путь к скрипту либо из исходного кода страницы просмотра, либо попробовать правой кнопкой кликнуть по изображению и скопировать путь к нему. У моей камеры есть просмотр из браузера, но что то у меня не получается :( Вот код страницы, ткните пальцем что оттуда нужно взять http://dl.dropbox.com/u/33615421/cam.rar Спасибо.

chaosmage: Добавляю камеру вместо дефолтной, получаю ошибку: http://s58.radikal.ru/i161/1211/5c/bc7c6795eabe.png Что там должно быть в SCRIPT_ID ?

draf: У меня тоже такая проблема на Д-линк почитайте http://flance.onego.ru/2008/05/22/13

lincikg: Купил Wanscam AJ-C2WA-C198 IP камеру, через боузер работает. Как её подключить к системе, пока не получается. Спосибо

sergejey: Купил Wanscam AJ-C2WA-C198 IP камеру, через боузер работает. Как её подключить к системе, пока не получается. Спосибо Пришлите исходный код страницы браузера в котором показывется изображение с камеры.

Jager: Добавил в описание свой вариант подключения камер.

bazooker: маленький вопрос, подлкючил камеру, но она недоступна извне, т.к. при работе удаленно, сайт все равно пробует идти на локальный адрес камеры. Каким образом сделать закачку картинки сначала на МЖД а потом трансляцию на внешний мир?

ErmolenkoM: Каким образом сделать закачку картинки сначала на МЖД а потом трансляцию на внешний мир? У меня камера умеет по АЛАРМУ заливать картинку на ftp. Поэтому я поднял на МЖД ftp-сервер, а в меню сделал показ картинки из папки ftp.

bazooker: Каким образом сделать закачку картинки сначала на МЖД а потом трансляцию на внешний мир? У меня камера умеет по АЛАРМУ заливать картинку на ftp. Поэтому я поднял на МЖД ftp-сервер, а в меню сделал показ картинки из папки ftp. как вариант, но тогда у нас будет только картинка полседнего аларма а не текущее состояние :) Другие варианты есть?)

I_I_Imonder: камера axis, как можно настроить чтоб при просмотре через мажордомо не запрашивал логин пароль?

ILGAS: приблизительно так <img src="http://213.179.245.12/axis-cgi/mjpg/video.cgi?resolution=352x288&dаummy=1340376440935" width="270"> </p> dаummy - имя 1340376440935 - пароль если скажешь какая модель, более точно скажу

I_I_Imonder: AXIS M1011 Network Camera и почему то с внешнего IP работает а с внутреннего нет) <div align="center"> <br><img src="http://10.1.0.90:9000/mjpg/video.mjpg?user=r&pwd=&123456=8&rate=6" width="240"> </div>

ILGAS: попробуй это ip и порт: 10.1.0.90:9000 имя pwd пароль 123456 http://pwd:123456@10.1.0.90:9000/mjpg/video.mjpg http://pwd:123456@10.1.0.90:9000/axis-cgi/mjpg/video.cgi http://pwd:123456@10.1.0.90:9000/axis-cgi/mjpg/video.cgi?camera=1&resolution=320x240 для vlc rtsp://pwd:123456@10.1.0.90:554/axis-media/media.amp если не подойдет порыскаю еще)

I_I_Imonder: спасибо) вот это заработало http://pwd:123456@10.1.0.90:9000/axis-c ... on=320x240

layet: Каким образом сделать закачку картинки сначала на МЖД а потом трансляцию на внешний мир? У меня камера умеет по АЛАРМУ заливать картинку на ftp. Поэтому я поднял на МЖД ftp-сервер, а в меню сделал показ картинки из папки ftp. как вариант, но тогда у нас будет только картинка полседнего аларма а не текущее состояние :) Другие варианты есть?) У меня сделано банальным способом. В папке МЖД/htdocs лежит camera.php вот такого вида: <?php $img = file_get_contents("http://192.168.0.14/cgi-bin/nph-zms?mode=single&monitor={$_GET['num']}&scale=100"); header('Content-type: image/jpeg'); echo($img); ?> Параметр num - это номер монитора Zoneminder. Он с него и берет текущее изображение. Но можно через switch ($num) case... брать картинку с разных IP-камер, если Zoneminder не установлен. А обновлять непосредственно из HTML по AJAX.

PAV: Я тоже не разберусь. Изнутри все работает. А вот если захожу с работы, например, локальные адреса камер не работают. Если указываю внешние - все Ок. т.е. снаружи <img src="http://pav.dlinkddns.com:71/videostream.cgi?user=log&pwd=pas&resolution=8&rate=15" width="270"> работает, а <img src="http://10.0.0.71/videostream.cgi?user=log&pwd=pas&resolution=8&rate=15" width="270"> не работает.

Vit: out door ip camera 1920*1080p 2.8-12MM http://c2n.me/iv9987.jpg и вот такое чудо)) full HD 1920*1080p 100 метров инфракрасная подстветка 27 zoom http://c2n.me/iv9dah.jpg

Dragon: Народ подскажите пожалуйста. как прописать камеру к MajorDoMo что то у меня не получается. что нужно взять из страницы камеры

Bagir: Друзья, поделитесь своими решениями по части видеонаблюдения. У меня сейчас видео пишется с 4х камер, но делает это сторонняя программа. В МД я вывожу разве что картинку в iframe. Камеры аналоговые. Собираюсь перейти на IP. Как все организовать? Будет ли это так же полностью сторонняя программа, а МД сможет туда только лазать за картинкой и видеоархивом. Или же МД сам будет полностью управлять процессом записи архива. ОС WinXP, и других планов пока что нет. Кто нибудь уже выбрал для себя схему?

Ivan: Лучше купить отдельную железку. Чтобы могла и аналоговые и ИП камеры. И писала себе на винт. Но чтобы был был веб интерфейс

Bagir: Ну это просто грустно как то при работающем то сервере. К тому же я уже немного разочаровался в аналоговых камерах, и планирую постепенно заменить их все на ip. Одна уже сдохла, и замена скоро должна придти. Так что начало положено.

triada13: А поставил такую: http://mysku.ru/blog/aliexpress/26552.html, работает с отдельной программой, а вот с МЖД подружить не получается, максимум скриншот при открытии странички.

Bagir: Спасибо, уже результат. Правда этого я и опасаюсь. Что не получится подружить.

triada13: Спасибо, уже результат. Правда этого я и опасаюсь. Что не получится подружить. Пробовал это: http://cyber-place.ru/showthread.php?t=1022 цепляется довольно легко, даже для меня почти полного ноля в программировании. Единственный минус: не каждая веб камера поддерживается.

triada13: Bagir, могу открыть калитку ко мне, попробуете мою IP-камеру, глядишь может у вас получится привязать ее. Заодно для себя решите что лучше.

Bagir: Bagir, могу открыть калитку ко мне, попробуете мою IP-камеру, глядишь может у вас получится привязать ее. Заодно для себя решите что лучше. Спасибо! Я еще пару дней почитаю про эту тему и начну пробовать. Если честно, то пока еще не определился с основой. Конечно хотелось бы получить полный контроль над процессом записи архива из МД. IP у меня белый статичный. Так что с калиткой проблем не будет. Лишь бы скорости хватило. ADSL... :( В любом случае обязательно скоро напишу.

triada13: Ну если полный контроль, то думаю лучше смотреть в сторону http://cyber-place.ru/showthread.php?t=1022 во первых используется распространенный роутер, к тому же компактный во вторых большой выбор поддерживаемых веб камер в третьих роутер с этой прошивкой становится поистине универсальным инструментом

Bagir: Да, штука похоже интересная, как раз читаю.

Vovix: А поставил такую: http://mysku.ru/blog/aliexpress/26552.html, работает с отдельной программой, а вот с МЖД подружить не получается, максимум скриншот при открытии странички. посмотрел описание твоей штуки, она выдает поток по RTSP, следовательно можно сделать как у меня (у меня тока это выдает регистратор по каждой камере):
<object classid="CLSID:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" id="mo" width="420" height="315" codebase="http://www.apple.com/qtactivex/qtplugin.cab">
<
param name="src" value="back.GIF">
<
param name="allowFullScreen" value="true">
<
param name="qtsrc" value="rtsp://192.168.1.130:554/user=admin&password=password&channel=1&stream=0.sdp?real_stream--rtp-caching=100">
<
param name="autoplay" value="true">
<
param name="autohref" value="True">
<
param name="target" value="myself ">
<
param name="loop" value="false">
<
param name="wMode" value="transparent">
<
param name="controller" value="false">
<
param name="scale" value="tofit">
<
embed src="back.GIF" name="movie1" qtsrc="rtsp://192.168.1.130:554/user=admin&password=password&channel=1&stream=0.sdp?real_stream--rtp-caching=100" controller="false" width="420" height="315" loop="false" scale="tofit" wmode="Transparent" autoplay="true" kioskmode="true" enablejavasript="true" target="Myself" allowfullscreen="true" bgcolor="black" plugin="quicktimeplugin" type="video/quicktime" pluginspage="http://www.apple.com/quicktime/download/">
</
object>
 
Пользователя user=admin, и password=password исправить на свои! width="420" height="315" - это тоже укажи своё ну и ip конечно 192.168.1.130: возможно нужно будет это channel=1&stream=0.sdp заменить на это channel=0&stream=0.sdp у меня сделано немного сложнее, с использованием объектов и javascript, если интересно вот как у меня:
<p align="center">
%
DVR.description% - камера №1 (%DVR.Mwidth% х %DVR.Mheight%)<br/>
<
object classid="CLSID:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" id="mo" width="%DVR.Mwidth%" height="%DVR.Mheight%" codebase="http://www.apple.com/qtactivex/qtplugin.cab">
<
param name="src" value="back.GIF">
<
param name="allowFullScreen" value="true">
<
script type="text/javascript">
document.write ('<param name="qtsrc" value="rtsp://' + ipvid + ':%DVR.stream%/user=%DVR.login%&password=%DVR.password%&channel=1&stream=0.sdp?real_stream--rtp-caching=100">');
</script>
<param name="autoplay" value="true">
<param name="autohref" value="True">
<param name="target" value="myself ">
<param name="loop" value="false">
<param name="wMode" value="transparent">
<param name="controller" value="false">
<param name="scale" value="tofit">
<script type="text/javascript">
document.write ('<embed src="back.GIF" name="movie1" qtsrc="rtsp://' + ipvid + ':%DVR.stream%/user=%DVR.login%&password=%DVR.password%&channel=1&stream=0.sdp?real_stream--rtp-caching=100" controller="false" width="%DVR.Mwidth%" height="%DVR.Mheight%" loop="false" scale="tofit" wmode="Transparent" autoplay="true" kioskmode="true" enablejavasript="true" target="Myself" allowfullscreen="true" bgcolor="black" plugin="quicktimeplugin" type="video/quicktime" pluginspage="http://www.apple.com/quicktime/download/">');
</script>
</object>
</p>

triada13: Vovix большое спасибо за подсказку, но боюсь что на данном этапе не осилю, уровень знаний катострофически недостаточен. По большому счету эту камеру можно вполне использовать и со своей программой на отдельном компе, тем более это программа позволяет использовать эту камеру как датчик движения с зональным разделением.

Vovix: Vovix большое спасибо за подсказку, но боюсь что на данном этапе не осилю, уровень знаний катострофически недостаточен. По большому счету эту камеру можно вполне использовать и со своей программой на отдельном компе, тем более это программа позволяет использовать эту камеру как датчик движения с зональным разделением. triada13 знания не нужны, скопируйте и вставьте! ну и исправить ip, user и password и посмотрел - должно быть channel=0 тоже исправить! исходя из описания Вашей камеры должно работать 100%!

triada13: знания не нужны, скопируйте и вставьте! Тогда глупейший вопрос: Куда вставить? В элемент вэбкам? или это в какой то файл вставляется?

Bagir: Для начала просто создай элемент в меню слева. Его и на сценах можно вызвать во всплывающем окне. http://i.imgur.com/Y3JllSH.png Код замени!

triada13: Vovix не завелась, плагин требует: http://c2n.me/39clfPk.jpg

Bagir: Возможно он действительно старый. Попробуй обновить.

triada13: Тогда получается что на каждый комп где я захочу глянуть что творится у меня дома должен стоять этот плагин?

Bagir: Я думаю это так же как флэш плеер. Он может быть, но быть старый. Тогда Хром его заблокирует.

triada13: Да но изначально этот плагин не стоит, в отличии от Флеш плеера

Bagir: Ну да, он как бы совсем не такой популярный.

triada13: Что то шняга какая то с этим плагином, установил, все равно пишет что устаревший.

Bagir: А если нажать "запустить один раз"?

triada13: Выводится черное поле без картинки, но я щас попробовал напрямую зайти на камеру в ответ серый экран. Щас переустановлю плагин и еще попробую

Vit: у меня в наличии IP камеры foscam FI9831W FI9805W Помогите с кодом чтобы в мж использовать Заранее благодарен

triada13: Vit а это не подходит:http://smartliving.ru/Main/ScNetCam

Vit: Vit а это не подходит:http://smartliving.ru/Main/ScNetCam код для потока не могу для этих камер сделать...чет не как не получается

triada13: Bagir переустановил QuickTime и вот что МЖД показывает: http://c2n.me/39cu0Vw.jpg Причем внизу скриншот с этой же камеры, по идее картинки должны быть одинаковы.

Vovix: Что то шняга какая то с этим плагином, установил, все равно пишет что устаревший. вот уже месяц наверно как у chrome проблема с этим плагином Apple я на планшете запускаю chrome с ключом игнорирования предупреждения об устаревших плагинов

triada13: А я думал у меня какой то косяк сразу на двух компах, вот блин засада.

Vovix: Bagir переустановил QuickTime и вот что МЖД показывает: http://c2n.me/39cu0Vw.jpg Причем внизу скриншот с этой же камеры, по идее картинки должны быть одинаковы. перепроверь ip user и пароль! и еще надо проверить родной программой (в разделе NetService) включен ли поток RTSP вообще и если не включен, то включить в настройках! ну и с параметром channel=0 поиграйся, может всё-же =1

triada13: Vovix уряяяяя заработало. Купишь фольцваген считай диагност у тебя уже есть.

Bagir: Мои поздравления ))

triada13: Bagir спасибо. Блин тяжело дается гранит науки под сраку лет, в свое время букварь прокурил.

Vit: парни с foscam помогите по коду

triada13: Vit я бы с удовольствием, но не силен к сожалению.

Vit: Vit я бы с удовольствием, но не силен к сожалению. благодарю что ответил)

Bagir: Увы я тоже только начал изучать эту тему. И пока что у самого каша в голове. Пока что только дело ясное, что дело темное ))

Vovix: Vovix уряяяяя заработало. Купишь фольцваген считай диагност у тебя уже есть. Очень рад, что был полезен! Мне тоже очень помогают здесь на форуме: Если бы не Ivan, то я бы вообще не смог например Raspberry Pi настроить!!! А о самом главном - СЕРГЕЕ вообще можно (и нужно) дифирамбы петь!!!

triada13: Vovix совершенно согласен.

PAV:
<p align="center"><img src="http://foscampav.dynddns.com:70/videostream.cgi?user=user&pwd=pass&resolution=32&rate=15">
 
На домашнем роутере соотв пробрасываются порты (70) на камеру. Это если белый адрес у прова. Для локального пользования соотв -
<p align="center"><img src="http://192.168.1.30:70/videostream.cgi?user=user&pwd=pass&resolution=32&rate=15">
 
парни с foscam помогите по коду

Bagir: Интересно, FOSCAM от Kai Cong чем то отличаются? Когда придет камера, для начала собираюсь попробовать подключить по этой инструкции http://smartliving.ru/Main/ScNetCam

Vit: Kai cong я подключал. Там просто оказалось а вот новые foscam там поток другой rstp код не подходит и что то не могу сделать никак.)

Ivan: rstp у самого только через Zoneminder смотрятся. Пока не придумал как в окно сунуть. Разве что вот так http://10.9.0.2/zm/index.php?view=montage&group=0 Но пока проблема с логином. Если зашел, видно. Если нет ошибка

Vit: Zoneminder под линух у меня винда.

PAV: rstp в код запихнуть тоже не получилось пока. Есть желание и на телеки вывести, но не получается.

Ivan: Почему не получится. Можно rstp поток пережать в другой поток, на лету Но т.к. я не супер линуксойд. Пока не получается

Bagir: Мне в лапки тоже попала камера с rstp потоком. Прога видео регистратор видит ее нормально. Но вывести видео на страницу получилось только через глючный плагин QT. Это конечно же не о чем. Даже не знаю чего с этой камерой делать. Картинка с нее конечно хорошая. Если по уму, так найти бы путную прогу - видео регистратор, чтобы она писала видео с камер, и еще предоставляла web сервер, откуда можно было бы получить видео для страницы. Плагин не просто глючный, но еще и вредоносный. Этот жук переписал системную переменную окружения PATH. Вероломно стёр все что там было, а именно \system32;;\System32\Wbem В результате чего при выполнении например команды ping был ответ что ping не является внутренней или внешней командой, исполняемой программой или пакетным файлом. Команда ping используется в цикле модуля Устройства Online. В итоге все контролируемые адреса стали недоступны. http://i.imgur.com/hS3iXXz.png После изменения переменной PATH и перезапуска циклов нормальная работа системы восстановилась. Плагин QT за это был признан вредоносным и навсегда изгнан с сервера.

triada13: Мне в лапки тоже попала камера с rstp потоком. Прога видео регистратор видит ее нормально. Но вывести видео на страницу получилось только через глючный плагин QT. Это конечно же не о чем. Даже не знаю чего с этой камерой делать. Картинка с нее конечно хорошая. Если по уму, так найти бы путную прогу - видео регистратор, чтобы она писала видео с камер, и еще предоставляла web сервер, откуда можно было бы получить видео для страницы. А чем тебе не нравится штатная прога? По моему пережать можно и с помощью VLC, или я ошибаюсь?

Bagir: Со штатной прогой я еще до конца не разобрался. Если с нее, как с web сервера можно получить видео на страничку сайта, то я был бы очень доволен. Камера на ней нормально определилась. VLC скорее всего может пережать. Но тут тоже еще надо разбираться что и как.

Bagir: Поток я забираю с камеры rtsp://<ip_cam>:554/live1.264?user=admin&passwd=" Но без плагина его на страницу не засунешь. Конечно надо бы искать камеры с вариантом <img src="http://<ip_cam>/videostream.cgi?user=user&pwd=pass"> к примеру Kai Cong

Bagir: rstp у самого только через Zoneminder смотрятся. Пока не придумал как в окно сунуть. Разве что вот так http://10.9.0.2/zm/index.php?view=montage&group=0 Но пока проблема с логином. Если зашел, видно. Если нет ошибка Сейчас такой же вопрос грызу. Заинтересовался AXXON NEXT. Судя по прочитанному, их ограничения бесплатной версии просто не могут коснуться домашнего использования. 16 камер, 1 ТБ архив, 1 сервер. Это же просто и так неприлично много. Будем смотреть.

triada13: я на планшете запускаю chrome с ключом игнорирования предупреждения об устаревших плагинов Уважаемый Vovix, подскажите плиз как вы это делаете, или хотя бы где про это почитать можно?

Vit: rstp у самого только через Zoneminder смотрятся. Пока не придумал как в окно сунуть. Разве что вот так http://10.9.0.2/zm/index.php?view=montage&group=0 Но пока проблема с логином. Если зашел, видно. Если нет ошибка Сейчас такой же вопрос грызу. Заинтересовался AXXON NEXT. Судя по прочитанному, их ограничения бесплатной версии просто не могут коснуться домашнего использования. 16 камер, 1 ТБ архив, 1 сервер. Это же просто и так неприлично много. Будем смотреть. bagir глянь вот это http://www.devline.ru/ я смог воткнуть поток rstp в страницу сцен $sc='<html> <head> <script src="http://127.0.0.1:9786/js/swfobject.js" type="text/javascript"></script> <script type="text/javascript"> var flashvars = { ip:"127.0.0.1", //ip - host port:9786, //port login:"admin", //login pass:"", //password uriCamera:"/cameras/0", //uri camera quality:80, //0-100 quality fps:8, //fps sound:false, //microphone ptz:false, //PTZ playOnStart:true, //play video on start logo:true, //logo devline lang:"ru", //language "ru" "en" "cn" name:"Line" // by default, use name cameras from the server //UpLeftImage:"link" //top left position, link for image for your logo //UpRightImage"link" //DownRightImage:"link" //DownLeftImage:"link" //UpLeftLink:"link" //top left position, link on your website //UpRightLink:"link" //DownRightLink:"link" //DownLeftLink:"link" }; var params = { menu: "false", scale: "noScale", allowFullscreen: "true", allowScriptAccess: "always", bgcolor: "#ffffff" }; var attributes = { id:"flash" }; swfobject.embedSWF("http://127.0.0.1:9786/miniflash.swf", "altContent", "100%", // set as a percentage or absolute size (in pixels) "100%", "11.2.0", "expressInstall.swf", flashvars, params, attributes); </script> <style type="text/css"> html, body { height:100%; overflow:hidden; } body { margin:0; } </style> </head> <body> <div id="altContent"> <p><a href="http://www.adobe.com/go/getflashplayer"><img src="" alt="Get Adobe Flash player" /></a></p> </div> </body> </html>'; sg('ThisComputer.StreamingCode',$sc);

Bagir: rstp у самого только через Zoneminder смотрятся. Пока не придумал как в окно сунуть. Разве что вот так http://10.9.0.2/zm/index.php?view=montage&group=0 Но пока проблема с логином. Если зашел, видно. Если нет ошибка Сейчас такой же вопрос грызу. Заинтересовался AXXON NEXT. Судя по прочитанному, их ограничения бесплатной версии просто не могут коснуться домашнего использования. 16 камер, 1 ТБ архив, 1 сервер. Это же просто и так неприлично много. Будем смотреть. Друзья, AXXON NEXT просто бомба! Отличные возможности. За час знакомства прицепил прогу к камерам, поднял веб сервер и по средствам API забрал живое видео на свой сайт. И это при том, что ранее я полдня потерял над решением, как мне видео из rtsp потока на сайт прикрутить. Даже растроился что такую камеру отхватил. Прога работает как видео регистратор и держит свой web сайт с открытым API. Работает со множеством камер. Даже с аналоговыми. Дня них есть PCI платы видеоввода или отледьные конверторы. Но думаю, что это уже не пригодится. Качество у IP несравнимо выше. triada13 забей на этот плагин. он глючный... Vit Я обязательно еще раз посмотрю devline.ru Пока что пробовал AXXON. Для вставки кода примерно так <p align="center">
<
img src="http://10.10.3.2:8000/asip-api/live/media/SERVER/DeviceIpint.4/SourceEndpoint.video:0:0?format=mjpeg&amp;w=960&amp;h=0" style="display: inline; top: 60px; left: 0px; width: 640px; height: 360px; position: relative;">
</
p Сутки работы без проблем. Продолжаю тестить.

triada13: Bagir я так понял она под винду?

Vit: rstp у самого только через Zoneminder смотрятся. Пока не придумал как в окно сунуть. Разве что вот так http://10.9.0.2/zm/index.php?view=montage&group=0 Но пока проблема с логином. Если зашел, видно. Если нет ошибка Сейчас такой же вопрос грызу. Заинтересовался AXXON NEXT. Судя по прочитанному, их ограничения бесплатной версии просто не могут коснуться домашнего использования. 16 камер, 1 ТБ архив, 1 сервер. Это же просто и так неприлично много. Будем смотреть. Друзья, AXXON NEXT просто бомба! Отличные возможности. За час знакомства прицепил прогу к камерам, поднял веб сервер и по средствам API забрал живое видео на свой сайт. И это при том, что ранее я полдня потерял над решением, как мне видео из rtsp потока на сайт прикрутить. Даже растроился что такую камеру отхватил. Прога работает как видео регистратор и держит свой web сайт с открытым API. Работает со множеством камер. Даже с аналоговыми. Дня них есть PCI платы видеоввода или отледьные конверторы. Но думаю, что это уже не пригодится. Качество у IP несравнимо выше. поставил, foscam нет в списке... как ты rstp поток подключил?

Bagir: Bagir я так понял она под винду?Да. Пока работает на отлично. Видео на терминале всю ночь крутилось.

Bagir: как ты rstp поток подключил? Я посмотрел ссылку в web страничке камеры и прописал ее в разные проги, чобы получить поток. В моем случае это было так rtsp://10.10.3.80:554/live1.264?user=admin&passwd=" Но AXXON NEXT сама нашла камеру и сама подключилась.

Vit: как ты rstp поток подключил? Я посмотрел ссылку в web страничке камеры и прописал ее в разные проги, чобы получить поток. В моем случае это было так rtsp://10.10.3.80:554/live1.264?user=admin&passwd=" Но AXXON NEXT сама нашла камеру и сама подключилась. с детекторами разобрался?

Bagir: Еще пока не смотрел. На одной камере я использую детектор движения. Она пока еще подключена с старой проге.

Vit: чет я не наковырял этот детектор...не в какую нихочет....поток запихал вроде в прогу

Vovix: я на планшете запускаю chrome с ключом игнорирования предупреждения об устаревших плагинов Уважаемый Vovix, подскажите плиз как вы это делаете, или хотя бы где про это почитать можно? если Гугл Хром - то так запускать надо: (можно ярлык создать на рабочем столе)
"C:\Program Files\Google\Chrome\Application\chrome.exe" --allow-outdated-plugins --kiosk
тут два ключа: игнорирование устаревания плагинов и режим "киоск" можно сделать это в Автозапуск и у Вас будет всегда на планшете сцена загружаться при перезагрузке и без лишних элементов оформления браузера (только размер сцены подберите правильно) - красиво!

Vit: Bagir разобрался я с Axxon Next.... вещь обалденная... бесплатной версии более чем достаточно для домашнего применения... связал с мжд...все работает....помимо крутых наворотов в самой проге....и 3D карта куча датчиков движения и различных ситуаций, теперь и мжд говорит голосом что движение в камере и по твоему примеру можно запускать окно на сценах и убирать его через N- ный промежуток времени... все расписывать не буду....кто заинтересуется почитает про этот программный комплекс...очень хороший)) немного что внутри: http://c2n.me/39TpkAo.png http://c2n.me/39TpEMJ.png типы поддерживаемых камер...кусок http://c2n.me/39TpVBL.png 3D интерфейс http://c2n.me/39TqekJ.jpg это после дня знакомства только...наверное еще что то из плюшек присутствует, хотя этого больше чем достаточно...

Bagir: Да, я тоже немного продвинулся в этой теме. Очень доволен программой. Похоже она на самом деле всеядная. Пока что я смог подключить к ней все что только нашел. Будем надеяться, что проект будет жить. Видео очень хорошо с Axxon в МД забирать. Удобно. Скоро надо бы и до архива добраться. У них на сайте есть примеры API как это делать.

Vit: архив то зачем в мд....? пусть и лежит там где прога крутится...или у тебя другие задумки если что делись наработками....))

Bagir: Конечно! Правда у меня пока простые задачи. Лишь бы прога и дальше себя хорошо показала в смысле надежности. И можно полностью на нее переезжать.

Bagir: архив то зачем в мд....? Интересуют последние события. Например было движение у подъезда, а никто не видел терминал. Хочется возможность показать последнее видео.

Vit: архив то зачем в мд....? Интересуют последние события. Например было движение у подъезда, а никто не видел терминал. Хочется возможность показать последнее видео. в самой проге есть тревожные события http://c2n.me/39TspOD.jpg вот тут настройка их http://c2n.me/39Tswsg.png

triada13: Bagir, Vit скачал я дистрибутив, но файл без расширения, какое поставить?

Vit: Bagir, Vit скачал я дистрибутив, но файл без расширения, какое поставить? это архив... откройте winrar ом его и распакуйте сначала...

Bagir: в самой проге есть тревожные события Это конечно да, но мне бы хотелось смотреть и на терминалах. Ну это пока что мысли на будущее. Архив действительно без расширения. Я обычно пользуюсь Totalcmd. Он залезет в архив и без расширения.

Bagir: Вчера и мне пришла камера Kai Cong SIP1201plus. Предложенный вариант <div align="center">
<
br><img src="http://192.168.1.152/videostream.cgi?user=user&pwd=&resolution=8&rate=6" width="240">
</
div не подходит. Возможно у камеры и есть какой то cgi из которого можно вытянуть видеопоток, но я пока что не нашел. На ее страничке есть два варианта просмотре. Первый для мобилок. Суть в следуюoем: Есть ссыль по которой можно вытянуть jpg. А дальше в "бешеном цикле" скриптом эта картинка гонится по куда у железа мощи хватает. Вариант может быть весьма полезен для получения фоток. Второй вариант дает хорошую картинку без загрузки ЦП. Но для работы скачивает и устанавливает плагин. Так что тут тоже не прокатит. Сейчас у меня установлено ПО Axxon Next. Оно подцепило камеру и видео для сайта я буду а web сервера этого ПО. Но вот беда, из Axxon Next не работает управление поворотным устройством. Удалось найти cgi который это делает. Но при первом обращении нарываюсь на авторизацию. Вот такое первое знакомство. Когда соберу по больше инфы, сделаю обзор на это железо.

triada13: Я тоже не разберусь. Изнутри все работает. А вот если захожу с работы, например, локальные адреса камер не работают. Если указываю внешние - все Ок. т.е. снаружи <img src="http://pav.dlinkddns.com:71/videostream.cgi?user=log&pwd=pas&resolution=8&rate=15" width="270"> работает, а <img src="http://10.0.0.71/videostream.cgi?user=log&pwd=pas&resolution=8&rate=15" width="270"> не работает. А если проверку делать, откуда ломится пользователь? изнутри или с наружи, и соответственно подставлять тот или иной адрес?

vova5049: А зачем проверку ? Нужно прописать внешний адрес, а потом залезть в админку роутера, найти, что-то похожее на dns cache или hostnames, там, где прописываются имя компа и его ip. И, тогда, если устройство в локальной сети и в dns прописан айпишник роутера, то при разрешении имён, роутер зарезолвит не внешний айпи, а внутренний, который Вы приписали.

Ivan_A: А кто-нибудь подключал камеру Optimus IP-P022.1? Веб трансляция после установки плагина и авторизации работает, а вот напрямую обратиться к видеопотоку не могу..

ignat99: Самые недорогие камеры 19$ c исходным кодом. Можно подключать напрямую светофильтры, светодиоды и сенсор освещения/движения. http://forum.katera.ru/index.php?/topic ... ?p=1750101 Так же есть исходники SDK (luvcview и h264-стример) для модуля elp-usb100w04h-f170: http://homedevice.pro/product/elp-usb100w04h-f170/

denis: Поделюсь своим опытом, вывода картинки с IP-камеры, для просмотра удаленно. Для локального просмотра все гораздо проще. Исходные данные: 0. Удаленная дача )) 1. IP-Камера Hikvision 2CD-2032i 2. 3G канал интернет Мегафон (скорость обратного канала оооочень низкая не более 0.2 мбит/c 3. Связь между устройствами мегафон-мегафон невозможна! только для корпоративных клиентов ( 4. Испробованы: Ivideon, Axxon, Vlc - они работают, но у каждого есть свои приколы. Кроме того, самое так сказать главное - на всех страницах идет ссылка на IP сервера (комп на даче), т.е. если я хочу увидеть что-то на телефоне подключенном к Мегафону, то упс!( - ничего не получится.. 5. Мобильные браузеры не все отображают flash. Натолкнул на мысль Netcam Studio - можно же передавать картинку JPEG - это могут показывать все браузеры. Т.е. процесс такой 1. Получаем снимок с камеры. 2. Уменьшаем полученный снимок до приемлемых размеров, чтобы не сильно грузить канал. 3. Сохраняем картинку на сервере MDM. 4. возврат в п.1 Параллельно создаем домашнюю страницу, на которой с заданной периодичностью обновляем картинку из указанного каталога. как реализовано 1. Создали свой цикл: <?php

chdir
(dirname(__FILE__).'/../');

include_once(
"./config.php");
include_once(
"./lib/loader.php");
include_once(
"./lib/threads.php");

set_time_limit(0);

// connecting to database
$db = new mysql(DB_HOST, '', DB_USER, DB_PASSWORD, DB_NAME); 

include_once("./load_settings.php");
include_once(
DIR_MODULES."control_modules/control_modules.class.php");

$ctl=new control_modules();

include_once(
DIR_MODULES.'pinghosts/pinghosts.class.php');

$pinghosts = new pinghosts();

$checked_time=0;

echo date("H:i:s") . " running " . basename(__FILE__) . "\n";

while(
1) 
{

# путь и имя файла оригинальной картинки
$source_src ="http://путь_к_скриншоту_камеры"; //'path_2_source_image/source_image_file.gif';
# считываем параметры (высота/ширина, тип и т.п.)
# оригинальной картинки
$params = getimagesize($source_src);
# в зависимости от типа оригинальной картинки
# применяем соответствующую функцию для считывания
# и создания изображения с которым будем работать
switch ( $params[2] ) 
    
{
    case 1: $source = imagecreatefromgif($source_src); break;
    case 2: $source = imagecreatefromjpeg($source_src); break;
    case 3: $source = imagecreatefrompng($source_src); break;
    }
# максимально допустимый размер
# (по ширине/высоте) уменьшенной картинки
$max_size = 320;
# если ширина или высота оригинальной картинки
# больше ограничения производим вычисления
if ( $params[0]>$max_size || $params[1]>$max_size ) 
    
{
    # выбираем большее: ширины или высота
    # оригинальной картинки
    if ( $params[0]>$params[1] ) $size = $params[0]; # ширина
        else $size = $params[1]; # высота
    # используя нехитрую пропорцию вычислям
    # ширину и высоту уменьшенной картинки
    $resource_width = floor($params[0] * $max_size / $size);
    $resource_height = floor($params[1] * $max_size / $size);
 
    $resource 
= imagecreatetruecolor($resource_width, $resource_height); // создание «подкладки»
 
    
# изменение размера и копирование полученного на «подкладку»
    imagecopyresampled($resource, $source, 0, 0, 0, 0,$resource_width, $resource_height, $params[0], $params[1]);
    }
    # если изменять размер не надо просто присваиваем переменной
    # $resource идентификатор оригинальной картинки
        else $resource = $source;
 
# путь и имя файла уменьшенной картинки
$resource_src = 'cms/test2.jpg';
# выводит уменьшенную картинку
imagejpeg($resource, $resource_src);


//********************************************************************

   if (file_exists('./reboot') || $_GET['onetime']) 
   
{
      $db->Disconnect();
      exit;
   }
   sleep(1);
}

DebMes("Unexpected close of cycle: " . basename(__FILE__));

?> 2. Создали домашнюю страницу со следующим кодом (обновление 1 раз в секунду):
<script>
var i = 1, int, cont, img;

cont = document.body;
int = setInterval(function () {
img = document.createElement('img');
img.src = '/cms/test2.jpg?' + Math.random() + '';
img.style.zIndex = i++;
img.style.position = 'absolute';

cont.appendChild(img);
if (document.getElementsByTagName('img').length >= 3) {

        cont.removeChild(document.getElementsByTagName('img')[0]);

    }

},
 1000);

 
</script>
<div id="img">
</div> 

Картинка может "подергиваться", но это лучше, чем ничего!) p.s. Насчет "обхода" проблемы с Мегафоном - это отдельная история.

sergejey: Возможно, имеет смысл картинку стягивать с камеры по запросу ибо немного накладно её в цикле обновлять, когда на неё никто не смотрит. P.S. подскажу ещё один вариант выводить картинку с любой камеры из домашней сети. В меню, например, можно создать html-блок и туда прописать такой код: вместо http://wiki.rtmpd.com/tutorial_live_stream_file http://taqlim.blogspot.de/2014/11/video ... 20som.html Вот это самое современное и верное решение проблемы с видеостримингом. crtmpserver - написан на C++, работает под A20, RPi и других платах с аппаратной обработкой видео потока. Настраивается скриптами на LUA. Основной скрипт запускает отдельные процессы по приёме и выдаче потоков. Настройки отдельных процессов в /etc/crtmpserver/application/* Особо не чего настраивать не надо, только указать порты или взять готовые скрипты. Могу опубликовать скрипты от Olimex A20 или их можно найти в репозитарии Olimex. Как будет работать с урезанным Мегафон 3G не знаю. С нормальным VIP 3G ( который без лимита) будет работать очень хорошо.

denis: Касаемо моей ситуации, дело в том, что у мегафона аплинк (обратный канал) медленный, как и у всех сетей 3g. А так он не урезанный, безлимитный, со статическим ip-адресом, что редкость для мобильного оператора. За наводку спасибо, посмотрю.

Victor: Хочу поделиться своим опытом подключения китайской IP камеры, купленной на Али экспресс (http://ru.aliexpress.com/item/1set-Wireless-WiFi-IP-network-connection-Webcam-CMOS-Camera-monitor-Night-Vision-11-LED-Brand-New/1351503511.html) Некоторое время мучался, ковыряя, html страницы, а потом попробовал подставить строчку из камеры KAI Kong и о чудо(!) все заработало - изображение показалось и стало обновляться. Есть подозрение, что китайцы клонируя вид камеры, клонируют и софт, а следовательно есть большой шанс, что покупая похожие камеры (чуть различающиеся ценой и функционалом), вы получаете одно и то же. Возможно, этот пост поможет при выборе камер для наблюдения. Пара приколов: Моя камера с ночным видением стоит дома и направлена на улицу, но т.к. она стоит за стеклопакетом, ночью улицу она не показывает (!), т.к. слепит сама себя ИК светодиодами, которые отражаются от поверхности стеклопакета. Т.к. камера направлена на улицу и захватывает часть пейзажа (небо + деревья) все попытки настроить нормальный аларм на движение (с заливкой фото на ФТП) провалились по причине того, что ветер, который колышет деревья, облака, которые меняют освещение, создают массу ложных срабатываний. Мои ухищрения по настройке аларма провалились =(

Ivan: Тоже камера стоит за стеклом. Проблема блики солнца и засохшие капли дождя. Движение во время ветра проблема у всех. Потому камеры либо смотрят в асфальт либо только в помещении. В остальных случаях есть оператор. Ещё в продвинутых системах аларм на улицу делается не по картинке а по датчику движения. Но и инфракрасные датчики (дешевые или с закрученной чувствительностью) ловят движение деревьев и кустов. Ваша камера очень похожа но мою viewtopic.php?f=14&t=2286 Если отличается пожалуйста добавьте в раздел "Каталог оборудования" по образцу Мне не удаётся заставить мою камеру выдавать Alarm по ONIF А вот мобильные приложения ловят Alarm знать бы по какому протоколу

utia38: Доброе время суток дорогие форумчане. Тоже заболел темой УмногоДома на базе MajorDomo - спасибо за это Сергею :shock: , Конечно новичку очень сложно сразу разобраться во всей этой кухне, а если ты еще и не программист , то вообще :cry: :!: . Я таким и являюсь поэтому в своем проекте воспользовался уже готовыми разработками, представленными сдесь - на форуме, за что ВСЕМ кто выкладывает свои наработки - большое спасибо. ПОДЕЛЮСЬ НАСТРОЙКОЙ IP КАМЕРЫ (домофона) http://www.beward.ru/katalog/ip-videodo ... on-ds03mp/ - кстати российский производитель и не самого плохого качества :D . ПЕРЕЙДЕМ К НАСТРОЙКЕ - будем использовать ЛИНИЮ http://www.devline.ru/ 1) качаем с сайта дистрибутив ЛИНИИ http://www.devline.ru/soft/ 2) устанавливаем на сервер с МД 3) Заходим в НАБЛЮДАТЕЛНЫЙ ПОСТ на рабочем столе и переходим в АДМИНИСТРИРОВАНИЕ

sregeipt: Купил Wanscam AJ-C2WA-C198 IP камеру, через боузер работает. Как её подключить к системе, пока не получается.Пришлите исходный код страницы браузера в котором показывется изображение с камеры. Купил ip камеру d-link 950. Просмотр захвата с камеры работает только с ie. Не могу подружить с zoneminder. Помогите, пожалуйста. Не могу понять какой путь писать.Снимок.PNG

sregeipt: Здравствуйте кто ни будь использовал для видео захвата motion проблема в том что пишет при движении а в потоке не показывает помогите пожалуйста веб сервер не заводится что можно по крутить?))

Anton_kulibin: Купил Wanscam AJ-C2WA-C198 IP камеру, через боузер работает. Как её подключить к системе, пока не получается.Пришлите исходный код страницы браузера в котором показывется изображение с камеры. Купил ip камеру d-link 950. Просмотр захвата с камеры работает только с ie. Не могу подружить с zoneminder. Помогите, пожалуйста. Не могу понять какой путь писать.Снимок.PNG Тут гляньте может что подойдет http://www.zoneminder.com/wiki/index.php/D-Link#DCS-931L_.2F_DCS-933L

andrey_k: Здравствуйте кто ни будь использовал для видео захвата motion проблема в том что пишет при движении а в потоке не показывает помогите пожалуйста веб сервер не заводится что можно по крутить?)) motion по-умолчанию не разрешает удаленный просмотр видео - только для локального пользователя. надо 'conf' файл отредактировать.

Ko/|xo3HUk: Всем доброго времени суток. Решил и я подключить свою IP-камеру к МЖД. Выложу здесь отчёт - может кому пригодится, да и самому чтобы не забыть - как всё это настраивал :) Итак, моё железо: Сервер с МЖД: Raspberry Pi 2B Версия МЖД: не знаю где можно посмотреть текущую версию! Подскажите, пожалуйста! (обновлял систему 13.10.2015) IP-Камера: тип не знаю, куплена на алиэкспрессе: http://www.aliexpress.com/item/IP-Camera-1280-720P-1-0MP-Bullet-24pcs-IR-Cut-Megapixel-Lens-Outdoor-Security-ONVIF-Waterproof/32305157016.html Скриншот 2015-10-13 23.05.00.png Камера подключена в локальную сеть, а пишет это дело также китайский видеорегистратор с алиэкспресса: http://www.aliexpress.com/item/CCTV-Mini-DVR-4-Channel-960H-Digital-Video-Recorder-8CH-Hybrid-DVR-HVR-NVR-System-Onvif/1761858062.html Скриншот 2015-10-13 23.08.08.png И камера и регистратор при подключении к ним по айпишнику используют оболочку NetSurveillance WEB: Скриншот 2015-10-13 23.12.20.png Неудачные попытки выложу под спойлером, чтобы не утомлять многими буковами :) Вариант 1 Со страницы http://majordomo.smartliving.ru/Main.ScNetCam: Использование кода <div align="center">
<
br><img src="http://192.168.1.152/videostream.cgi?user=user&pwd=&resolution=8&rate=6" width="240">
</
div>  Не помогло! Вариант 2 С той же страницы. Использование сервиса http://www.devline.ru. После всех регистраций и настроек - должно появиться окно выбора камеры, но не появляется. В чём причина - не смог понять, возможно - не настраивается/не умею настраивать проброс портов 554 на роутере ASUS. Тип протокола ставил TCP, затем UDP, затем BOTH - не помогло. Тип OTHER - нельзя поставить порт выше 255. В итоге: Скриншот 2015-10-13 23.26.39.png Не помогло! Вариант 3 Использование сервиса http://lideo.ru То же, что и в прошлом пункте. Не помогло! Вариант 4 Использование ffmpeg http://majordomo.smartliving.ru/forum/viewtopic.php?f=7&t=2306&hilit=ffmpeg с кодом: <module name="thumb" url="rtsp://user:pass@xxx.xxx.xxx.xxx:554/user=user&password=pass&channel=3&stream=0.sdp?real_stream">  с установкой ffmpeg на raspberry: sudo apt-get install ffmpeg и созданием файлов /etc/ffmpeg.conf и /user/sbin/webcam.sh - Не помогло! Нужно добавить что открытие ссылки rtsp://xxx.xxx.xxx.xxx:554/user=user&password=pass&channel=3&stream=0.sdp?real_stream              в плеере VLC отлично работает, камера всё показывает. Поэтому и решил копать в эту сторону. Создал новую страницу в МЖД: Скриншот 2015-10-13 22.45.37.png выбрал HTML, прописал код <embed type="application/x-vlc-plugin" src="rtsp://xxx.xxx.xxx.xxx:554/user=user&password=pass&channel=3&stream=0.sdp?real_stream" width="1280" height="720" enlarge="1">  Скриншот 2015-10-13 22.44.30.png Поставил VLC на малинку: sudo apt-get install vlc И заработало!!! Скриншот 2015-10-13 22.49.44.png Нужно отметить, что камера к регистратору подключена на 3-й канал, поэтому у меня в коде channel=3!!! Будьте внимательны :)

Ko/|xo3HUk: Выявился очень существенный недостаток этого способа отображения видео с камеры - на других компьютерах, где не установлен VLC - видео не отображается. На андроиде также не отображается (через приложение MajorDoMo), хотя VLC установлен.

dmw: Выявился очень существенный недостаток этого способа отображения видео с камеры - на других компьютерах, где не установлен VLC - видео не отображается. На андроиде также не отображается (через приложение MajorDoMo), хотя VLC установлен.Не в VLC дело: https://support.google.com/chrome/answer/6213033?hl=ru

Ko/|xo3HUk: Установил Гугл Хром, выполнил все действия по указанной ссылке - не помогло:Безымянный.png Открываю в IE11:Безымянный2.png Открываю в Firefox41:Безымянный3.png

dmw: Установил Гугл Хром, выполнил все действия по указанной ссылке - не помогло:И не поможет. По указанной ссылке не инструкция, а разъснение. Цитата оттуда же: "плагины на основе NPAPI, в том числе Silverlight, Java и Unity, работать не будут."

Ko/|xo3HUk: Аааа... Вон оно чё! Т.е. моё решение на плагине VLC не комильфо и очень скоро совсем не будет работать. Благодарю за информацию! Меня смутило что дома у меня фаерфокс и Ослик показывают видео, а на работе те же браузеры той же версии не хотят этого делать. Хотелось бы, конечно, узнать - как мне дальше быть и как правильно IP-камеру на МЖД выводить.. и чтобы через пару месяцев это всё опять не переделывать потому что опять что-то отменят..

dmw: Может когдато HTML5 ктонибудь научит показывать rtsp, но к сожалению пока только так: viewtopic.php?f=7&t=2306#p22059

Ko/|xo3HUk: Спасибо! Буду искать почему у меня ffmpeg не поехал..

zelevova: Аааа... Вон оно чё! Т.е. моё решение на плагине VLC не комильфо и очень скоро совсем не будет работать. Благодарю за информацию! Меня смутило что дома у меня фаерфокс и Ослик показывают видео, а на работе те же браузеры той же версии не хотят этого делать. Колхозник, а может дело в том что с работы камеры по внутренним домашним серым ip адресам не доступны? :?: там же адрес скорее всего 192,168,0,ХХ или что то подобное... Конечно если у тебя рабочая и домашняя сеть не объединены в виртуальную сеть....

BeletskyAV: Про MOTION. MajorDoMo стоит на UBUNTU SERVER .(на CubieTruck тоже и работает почти без тормозов) Установил MOTION. Тестировал на работе адрес роутера 192.168.0.223 MajorDoMo за ним на адресе 192.168.1.100 Прописал порты : 25180 -> 192.168.1.251:80 10081 -> 192.168.1.100:8091 Строки для просмотра : Видио видно внутри и снаружи <img src="http://192.168.0.223:25180/mjpg/video.mjpg?" width=560"> - работает везде <img src="http://192.168.0.223:10081" width=560"> - работает только через MajorDoMo Поправил под себя /etc/motion/motion.conf , плюс : daemon on ffmpeg_video_codec swf В /etc/default/motion : start_motion_daemon = yes В /etc/motion/thread1.conf : target_dir /var/www/Camera1 snapshot_filename M_%S-snapshot picture_filename foto/mHS movie_filename video/mHS По мануалу MOTION должен стартовать при старте - но нет,решил проблему в "лоб" - В /etc/crontab дописал : @reboot root motion Создал 4 папки на каждую камеру : /var/www/Camera1/foto /var/www/Camera1/video /var/www/backup/Camera1/foto /var/www/backup/Camera1/video Создал файл цикла : /srv/www/scripts/cycle_camera.php  <?php
/*
* Цикл контроля камер Видео наблюдения
*/

chdir(dirname(__FILE__).'/../');

include_once(
"./config.php");
include_once(
"./lib/loader.php");

// connecting to database
$db = new mysql(DB_HOST, '', DB_USER, DB_PASSWORD, DB_NAME);

include_once(
"./load_settings.php");

while(
1)
{
runScript('Camera');


  if (file_exists('./reboot')) {
    $db->Disconnect();
    exit;
  }
}

DebMes("Unexpected close of cycle: " . basename(__FILE__));
Создал Объекты , Свойства : Объекты/CameraIP/Camera1..CameraN , VideoFile VideoFile - Свойства : Move1..MoveN , Busi Далее Сценарии : Сценарии/Camera
$busi 
= gg("VideoFile.Busi");
echo $busi;

if(
$busi == "0")
{
for(
$i=1;$i<4;$i++)
{
$foto = array_sum(array_map('is_file', glob("Camera$i/foto/*")));
$video = array_sum(array_map('is_file', glob("Camera$i/video/*")));
$move = gg("VideoFile.Move$i");

if(
$foto != $video && $move == "0")
{
say("Камера ".$i." обнаружено движение");
 sg("VideoFile.Move$i","1");
}
if(
$foto == $video && $move == "1")
{
say("Камера ".$i." обработка");
 sg("VideoFile.Move$i","0");
 sg("VideoFile.Busi","1");
 runScript('VideoArchiv',array("camera"=>"Camera$i"));
 }
echo $i."-".$foto;
echo "<br/>";
echo $i."-".$video;
echo "<br/>";
 }
}
Сценарии/VideoArchiv - создаёт данные для таблицы , перемещает лишнее в "backup" $camera = $params["camera"];
echo $camera;
echo "<br/>";
//+++++++FOTO++++++++++++++++++++++++++++++
$Fi = 0;
$Fhandle = opendir ("/var/www/$camera/foto/");
while(
$Ffile = readdir($Fhandle))
{
   if ($Ffile != '.' && $Ffile != '..')
  {
    $Ffunc[$Fi] = $Ffile;
    $Fi++;
  }
}
sort ($Ffunc);
sg("$camera.CountFoto",sizeof($Ffunc));
for ($q = 0; $q<sizeof($Ffunc); $q++)
{
sg("$camera.foto$q","$Ffunc[$q]");
}
//+++++++VIDEO+++++++++++++++++++++++++++++
$Vi = 0;
$Vhandle = opendir ("/var/www/$camera/video/");
while(
$Vfile = readdir($Vhandle))
{
   if ($Vfile != '.' && $Vfile != '..')
  {
    $Vfunc[$Vi] = $Vfile;
    $Vi++;
  }
}
sort ($Vfunc);
sg("$camera.CountVideo",sizeof($Vfunc));
for ($q = 0; $q<sizeof($Vfunc); $q++)
{
sg("$camera.video$q","$Vfunc[$q]");
}
//+++++++ПЕРЕМЕЩЕНИЕ+++++++++++++++++++++++
$cont = gg("$camera.CountVideo");
echo $cont;
echo "<br/>";
for ($i = 0; $i<$cont-10; $i++)
{
$foto = gg("$camera.foto$i");
$video = gg("$camera.video$i");

$fotoold = "/var/www/$camera/foto/";
$fotonew = "/var/www/backup/$camera/foto/";
$videoold = "/var/www/$camera/video/";
$videonew = "/var/www/backup/$camera/video/";

if (copy("$fotoold"."$foto","$fotonew"."$foto")) {
    echo "перемещён файл $foto";
 unlink("$fotoold"."$foto");
echo "<br/>";
}
if (copy("$videoold"."$video","$videonew"."$video")) {
    echo "перемещён файл $video";
 unlink("$videoold"."$video");
 echo "<br/>";
 }
}
//+++++СОЗДАНИЕ ТАБЛИЦЫ++++++++++++++++++++
$u = 0;
$cont = gg("$camera.CountVideo");
for ($i = $cont-6; $i<$cont; $i++)
{
$foto = gg("$camera.foto$i");
$video = gg("$camera.video$i");
sg("$camera.fotoTabl$u","$foto");
sg("$camera.videoTabl$u","$video");
$u++;
}
//=====
 sg("VideoFile.Busi","0")
Далее Меню управления : Меню управления/Видео камеры - Загружать дочерние элементы... Нет Меню управления/Видео камеры/Video - Период автообновления :2(секунд) - при нажатии на фото - показывает видео <table style="text-align: center; width: 302px;" border="1" cellpadding="2" cellspacing="2">
<
tbody>
<
tr>
<
td style="width: 140px;">Камера 1<br>
</
td>
<
td style="width: 140px;">Камера 3<br>
</
td>
</
tr>
<
tr>
<
td><a href="/Camera1/video/%Camera1.videoTabl5%" ><img src="/Camera1/foto/%Camera1.fotoTabl5%" width='140'><br>
</
td>
<
td><a href="/Camera3/video/%Camera3.videoTabl5%" ><img src="/Camera3/foto/%Camera3.fotoTabl5%" width='140'><br>
</
td>
</
tr>
<
tr>
<
td><a href="/Camera1/video/%Camera1.videoTabl4%" ><img src="/Camera1/foto/%Camera1.fotoTabl4%" width='140'><br>
</
td>
<
td><a href="/Camera3/video/%Camera3.videoTabl4%" ><img src="/Camera3/foto/%Camera3.fotoTabl4%" width='140'><br>
</
td>
</
tr>
<
tr>
<
td><a href="/Camera1/video/%Camera1.videoTabl3%" ><img src="/Camera1/foto/%Camera1.fotoTabl3%" width='140'><br>
</
td>
<
td><a href="/Camera3/video/%Camera3.videoTabl3%" ><img src="/Camera3/foto/%Camera3.fotoTabl3%" width='140'><br>
</
td>
</
tr>
<
tr>
<
td><a href="/Camera1/video/%Camera1.videoTabl2%" ><img src="/Camera1/foto/%Camera1.fotoTabl2%" width='140'><br>
</
td>
<
td><a href="/Camera3/video/%Camera3.videoTabl2%" ><img src="/Camera3/foto/%Camera3.fotoTabl2%" width='140'><br>
</
td>
</
tr>
<
tr>
<
td><a href="/Camera1/video/%Camera1.videoTabl1%" ><img src="/Camera1/foto/%Camera1.fotoTabl1%" width='140'><br>
</
td>
<
td><a href="/Camera3/video/%Camera3.videoTabl1%" ><img src="/Camera3/foto/%Camera3.fotoTabl1%" width='140'><br>
</
td>
</
tr>
<
tr>
<
td><a href="/Camera1/video/%Camera1.videoTabl0%" ><img src="/Camera1/foto/%Camera1.fotoTabl0%" width='140'><br>
</
td>
<
td><a href="/Camera3/video/%Camera3.videoTabl0%" ><img src="/Camera3/foto/%Camera3.fotoTabl0%" width='140'><br>
</
td>
</
tr>
</
tbody>
</
table>
<
br> Потом Сцены : Сцены/../Элемент = Camera1 -> есть движение - Кино , если нет - то нет. Тип = HTML State Название = Mov Код = <img src="http://192.168.0.223:10081" width=560"> // Проброс порта на 192.168.1.100:9081 Связанный объект = VideoFile Связанное св-во = Move1 Условие = "=" Значение = 1 Посты типа ВСЁ ЭТО ХХХня не пишите - сам знаю. А если по делу - то будет интересно т.к. Я не программист (на связиста учился...давно). P.S. На старый планшет 7'' поставил прогу BrowserHome , прописал URL "192.168.1.100/popup/scenes/5.html" Смотрю на время, температуру и кто мимо кабинета ходит.

Ko/|xo3HUk: Колхозник, а может дело в том что с работы камеры по внутренним домашним серым ip адресам не доступны? :?: там же адрес скорее всего 192,168,0,ХХ или что то подобное... Конечно если у тебя рабочая и домашняя сеть не объединены в виртуальную сеть.... Нее.. Айпишник я сразу ставил внешний белый статический, из сетки 31.27.ххх.ххх. Т.е. малинка, находясь в домашней сети, обращается к камере (которая тоже находится в домашней сети) через внешний айпишник. P.S. Сегодня на работе поставил VLC и спокойно посмотрел что снимает моя камера дома на балконе. Но раз эти плагины более не будут поддерживаться - буду копать в сторону ffmpeg :roll:

Jackal: Добрый вечер. Помогите с кодом. Вот страница <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>NetSurveillance</title> <meta http-equiv="Content-Style-Type" content="text/css" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <script type="text/javascript" src="m.jsp"></script> <script type="text/javascript"> var g_SoftWareVersion="V4.02.R12.00006510.10010"; var g_HardWareVersion="Unknown"; var g_mBuildTime="2014/5/9 16:57:32"; var g_SerialNo="001212360a06"; var g_VideoInChannel=1; var g_AlarmInChannel=2; var g_AlarmOutChannel=1; var g_AudioInChannel=1; var g_DigChannel=0; var g_channelNumber=1; var g_user="admin"; var g_port="554"; var g_address =document.location.hostname; if (g_address == "") { // g_address = "10.2.4.46"; } var iLanguage=101; var g_passWord=""; var g_bSafari=false; </script> <script type="text/javascript" src="mt.js"></script> <script type="text/javascript"> var Sys = {}; var ua = navigator.userAgent.toLowerCase(); var s; (s = ua.match(/msie (+)/)) ? Sys.ie = s : (s = ua.match(/firefox\/(+)/)) ? Sys.firefox = s : (s = ua.match(/chrome\/(+)/)) ? Sys.chrome = s : (s = ua.match(/opera.(+)/)) ? Sys.opera = s : (s = ua.match(/version\/(+).*safari/)) ? Sys.safari = s : 0; //以下进行测试 // if (Sys.ie) document.write('IE: ' + Sys.ie); // if (Sys.firefox) document.write('Firefox: ' + Sys.firefox); // if (Sys.chrome) document.write('Chrome: ' + Sys.chrome); // if (Sys.opera) document.write('Opera: ' + Sys.opera); if (Sys.safari) { g_bSafari=true; /*document.write('Safari: ' + Sys.safari);*/ } </script> <style type="text/css"> * { font-size: 12px; margin: 0; padding: 0; color: #fff; font-family: Arial, "宋体"; } #yt div { float: left; } #yt a { display: block; width: 100%; height: 100%; text-decoration: none; outline: none; } #yt a.y1 { background: url(yt1.jpg) no-repeat; } #yt a.y1:hover { background: url(yt11.jpg) no-repeat; } #yt a.y2 { background: url(yt2.jpg) no-repeat; } #yt a.y2:hover { background: url(yt21.jpg) no-repeat; } #yt a.y3 { background: url(yt3.jpg) no-repeat; } #yt a.y3:hover { background: url(yt31.jpg) no-repeat; } #yt a.y4 { background: url(yt4.jpg) no-repeat; } #yt a.y4:hover { background: url(yt41.jpg) no-repeat; } #yt a.y5 { background: url(yt5.jpg) no-repeat; } #yt a.y5:hover { background: url(yt51.jpg) no-repeat; } #yt a.y6 { background: url(yt6.jpg) no-repeat; } #yt a.y6:hover { background: url(yt61.jpg) no-repeat; } #yt a.y7 { background: url(yt7.jpg) no-repeat; } #yt a.y7:hover { background: url(yt71.jpg) no-repeat; } #yt a.y8 { background: url(yt8.jpg) no-repeat; } #yt a.y8:hover { background: url(yt81.jpg) no-repeat; } a.yta1 { display: block; width: 13px; height: 18px; text-decoration: none; float: right; } a.yta1 { background: url(yta1.jpg); } a.yta1:hover { background: url(yta11.jpg); } #yt a.y9 { background: url(yt9.jpg) no-repeat; } #yt a.y9:hover { background: url(yt91.jpg) no-repeat; } #yt1 div { float: left; } #yt1 a { display: block; width: 26px; height: 26px; text-decoration: none; outline: none; } #yt1 a.y1 { background: url(yt+.gif) no-repeat; } #yt1 a.y1:hover { background: url(yt+1.gif) no-repeat; } #yt1 a.y2 { background: url(yt-.gif) no-repeat; } #yt1 a.y2:hover { background: url(yt-1.gif) no-repeat; } #pc div { float: left; } #pc a { display: block; width: 36px; height: 25px; text-decoration: none; outline: none; } #pc a.p0 { background: url(full.jpg) no-repeat; } #pc a.p0:hover { background: url(full1.jpg) no-repeat; } #pc a.p1 { background: url(1.jpg); } #pc a.p1:hover { background: url(11.jpg); } #pc a.p2 { background: url(4.jpg); } #pc a.p2:hover { background: url(41.jpg); } #pc a.p3 { background: url(9.jpg); } #pc a.p3:hover { background: url(91.jpg); } #pc a.p4 { background: url(16.jpg); } #pc a.p4:hover { background: url(161.jpg); } #pc a.p5 { background: url(25.jpg); } #pc a.p5:hover { background: url(251.jpg); } #pc a.p6 { background: url(36.jpg); } #pc a.p6:hover { background: url(361.jpg); } #pc a.p7 { background: url(startAll.jpg); } #pc a.p7:hover { background: url(startAll1.jpg); } #pc a.p72 { background: url(stopAll.jpg); } #pc a.p72:hover { background: url(stopAll1.jpg); } #pc a.p8 { background: url(snap.jpg); } #pc a.p8:hover { background: url(snap1.jpg); } #pc a.p9 { background: url(recordAll.jpg); } #pc a.p9:hover { background: url(recordAll1.jpg); } #pc a.p92 { background: url(stopRecordAll.jpg); } #pc a.p92:hover { background: url(stopRecordAll1.jpg); } #pc a.p10 { background: url(audio.jpg) no-repeat; } #pc a.p102 { background: url(audio1.jpg) no-repeat; } #playView div { border: thin solid #000000; float: left; } #cl li { display: block; width: auto; height: 22px; } #cl a.subPlay { background: url(subPlay.gif) no-repeat; width: 17px; height: 19px; float: left; cursor: pointer; margin-left: 8px; margin-right: 0px; padding: 0px; } #cl a.noSubPlay { background: url(noSubPlay.gif) no-repeat; width: 17px; height: 19px; float: left; cursor: pointer; margin-left: 8px; margin-right: 0px; padding: 0px; } #cl a.mainPlay { background: url(play.gif) no-repeat; width: 17px; height: 19px; float: left; cursor: pointer; margin-left: 8px; margin-right: 0px; padding: 0px; } #cl a.noMainPlay { background: url(noPlay.gif) no-repeat; width: 17px; height: 19px; float: left; cursor: pointer; margin-left: 8px; margin-right: 0px; padding: 0px; } </style> </head> <body id='body' style="width: 100%; height: 100%; padding: 0px; margin: 0px; top: 0px; position: absolute; background: url(bg.jpg) repeat-x; text-align: center;" oncontextmenu="return false"> <div id="MessageBox"></div> <div id='hi' style="width: 280px; height: 180px; z-index: 1000; position: absolute; margin-top: -1999px; margin-left: 500px;"> <div style="float: left; width: 7px; height: 30px; background: url(m_dral.gif);"> </div> <div style="width: 266px; float: left; height: 30px; background: url(m_dram.gif);"> </div> <div style="float: right; width: 7px; height: 30px; background: url(m_drar.gif);"> </div> <div style="background-color: RGB(236,233,216); float: left; width: 100%; height: 150px;"> <div style="height: 70px; margin-top: 30px; float: left; width: 100%"> <div style="width: 100%; float: left; margin-left: 68px; height: 20px;"> <input style="cursor: pointer;float: left; height: 15px; margin-top: 1px;" id='mainAll' type='radio' checked="checked" name='streamStyle' /> <label id='mainAllText' for='mainAll' style="cursor: pointer;height: 15px; float: left; margin-left: 10px; color: #000000;"> </label></div> <div style="width: 100%; float: left; margin-left: 68px; margin-top: 15px"> <input style="cursor: pointer;float: left; height: 15px; margin-top: 1px;" id='subAll' type='radio' name='streamStyle' /> <label id='subAllText' for='subAll' style="cursor: pointer;height: 15px; float: left; margin-left: 10px; color: #000000;"> </label></div> <!--<div style="width: 100%; float: left; margin-left: 68px; margin-top: 10px" > <input onclick="ClickAutoPromt()" checked="checked" style="cursor: pointer;float: left; height: 15px; margin-top: 1px;" id='autoPrompt' type='checkbox' /> <label id='autoPromptText' for='autoPrompt' style="cursor: pointer;height: 15px; float: left; margin-left: 10px; color: #000000;"> </label></div>--> </div> <div style="margin-top: 55px"> <button id='playAllOk' style="width: 72px; cursor: pointer; height: 23px; font-family: 宋体, Arial, Helvetica, sans-serif; color: #000000; margin-right: 10px;" onclick="ClickHi()"> 确定</button> <button id='playAllCancel' style="width: 72px; cursor: pointer; height: 23px; font-family: 宋体, Arial, Helvetica, sans-serif; color: #000000;" onclick='closeHi()'> 取消</button> </div> <div style="width: 100%; float:left; margin-left: 180px; margin-top: 5px" > <input onclick="ClickAutoPromt()" checked="checked" style="cursor: pointer;float: left; height: 15px; margin-top: 1px;" id='autoPrompt' type='checkbox' /> <label id='autoPromptText' for='autoPrompt' style="cursor: pointer;height: 15px; float: left; margin-left: 10px; color: #000000;"> </label></div> </div> </div> <div id="ma" style="margin: 0px; padding: 0px; width: 100%; height: 31px; background: url('m_inTop.jpg') repeat-x; overflow: hidden; position: relative;"> <div id='logout' style="cursor: pointer;background: url(logOut.gif);float:right; margin-right:21%;padding-top:5px; font-size: 13px; height: 31px; width: 95px; color: #000000;" onclick="Logout()"></div> <div id='version' style="cursor: pointer;background: url(logOut.gif);float:right; margin-right:0px;padding-top:5px; font-size: 13px; height: 31px; width: 95px; color: #000000;" onclick="Version()"></div> </div> <div id="mb" style="width: 950px; height: 550px; padding: 0; margin: auto;"> <div id="mba" style="float: left; height: 100%; width: 140px;"> <div style="width: 140px; float: left; height: 100%;"> <div id='dra1' style="height: 29px; background: url(m_dram.jpg); position: relative;"> <div style="height: 29px; width: 8px; background: url(m_dral.jpg); float: left"> </div> <div style="height: 29px; width: 8px; background: url(m_drar.jpg); float: right; margin: 0 0px 0 0; cursor: move;"> </div> </div> <div id='mbabwrap'> <div id='mbab' style="margin: 0; width: auto; height: 100%; background: url(mb_bg.jpg) repeat-x; overflow: auto; padding: 0px; position: relative;"> <ul id='cl' style="margin-top: 20px;"> </ul> </div> </div> </div> </div> <div id="mbb" style="width: 670px; height: 100%; float: left;"> <div id="drb2" style="width: 100%; float: left; height: 29px; background: url(m_dram.jpg); margin: 0 1px 0 1px;"> <div style="height: 29px; width: 8px; background: url(m_dral.jpg); float: left"> </div> <div style="height: 29px; width: 8px; background: url(m_drar.jpg); float: right; margin: 0 0 0 0;"> </div> </div> <div id='playView' style="border: 1px solid 0; width: 665px; margin: 3px 2px 0 2px; height: 480px; float: left; background-color: #C0C0C0;"> <!--AllPlayView--> </div> <div id='funcBar' style="width: 100%; float: left; height: 33px; background: url(plcb11.jpg); margin: 2px 2px 0 2px;"> <div style="width: 7px; height: 33px; float: left; background: url(plcbl.jpg);"> </div> <div style="width: 7px; height: 33px; float: right; background: url(plcbr.jpg);"> </div> <div id='pb' style="height: 26px; margin: 2px 0 0 10px; position: relative;"> <div id='pc'> <!-- <div style="margin: 0 0 0 0px"> <a id='xp0' class="p0" href="javascript:;" onclick="ocx.Fullscreen(true)"></a> </div>--> <div style="margin: 0 0 0 5px"> <a id='xp1' class="p1" href="javascript:;" onclick="inSetWindow(1)"></a> </div> <div style="margin: 0 0 0 5px"> <a id='xp2' class="p2" href="javascript:;" onclick="inSetWindow(4)"></a> </div> <div style="margin: 0 0 0 5px"> <a id='xp3' class="p3" href="javascript:;" onclick="inSetWindow(9)"></a> </div> <div style="margin: 0 0 0 5px"> <a id='xp4' class="p4" href="javascript:;" onclick="inSetWindow(16)"></a> </div> <div style="margin: 0 0 0 5px"> <a id='xp5' class="p5" href="javascript:;" onclick="inSetWindow(25)"></a> </div> <div style="margin: 0 0 0 5px;"> <a id='xp6' class="p6" href="javascript:;" onclick="inSetWindow(36)"></a> </div> <div style="margin: 0 0 0 5px"> <a id='startPlayAll' class="p7" href="javascript:;" onclick="startPlayAll()"></a> </div> <div style="margin: 0 0 0 5px"> <a id='stopPlayAll' class="p72" href="javascript:;" onclick="StopPlayAll()"></a> </div> <!--<div style="margin: 0 0 0 5px;"> <a title='snap' id='snap' class="p8" href="javascript:;" onclick='ocx.BMPCapturePicture("C:\\BMP")'> </a> </div> <div style="margin: 0 0 0 5px"> <a id='recordAll' class="p9" href="javascript:;" onclick="recordAll()"></a> </div> <div style="margin: 0 0 0 5px"> <a id='stopRecordAll' class="p92" href="javascript:;" onclick="stopRecordAll()"></a> </div> <div style="margin: 0 17px 0 0; float: right"> <a id='Audio' class="p102" href="javascript:;" onclick="openAudio()"></a> </div>--> </div> <script type="text/javascript"> if(!g_bSafari) { $('pc').style.display="none" ; } </script> </div> </div> </div> <script type="text/javascript"> resizeM(); </script> <div id="mbc" style="float: right; height: 100%; width: 140px;"> <div style="width: 140px; background: url(mb_bg.jpg) repeat-x; float: left; height: 100%;"> <div id='dra3' style="height: 29px; background: url(m_dram.jpg); position: relative;"> <div style="background:url(logo2.gif) no-repeat; margin-left:5px; margin-top:5px;width:100%;height:100%;z-index:10;position:absolute;top:0px;left:0px;"></div> <div style="height: 29px; width: 8px; background: url(m_dral.jpg); float: left"> </div> <div style="height: 29px; width: 8px; background: url(m_drar.jpg); float: right; margin: 0 0px 0 0; cursor: move;"> </div> </div> <div id='yt' style="height: 130px; width: 125px; position: relative; padding: 8px 8px 0 8px"> <div style="width: 40px; height: 35px; padding: 0px 0 0 0px;"> <a class="y1" href="javascript:;" onmousedown="ajaxFunction('start','directionleftup')" onmouseup="ajaxFunction('stop','directionleftup')" onmouseout="ajaxFunction('stop','directionleftup')"></a> </div> <div style="width: 45px; height: 35px; padding: 0px 0 0 0px;"> <a class="y2" href="javascript:;" onmousedown="ajaxFunction('start','directionup')" onmouseup="ajaxFunction('stop','directionup')" onmouseout="ajaxFunction('stop','directionup')"></a> </div> <div style="width: 39px; height: 35px; padding: 0px 0 0 0px;"> <a class="y3" href="javascript:;" onmousedown="ajaxFunction('start','directionrightup')" onmouseup="ajaxFunction('stop','directionrightup')" onmouseout="ajaxFunction('stop','directionrightup')"></a> </div> <div style="width: 40px; height: 50px; padding: 0px 0 0 0px;"> <a class="y4" href="javascript:;" onmousedown="ajaxFunction('start','directionleft')" onmouseup="ajaxFunction('stop','directionleft')" onmouseout="ajaxFunction('stop','directionleft')"></a> </div> <div style="width: 45px; height: 50px;"> <a class="y5" href="javascript:;"></a> </div> <div style="width: 39px; height: 50px; padding: 0px 0 0 0px;"> <a class="y6" href="javascript:;" onmousedown="ajaxFunction('start','directionright')" onmouseup="ajaxFunction('stop','directionright')" onmouseout="ajaxFunction('stop','directionright')"></a> </div> <div style="width: 40px; height: 45px; padding: 0 0 0 0px;"> <a class="y7" href="javascript:;" onmousedown="ajaxFunction('start','directionleftdown')" onmouseup="ajaxFunction('stop','directionleftdown')" onmouseout="ajaxFunction('stop','directionleftdown')"></a> </div> <div style="width: 45px; height: 35px; padding: 0 0 0 0px;"> <a class="y8" href="javascript:;" onmousedown="ajaxFunction('start','directiondown')" onmouseup="ajaxFunction('stop','directiondown')" onmouseout="ajaxFunction('stop','directiondown')"></a> </div> <div style="width: 39px; height: 35px; padding: 0 0 0 0px;"> <a class="y9" href="javascript:;" onmousedown="ajaxFunction('start','directionrightdown')" onmouseup="ajaxFunction('stop','directionrightdown')" onmouseout="ajaxFunction('stop','directionrightdown')"></a> </div> </div> <div id='yt1' style="width: 132px; height: 90px; position: relative; margin: 0 5px 0 5px;"> <div style="padding: 0 0 5px 14px;"> <a class="y1" href="javascript:;" onmousedown="ajaxFunction('start','zoomtile')" onmouseup="ajaxFunction('stop','zoomtile')"></a> </div> <div id='xbb' style="color: #FFFFFF; height: 18px; width: 50px; padding: 8px 0 0 0; text-align: center;"> </div> <div style="padding: 0 0 5px 0;"> <a class="y2" href="javascript:;" onmousedown="ajaxFunction('start','zoomwide')" onmouseup="ajaxFunction('stop','zoomwide')"></a> </div> <div style="padding: 0 0 5px 14px;"> <a class="y1" href="javascript:;" onmousedown="ajaxFunction('start','focusnear')" onmouseup="ajaxFunction('stop','focusnear')"></a> </div> <div id='xbj' style="color: #FFFFFF; height: 18px; width: 50px; padding: 8px 0 0 0; text-align: center;"> </div> <div style="padding: 0 0 5px 0;"> <a class="y2" href="javascript:;" onmousedown="ajaxFunction('start','focusfar')" onmouseup="ajaxFunction('stop','focusfar')"></a> </div> <div style="padding: 0 0 5px 14px;"> <a class="y1" href="javascript:;" onmousedown="ajaxFunction('start','irislarge')" onmouseup="ajaxFunction('stop','irislarge')"></a> </div> <div id='xgq' style="color: #FFFFFF; height: 18px; width: 50px; padding: 8px 0 0 0; text-align: center;"> </div> <div style="padding: 0 0 5px 0;"> <a class="y2" href="javascript:;" onmousedown="ajaxFunction('start','irissmall')" onmouseup="ajaxFunction('stop','irissmall')"></a> </div> </div> </div> </div> </div> <div id="mc" style="clear: both; height: 13px; text-align: center; background: url(mc.jpg) repeat-x;"> CopyRight 2014,All Rights Reserved </div> <div style="position: absolute; top: -2000px; width: 0px;"> <a style="background: url(yt11.jpg)"></a><a style="background: url(yt21.jpg)"></a> <a style="background: url(yt31.jpg)"></a><a style="background: url(yt41.jpg)"></a> <a style="background: url(yt51.jpg)"></a><a style="background: url(yt61.jpg)"></a> <a style="background: url(yt71.jpg)"></a><a style="background: url(yt81.jpg)"></a> <a style="background: url(yt91.jpg)"></a><a style="background: url(yt+1.gif)"></a> <a style="background: url(yt-1.gif)"></a><a style="background: url(stopAll1.jpg)"> </a><a style="background: url(startAll1.jpg)"></a><a style="background: url(11.jpg)"> </a><a style="background: url(41.jpg)"></a><a style="background: url(91.jpg)"></a> <a style="background: url(161.jpg)"></a><a style="background: url(251.jpg)"></a> <a style="background: url(361.jpg)"></a> </div> </body> </html>

Ko/|xo3HUk: Добрый вечер! А что с этим кодом не так? У меня веб-интерфейс камеры точно такой же :) P.S. не могли бы Вы код под спойлер спрятать - тяжело такую простынь скроллить

Ko/|xo3HUk: Установка motion с поддержкой rtsp на RPi Нашёл хорошее описание на сайте: https://tyrolite.wordpress.com/2015/03/07/building-motion-with-ffmpeg-and-rtsp-support/ Все шаги подробно расписаны. У меня только были замечания по этим шагам - см. под спойлером. После установки ffmpeg и перед установкой motion нужно поставить autoreconf и libjpeg-dev:     sudo apt-get install autoreconf
    sudo apt
-get install libjpeg-dev
При сборке motion перед вызовом ./configure нужно запустить autoreconf c ключом '-fiv':     git clone https://github.com/Mr-Dave/motion.git
    cd motion
    autoreconf 
-fiv
    
./configure
    make
    sudo make install 
&& ldconfig 
После того как всё установил – попробовал запустить motion: motion -s и словил ошибку: motion: error while loading shared libraries: libavutil.so.55:
cannot open shared object file: No such file or directory
Нашёл решение с подробным описанием чего и где сделать чтоб стало вдруг хорошо: https://forum.ivorde.com/ffmpeg-error-while-loading-shared-libraries-libavdevice-so-52-cannot-open-shared-object-file-no-t129.html Проверяем какие библиотеки не найдены для нашего приложения: ldd `which motion`
        /usr/lib/arm-linux-gnueabihf/libcofi_rpi.so (0x76f35000)
        libm.so.6 => /lib/arm-linux-gnueabihf/libm.so.6 (0x76eb5000)
        libpthread.so.0 => /lib/arm-linux-gnueabihf/libpthread.so.0 (0x76e96000)
        libjpeg.so.8 => /usr/lib/arm-linux-gnueabihf/libjpeg.so.8 (0x76e5b000)
        libavutil.so.55 => not found
        libavformat
.so.57 => not found
        libavcodec
.so.57 => not found
        libswscale
.so.4 => not found
        libc
.so.6 => /lib/arm-linux-gnueabihf/libc.so.6 (0x76d2a000)
        /lib/ld-linux-armhf.so.3 (0x76f42000)  Проверяем – а где вообще лежат эти библиотеки? (если они есть вообще :D ): find /usr/local/lib/ | grep -\
"libavutil.so.55|libavformat.so.57|libavcodec.so.57|libswscale.so.4"
        /usr/local/lib/libavformat.so.57.8.102
        
/usr/local/lib/libavcodec.so.57.7.100
        
/usr/local/lib/libavutil.so.55
        
/usr/local/lib/libavcodec.so.57
        
/usr/local/lib/libavformat.so.57
        
/usr/local/lib/libswscale.so.4.0.100
        
/usr/local/lib/libavutil.so.55.4.100
        
/usr/local/lib/libswscale.so.4 И прописываем пути к либам: sudo nano /etc/ld.so.conf Дописываем те пути, которые не были указаны: include ld.so.conf.d/*.conf
/usr/local/libevent-1.4.14b/lib
/usr/local/lib
Далее: sudo ldconfig И ЗАРАБОТАЛО!!!! motion -h
motion Version Unofficial
-Git-2caced3, Copyright 2000-2005 Jeroen Vreeken/Folkert van Heusden/Kenneth Lavrsen На всякий случай - вдруг сайт этот упадёт - выложу вордовский документ здесь. Установка Motion на RPi.zip Сейчас ищу пути - как это всё правильно с МЖД состыковать, чтобы на сайте можно было видео с камеры посмотреть (или слайдшоу из картинок - пока не определился). И как лучше писать видео/картинки на RPi - чтобы место драгоценное на tmpfs не тратить, т.к. пишу пока в папку /tmp, а под неё размер выделен всего 100 МБ. P.S. Вообще - видео пишется на отдельный видеорегистратор, поэтому motion можно запускать только при открытии соответствующей страницы сайта, на которой будет выводиться видео.

Ko/|xo3HUk: Похоже на костыли, но пока настроил отображение камеры на МЖД следующим образом: motion следит за движением и при наличии оного пишет swf файл. Для отображения просто подключаюсь к порту motion: <meta http-equiv="refresh" content="20">
<
img width="100%" src="http://xxx.xxx.xxx.xxx:8081/" alt="http://xxx.xxx.xxx.xxx:8081/"></img>
  где, xxx.xxx.xxx.xxx - статический белый IP-шник моего роутера, который пробрасывает порт 8081 на малинку. Т.к. размер партиции /tmp ограничен в 100 МБ, то очень скоро он может забиться файлами *.swf. Поэтому по крону с периодичностью в несколько минут запускаем скрипт, который чистит старые swf-файлы: cd /tmp/motion && ls -| egrep  "*.swf" | tail -n+2  | xargs -i rm '{}'
   UPD: Пока это писал - подумал - а зачем вообще писать swf, если я напрямую поток получаю со стрим-порта? Заблокировал в конфиге motion.conf создание swf-файла - и всё-равно получаю видео - то что мне надо! На андроиде тоже отображается видео, без всяких плагинов.

Vovix: При настройке захвата движения из камеры, путем использования Webcam XP (т.н. Способ №2) из Подключение IP-камер наблюдаю следующую проблему: Настроил Webcam XP: Скриншот 2015-10-28 01.35.46.png т.е. по сути вызов: http://192.168.1.100:80/objects/?object=sensorMovement1&op=m&m=statusChanged&status=1 код в методе statusChanged:
// say ($params['status']);
$this->setProperty('status',$params['status']);
$this->setProperty('updatedTimestamp',time()); 

$this
->setProperty('alive',1);
$ot=$this->object_title;
$alive_timeout=(int)$this->getProperty("aliveTimeOut");
if (!$alive_timeout) {
 $alive_timeout=24*60*60;
}
clearTimeOut($ot."_alive");
setTimeOut($ot."_alive","sg('".$ot.".alive',0);",$alive_timeout);



if ($params['status']) {

 $this->setProperty('motionDetected',1);
 clearTimeOut($ot.'_detected'); 
 setTimeOut
($ot.'_detected',"setGlobal('".$ot.".motionDetected',0);",30);

 $linked_room=$this->getProperty('LinkedRoom');
 if ($linked_room!='') {
  callMethod($linked_room.'.onActivity');
 }


 if (getGlobal('somebodyHome')!=1) {
  setGlobal('somebodyHome',1);
 }


 $last_register=registeredEventTime('inhouseMovement');
  registerEvent('inhouseMovement',$this->name,2);
 if (!$last_register || ((time()-$last_register)>2*60*60)) {
  if (timeBetween('06:00', '12:00')) {
   // runScript('morningGreeting');
   say (100);
  }
  if (timeBetween('12:00', '06:00')) {
   // runScript('eveningGreeting');
   say (200);
  }  
 
}
}
  Дак вот, метод вызывается но $params не передается, т.е. при проверке в начале метода оказывается равным "" (пустое значение)! через браузер вызов: http://192.168.1.100:80/objects/?object=sensorMovement1&op=m&m=statusChanged&status=1 отрабатывается идеально! (метод и объект, естественно у меня существуют) ну если предположить что Webcam XP мудит, то почему выборочно... ведь наименование объекта и название метода передается!?

Vovix: по моему вопросу выше, прошу помочь!!!

dmw: 1) В x-ray видно что метод вызывается? параметры видно там какие приходят? Есть подозрение что там какойто текст самого sms прибавляется + номер телефона пустой строкой. 2) А что если в HTTP "Post Url for SMS Provider" засунуть полностью адрес с параметрами всю целиком? 3) Почему не используете для этих целей "Run HTTP Post"?

Vovix: 1) В x-ray видно что метод вызывается? параметры видно там какие приходят? Есть подозрение что там какойто текст самого sms прибавляется + номер телефона пустой строкой. да конечно, метод вызывается, вот что там: a:1:{s:21:"ORIGINAL_OBJECT_TITLE"; s:15:"sensorMovement1"; } 2) А что если в HTTP "Post Url for SMS Provider" засунуть полностью адрес с параметрами всю целиком? засовывал - вообще не запускало! 3) Почему не используете для этих целей "Run HTTP Post"? делал всё по примеру.... если разберусь попробую так! спасибо!

gladskoy: Доброго времени суток. Подскажите как запустить картинку с камеры <html xmlns="http://www.w3.org/1999/xhtml"><head> <title>IPC</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <style>* { PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; margin:0 auto; width:100%; height:102%; PADDING-RIGHT: 0px; FONT-FAMILY: Arial; BACKGROUND:#e8ecef; COLOR: #000000; FONT-SIZE: 14px; PADDING-TOP: 0px } #main_content { BORDER-BOTTOM: #cccccc 0px solid; TEXT-ALIGN: center; BORDER-LEFT: #cccccc 0px solid; PADDING-BOTTOM: 0px; LINE-HEIGHT: 102%; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; BACKGROUND: #e8ecef; HEIGHT: 102%; COLOR: #ffffff; BORDER-TOP: #cccccc 0px solid; BORDER-RIGHT: #cccccc 0px solid; PADDING-TOP: 0px;FONT-FAMILY: Arial; } A { COLOR: #ff0000; FONT-SIZE: 14px; FONT-WEIGHT: none; } #download { margin:0 auto; color:#FFFFFF; width:100%; height:100%; font-size:14px; text-align:center; position:center; } </style> <script language="javascript"> function ocx_load(){ var embed1 = document.embed1; var download_html = '<p style="color:#FF0000;"><a href="install/IPCOCX_PX.exe"><img src="download.jpg" border="0" id="download"></a></p>'; try { if(embed1.IsUpdateOcx(5,1,35,1)) { document.getElementById("main_content").innerHTML = download_html; return; } } catch (e) { document.getElementById("main_content").innerHTML = download_html; return; } embed1.width= document.documentElement.clientWidth; embed1.height= document.documentElement.clientHeight; embed1.url=location.host; embed1.InitModule(1); } window.onresize = function(){ if(!embed1) { return; } if(isRsize == 1) { embed1.width= document.documentElement.clientWidth; embed1.height= document.documentElement.clientHeight; } } </script> <meta name="GENERATOR" content="MSHTML 8.00.6001.18702"></head> <body onload="ocx_load();"> <div id="main_content"> <object name="embed1" width="1263" height="682" align="middle" id="embed1" classid="clsid:B31BB502-CC3B-4AFF-9F74-DD40E7C00F52"><PARAM NAME="_Version" VALUE="65536"><PARAM NAME="_ExtentX" VALUE="33417"><PARAM NAME="_ExtentY" VALUE="8070"><PARAM NAME="_StockProps" VALUE="0"> <embed align="middle" vspace="102%" hspace="100%"> </object></div> </body></html> камера вот такая http://ru.aliexpress.com/item/2MP-POE-camera-1080P-p2p-ip-camera-outdoor-IMX322-Sensor-Night-Vision-CCTV-HD-Lens-3/32378383358.html

Ko/|xo3HUk: По моему это страница загрузки софта, который покажет картинку. Не нашёл здесь какой-либо ссылки на поток. Может поставить этот софт и потом уже посмотреть исходный код?

gladskoy: Софт был установлен. Это уже после установки софта. Код брал со странички, когда была отображена картинка с камеры

gladskoy: картинку получаю в программе может чем нить поможет эта инфа

Ko/|xo3HUk: Я делал получение картинки напрямую по rtsp-протоколу, используя vlc-плагин, но это, как мне объяснили, неправильный путь :) Т.к. поддерживается не на всех устройствах (например: не работает на андроиде). Вот тут писал: http://majordomo.smartliving.ru/forum/viewtopic.php?f=8&t=185&start=40#p25638 Сейчас я организовал получение картинок (именно так: картинок) через motion - это работает на всех моих устройствах, но не знаю - подойдёт ли Вам.

nkh: А МД может собирать события из axxon next? Интересно использовать камеры в качестве датчиков присутствия

sergejey: А МД может собирать события из axxon next? Интересно использовать камеры в качестве датчиков присутствия Нет, пока не может. Возможный "костыль" -- с помощью камер при сработке загружать картинку в какую-то папку, которую мониторит MajorDoMo (модуль Watch Folders) и тогда система будет знать, что что-то произошло, т.е. реагировать на новые картинки в папке, но это не мгновенная реакция. Ещё вариант -- если в камерах есть функция отправки SNMP пакетов, то можно использовать модуль SNMP чтобы мониторить события мгновенно.

Sas: Можно прикрутить мжд к motion

SolarW: Современные камеры (как пример Hikvision) умеют слать разные события на "сервер мониторинга" О появлении движения, пересечении неких виртуальных границ, проблемами с местом на подключенной флешке и т.д. Это все помимо стандартных записей скриншотов/видеороликов по SMB/FTP/Email и прочих стандартных вещей.

karlismoto: пожалуйста, предложите мне лучшеу IP камеру. Я хочу купить и добавить в MD. началая хотел бы внутренней вариант. Я думал купить недорогой в Aliexpress... p.s на внутреннем рынке также доступн интересный brand camnoopy . http://www.camnoopy.com/en/index.aspx кто-то имеет опыт работы со следующими продуктами?

karlismoto: Я получил новый IP-камера camnoopy cn-720k3. (http://www.camnoopy.com/en/productshow.aspx?id=212) она также поддерживает onwif протокол. что может быть самым простым способом интеграция с MD? В оригинальной программе, где он может видеть, что я не могу найти HTML код... Что я должен делать?

gorobey: Я сделал решение используя avreg. Это более правильно. Ведь камеры должны куда-то записывать то что они показывают. Так как все время мы не смотрим за этими камерами. При помощи avreg всегда можна получить html код для картинки в не зависимости есть такая возможность у камеры или нет. Главное поток получить по rtsp.

karlismoto: Спасибо! но, к сожалению, насколько я понимаю - не поддерживает windows... может быть, есть какие-нибудь идеи?

C_3AXAPOB: На сцену хтмл блок с таким содержанием:

Ko/|xo3HUk: попробовал добавить этот код на домашнюю страницу - показывает только статичную картинку. Тогда уж добавить в начало ещё и это, чтоб обновлялось раз в 10-15 секунд: <meta http-equiv="refresh" content="15">

C_3AXAPOB: в сцене у меня обновляется без костылей 1 раз в секунду

Ko/|xo3HUk: В сценах, видимо, javascript за обновление отвечает, поэтому и обновляется. Но как костыль данный метод можно и в домашних страницах использовать. Я раньше пробовал эту строку прописывать, но без - не заработало, а когда скобки с решетками добавил - заработало.

Kris123t: Кто-нибудь решил задачу - брать информацию о движении прямо с самой IP камеры по ONVIF протоколу ? Зачем городить датчики если камера умеет сама отлично распознавать движение в помещении, где отсутствует листва и перемены освещенности. А программа Webcam XP - изобретает велосипед и пытается сама детектить движение силами процессора, к тому же очень бездарно кстати... Например с одной IP камеры 4 мегапикселя Dahua - она тратит 60-70% ресурсов процессора i5 6200 на это :(

Sas: Камеры умеют сами писать видео и бросать при движении картинки на фтп/почту. А мж вроде умеет мониторить "папки"

Ko/|xo3HUk: она тратит 60-70% ресурсов процессора i5 6200 потому что 4 мегапикселя для этого процессора - это Dahua (очень много)

Ko/|xo3HUk: Кто-нибудь решил задачу - брать информацию о движении прямо с самой IP камеры по ONVIF протоколу ? По существу - я пытался немного другую задачу решить - с веб-камеры, подключенной к RPi писать по ONVIF-протоколу на видеорегистратор, но ничего не получилось, т.к. оказалось что мой видеорегистратор не поддерживает этот протокол :( А дома у меня все три окна выходят на южную сторону и освещённость в течении дня меняется очень сильно и камера постоянно распознает движение.

Kris123t: Кто-нибудь решил задачу - брать информацию о движении прямо с самой IP камеры по ONVIF протоколу ? По существу - я пытался немного другую задачу решить - с веб-камеры, подключенной к RPi писать по ONVIF-протоколу на видеорегистратор, но ничего не получилось, т.к. оказалось что мой видеорегистратор не поддерживает этот протокол :( А дома у меня все три окна выходят на южную сторону и освещённость в течении дня меняется очень сильно и камера постоянно распознает движение. 1) по ONVIF протоколу нельзя писать, писать можно например по rtsp (real time stream protocol) или по более дремучему mjpeg. ONVIF - стандартизирует разные камеры для того чтобы их легче было находить в сети, чтобы из них можно было стандартным образом читать информацию о некоторых их настройках (их модель, версия прошивки, сетевые настройки, яркость и т.д.), стандартным образом изменять эти настройки, управлять PTZ камерами, а также для передачи от камер служебной информации, например информации о движении. Это и есть самое интересное - то есть все решается средствами самой камеры. В камерах можно задать и область мониторинга и чувствительность. Даже можно задавать alarm на пересечении определенной линии в определенном направлении. И даже о забытых вещах , о подмене картинки, о превышении уровня звука, о появлении быстрого движения-бега, о праздношатании в области камера и другое. Именно вот эту информацию и хочется считывать по ONVIF. она тратит 60-70% ресурсов процессора i5 6200 потому что 4 мегапикселя для этого процессора - это Dahua (очень много) 2) ни разу не Dahua :) это практически последнее поколение i5 процессоров и например обработка движения с 3х(!) таких же камер сервером ivideon на нем занимала около 30% его ресурсов. Это было пока Ivideon не включил мозг и не научился тоже читать эту инфу по ONVIF. и сразу на 30% нагрузка снизилась :)

Ko/|xo3HUk: Некоторые регистраторы могут писать по ONVIF-протоколу. Например: http://shop.nag.ru/article/kak-podklyuchit-kameru-po-onvif-ili-rtsp

igorewa: Линия IP идеально подходит! Я ее установил на тот же сервер где и МД, поучил идеальный видео-сервер ( раньше у меня видео с камер просто сохранялось на NAS. И домашняя страница с камерами выглядит идеально, прямо на ней можно смотреть записи с камер. Вот как это выглядит Просмотр https://cl.ly/1J3M1W353G17/prosmotr.png Записаное видео https://cl.ly/2F3Y430a1c3S/videoskamer.png

andrey1509: Я в системе МД новичок. Может кому мой опыт использования IP-Cam пригодится. Заказал на ebay камеры , встал вопрос о создании сервера видео наблюдения. В начале использовал ZM , но затем отказался т.к. не дружет он с IP-АТС Asterisk хоть ты тресни, возможно кто и подружил - у меня не получилось.И процессор грузит как надо. Обратился к Motion. И у меня все получилось. Создал HTML файл куда занес обе камеры.Засада была в отображении потокового видео, но и она решена Могу его смотреть отдельно в броузере или использовать как вставку в систему МД. В каталог сервера пишутся события , на каждое событие фото в начале и в конце. Нужны конфиги чтоб долго не мучатся выложу или отправлю.

Ko/|xo3HUk: Как решили проблему с отображением потокового видео? На андроиде можете смотреть это видео?

aurodionov: Я в системе МД новичок. Может кому мой опыт использования IP-Cam пригодится. Заказал на ebay камеры , встал вопрос о создании сервера видео наблюдения. В начале использовал ZM , но затем отказался т.к. не дружет он с IP-АТС Asterisk хоть ты тресни, возможно кто и подружил - у меня не получилось.И процессор грузит как надо. Обратился к Motion. И у меня все получилось. Создал HTML файл куда занес обе камеры.Засада была в отображении потокового видео, но и она решена Могу его смотреть отдельно в броузере или использовать как вставку в систему МД. В каталог сервера пишутся события , на каждое событие фото в начале и в конце. Нужны конфиги чтоб долго не мучатся выложу или отправлю. А можно подробнее, особенно интересует интеграция с астериск Пишу с пульта....

andrey1509: Как решили проблему с отображением потокового видео? На андроиде можете смотреть это видео? На чем угодно лишь бы был броузер. Нужно после IP камеры прописать чем смотреть и пароль и логин. Попробую поискать где брал. И тогда вставлю в ответ.

andrey1509: Я в системе МД новичок. Может кому мой опыт использования IP-Cam пригодится. Заказал на ebay камеры , встал вопрос о создании сервера видео наблюдения. В начале использовал ZM , но затем отказался т.к. не дружет он с IP-АТС Asterisk хоть ты тресни, возможно кто и подружил - у меня не получилось.И процессор грузит как надо. Обратился к Motion. И у меня все получилось. Создал HTML файл куда занес обе камеры.Засада была в отображении потокового видео, но и она решена Могу его смотреть отдельно в броузере или использовать как вставку в систему МД. В каталог сервера пишутся события , на каждое событие фото в начале и в конце. Нужны конфиги чтоб долго не мучатся выложу или отправлю. А можно подробнее, особенно интересует интеграция с астериск Пишу с пульта.... А чего от Asterisk хотите ?

Denis_k: а никто не интегрировал Surveillance Station от synology? для тех, кто использует дисковые накопители synology или самостоятельные сборки на этом же софте

andrey1509: Как решили проблему с отображением потокового видео? На андроиде можете смотреть это видео? По ссылке http://www.ispyconnect.com/sources.aspx находите свою камеру. и вставляете в файл *. html Открываете через любой броузер. У меня вот так: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <html> <head> <title>Motion</title> </head> <body bgcolor="black" text="white"> <h1 align="center">Motion Video Server</h1> <table> <tr> <td> <img src="http://192.168.1.44:8082/stream.mjpg" width="576" height="376"/> </td> <td> <img src="http://192.168.1.44:8083/stream.mjpg" width="576" height="376"/> </td> </tr> </table> </body> </html> Разные порты это потому что с мотиона дергаю.

Ko/|xo3HUk: Это зависит от камеры. У меня Xmeye - будет работать (и работало) только в связке Motion+ffmpeg. Моя камера отдаёт поток только через rtsp. Если его напрямую смотреть через браузер - это только через плагин VLC, но на андроиде уже не посмотришь :(

Kod.Begemot: ... но на андроиде уже не посмотришь :( Смотрю на старом и свежем андроиде через VLC поток H264 через rtsp. rtsp://user:pass@192.168.0.100:554/h264 Также создал пункт меню, в котором HTML блок, где код: <style>
.
layer1 {
    
width270px;
   }
img {
    
max-width100%;
}
</
style>
<
div class="layer1">
 [
#module name="thumb" url="http://user:pass@192.168.0.100/cgi-bin/jpg/image.cgi?" width="260" enlarge="1" live="1"#]
</div>   И имею ~ 1 кадра в секунду, для мобильного соединения норм.. Камера сейчас BEWARD, но с HiWatch тоже работало, ссылка была несколько другая.

Ko/|xo3HUk: Я до этого добавлял код [#module name="thumb" url="rtsp://xxx.xxx.xxx.xxx:554/user=xxx&password=xxx&channel=3&stream=0.sdp?real_stream" enlarge="1"#] , но не добавлял параметр live="1" , поэтому получал только статичную картинку. Сейчас добавил live="1" - картинка стала обновляться, но с интервалом в 8 секунд. Видимо это ещё от камеры сильно зависит. У Вас, кстати, BEWARD поддерживает http, может ещё и поэтому быстрее работает. У меня же только rtsp держит.

andrey1509: Это зависит от камеры. У меня Xmeye - будет работать (и работало) только в связке Motion+ffmpeg. Моя камера отдаёт поток только через rtsp. Если его напрямую смотреть через браузер - это только через плагин VLC, но на андроиде уже не посмотришь :( Я создаю в броузере страницу. А ее какая разница где запускать

Ko/|xo3HUk: Вот с этого сообщения почитайте - там мне объясняли почему плагин VLC на андроиде не будет работать: http://majordomo.smartliving.ru/forum/viewtopic.php?p=25638#p25638

Kod.Begemot: ... У Вас, кстати, BEWARD поддерживает http, может ещё и поэтому быстрее работает. У меня же только rtsp держит. Да, Beward конечно держит и http, и умеет сам отдавать JPEG, поэтому попробую на днях с HiWatch и безродной китайской.. А так видел где-то здесь решение в виде установки на сервер ПО "IP Линия", а уже с неё получать нужные картинки / видео... upd. Попробовал. HiWatch (HickVision) тоже умеет отдавать JPEG. нашел в инете по запросу "RTSP ссылки для оборудования HikVision" http://user:pass@ip-adress/ISAPI/Stream ... eType=JPEG встроил в страничку - есть, кадр в секунду, вполне... таки да, тут опять http... но раз бюджетный HiWatch поддерживает, то значит многие умеют... Не сочтите за рекламу, рекомендую камеры. Был приятно удивлен соотношением цена/качество, Сейчас сам пользую Beward, но только потому что подвернулась, за реальную цену покупать их душит земноводное. А с HiWatch оказалось дружит отличный софт iVMS4200/5000, до удобства которого бевардовскому рекорд центру далеко...

Kod.Begemot: Продолжаю исследования... с китайской (на всю голову) камерой не взлетело.. 1 кадр в ~8 секунд. Ссылку, чтобы выдушить у камеры JPEG не нашел.

directman66: Подскажите пожалуйста, имеется ли такой функционал: сервис слушает открытий порт, если на него приходят какие-то запросы например от видеокамер по датчику движения, то запускает какое-то действие. Таким образом можно вместо датчика движения использовать имеющиеся видеокамеры, которые могут работать с Alarm Server (это почти все китайские onvif камеры, которые настраиваются через программу CMS) пример кода аларм сервера от китайцев http://www.snip2code.com/Snippet/486897 ... arm-Server gist.github.com/667bdrm/0aa3d0b474ad0bea2e32

Ko/|xo3HUk: Продолжаю исследования... с китайской (на всю голову) камерой не взлетело.. 1 кадр в ~8 секунд. Ссылку, чтобы выдушить у камеры JPEG не нашел. У меня камера с алиэкспресса - тоже китайская вся, с головы до линз.

dmw: На последних прошивках китайских камер, так называемых "с портом 34567" генерятся снапшоты JPG по ссылке: ?command=snap&channel=0

directman66: в копилку путей: снапшот камеры с чипом HI3516C + 1/2. 8 ''SONY IMX222 ?comm ... &channel=0

lanket: Подскажите пожалуйста, имеется ли такой функционал: сервис слушает открытий порт, если на него приходят какие-то запросы например от видеокамер по датчику движения, то запускает какое-то действие. Таким образом можно вместо датчика движения использовать имеющиеся видеокамеры, которые могут работать с Alarm Server (это почти все китайские onvif камеры, которые настраиваются через программу CMS) пример кода аларм сервера от китайцев http://www.snip2code.com/Snippet/486897 ... arm-Server gist.github.com/667bdrm/0aa3d0b474ad0bea2e32 Может быть костыльно, но выражу мысль. На апаче создаётся ещё виртуальный хост с нужным для вас портом для прослушивания. И php файлик туда с требуемым алгоритмом реагирования на любые данные пришедшие по этому порту. Просто мысли вслух. Отправлено с моего Redmi Note 3 через Tapatalk

Sandr: Подскажите пожалуйста, имеется ли такой функционал: сервис слушает открытий порт, если на него приходят какие-то запросы например от видеокамер по датчику движения, то запускает какое-то действие. Таким образом можно вместо датчика движения использовать имеющиеся видеокамеры, которые могут работать с Alarm Server (это почти все китайские onvif камеры, которые настраиваются через программу CMS) пример кода аларм сервера от китайцев http://www.snip2code.com/Snippet/486897 ... arm-Server gist.github.com/667bdrm/0aa3d0b474ad0bea2e32 Может быть костыльно, но выражу мысль. На апаче создаётся ещё виртуальный хост с нужным для вас портом для прослушивания. И php файлик туда с требуемым алгоритмом реагирования на любые данные пришедшие по этому порту. Просто мысли вслух. Отправлено с моего Redmi Note 3 через Tapatalk Который раз убеждаюсь - хороша мысль обычно приходит одновременно в несколько голов..... Пару дней ломаю голову на тему - Как слушать ONVIF алармы приходящие от камер На моем примере: Есть китайская ip камера у которой в настройках можно указать ip:port сервера для таких алармов 2017-02-03_20-27-45.png Где я задал IP компьютера с запущенным ONVIF Device manager`oм И вот выдержка из лога ODM 2017-01-31_17-57-532.jpg Остается дело за малым - написать скрипт слушающий нужный нам порт

Kod.Begemot: Сам думаю над этим.. спасибо за идею насчет сервера... Прописал в своей Beward как сервер - "10.10.0.222/megad2.php", в megad2.php включил debug, теперь в x-ray вижу "13:13:36 0.14472900 megad: /megad2.php?Alarm159 (10.10.0.62)"... Дело за малым, а так - работает! С камеры меньше всего ложных срабатываний, по сравнению с PIR датчиком так точно..

Sandr: Сам думаю над этим.. спасибо за идею насчет сервера... Прописал в своей Beward как сервер - "10.10.0.222/megad2.php", в megad2.php включил debug, теперь в x-ray вижу "13:13:36 0.14472900 megad: /megad2.php?Alarm159 (10.10.0.62)"... Дело за малым, а так - работает! С камеры меньше всего ложных срабатываний, по сравнению с PIR датчиком так точно.. Выложи свой megad2.php (туплю вечером не по детски:)

Kod.Begemot: У меня megad.php от класса (авторства Bagir), не от модуля. Я от модуля отказался так как он не гибок - не позволяет реализовать многие плюшки, вроде реакции на старт меги, обработки множественных нажатий и т.п.. Но - выкладываю: <?
/*
* Автор Казаков Сергей
* на форуме под ником Bagir
* благодарность dimitrystd на примеры
* ver 3.0
*/

 
include_once("./config.php");
 include_once(
"./lib/loader.php");
 
$session=new session("prj");
 
$db=new mysql(DB_HOST''DB_USERDB_PASSWORDDB_NAME); // connecting to database
 
include_once("./load_settings.php");
 if (!
headers_sent()) {
  
header ("HTTP/1.0: 200 OK\n");
  
header ('Content-Type: text/html; charset=utf-8');
 }

 
$reclog 0// Писать логи отладки ( 0-нет, 1-только крит, 2-все )

 // Открыть лог если нужно
 
if ($reclog) { $log getLogger(__FILE__); }

 
// Собрать все переданные параметры в строку для отправки в лог
 
if ($reclog == ) {
      
$str "";
      foreach (
$params as $key=>$value) {
           if (
$str != "") {$str.=", ";}
           
$str .= $key."=".$value;
      }
      
$log->trace('Got message from MegaDevice '.$str);
      
$str ""//свободна
 
}
DebMes("megad: ".$_SERVER['REQUEST_URI']. " (".$_SERVER['REMOTE_ADDR'].")");
 
$objects getObjectsByClass('MegaD'); 
 
$megaD null;
 
 
// В начале ищем объект Меги по mdid
 
if (isset($params['mdid'])) {
      foreach (
$objects as $obj) {
           if (
trim(getGlobal($obj['TITLE'].'.mdid')) == $params['mdid']) {
                
$megaD $obj;
                break;
           }
      }
 } else {
      if (
$reclog) { $log->error('MegaDevice has not transmitted mdid. Try to search on IP'); }
 }
 
 
// Если не нашли по mdid, ищем по IP
 
if (!isset($megaD)) {
      
// Получить IP адрес MegaD
      
$ip $_SERVER['REMOTE_ADDR'];
      if (isset(
$ip)) {
           foreach (
$objects as $obj) {
                if (
trim(getGlobal($obj['TITLE'].'.ipAddress')) == $ip) {
                     
$megaD $obj;
                     break;
                }
           }
      } else {
           if (
$reclog) { $log->error('Cannot determinate remote IP address of megadevice!'); }
      }
 }

 
// Запуск метода incomingMessage с передачей ему параметров,
 // или сообщение "Объект с нужным ID или IP не найден в классе MegaD" при неудаче.
 
if (isset($megaD)) {
      
callMethod($megaD['TITLE'].'.incomingMessage'$params);
 } else { 
      if (
$reclog) { $log->error('Cannot find object of MegaD class with mdid = '$params['mdid'].' or ip = '.$ip ); }
 }


 
$session->save();
 
$db->Disconnect(); // closing database connection
?>

Sandr: Сам думаю над этим.. спасибо за идею насчет сервера... Прописал в своей Beward как сервер - "10.10.0.222/megad2.php", в megad2.php включил debug, теперь в x-ray вижу "13:13:36 0.14472900 megad: /megad2.php?Alarm159 (10.10.0.62)"... Дело за малым, а так - работает! С камеры меньше всего ложных срабатываний, по сравнению с PIR датчиком так точно.. Действительно туплю :) Мои ipCam не позволяют прописывать в адресе сервера чтото кроме IP

Kod.Begemot: А шлюз - даёт?

Sandr: А шлюз - даёт? Даёт ? :oops: Шлюз какой?

Kod.Begemot: :lol: Млин, торможу.... шлюз... :D Конечно не шлюз а ПОРТ! :) Если порт даёт указать - можно и правда сделать отдельный хост... только надо отследить - кого он вызывает... чтобы под это подстроиться.. Хотя на мой взглад от этого толка не так много - так как эти запросы нужны системе для записи с детектированием движения, если мы их перенаправим - лишимся возможности писать родным софтом. Хотя можно писать и другими средствами - по команде Алисы, к примеру...

dmw: Не лишимся, если принять запись, скопривать её для своей обработки, а оригинал послать дальше на свой порт родного софта.

Sandr: Порт конечно можно прописать! Я попробовал чрез php поднять сокет и посмотреть что приходит.... <?php 
error_reporting
(E_ALL);

$port_file "onvif_log.log";

/* Позволяет скрипту ожидать соединения бесконечно. */
set_time_limit(0);

/* Включает скрытое очищение вывода так, что мы получаем данные
 * как только они появляются. */
ob_implicit_flush();

$address '192.168.1.155';
$port 8085;
$fp fopen($port_file'w'); 

if ((
$sock socket_create(AF_INETSOCK_STREAMSOL_TCP)) === false) {
    
$msg "Не удалось выполнить socket_create(): причина: " socket_strerror(socket_last_error()) . "\n";
    
fwrite($fp$msg); 
    exit;    
}

if (
socket_bind($sock$address$port) === false) {
    
$msg "Не удалось выполнить socket_bind(): причина: " socket_strerror(socket_last_error($sock)) . "\n";
    
fwrite($fp$msg); 
    exit;    
}

if (
socket_listen($sock5) === false) {
    
$msg "Не удалось выполнить socket_listen(): причина: " socket_strerror(socket_last_error($sock)) . "\n";
    
fwrite($fp$msg); 
    exit;    
}

    
$msg "Принимаем соединение.\n";
    
fwrite($fp$msg); 

do {
    if ((
$msgsock socket_accept($sock)) === false) {
        
$msg "Не удалось выполнить socket_accept(): причина: " socket_strerror(socket_last_error($sock)) . "\n";
        
fwrite($fp$msg); 
        break;
    }
    
$size=socket_recvfrom($socket,$input,65535,0,$ipaddress,$port);
    
$msg "Received [$input] ($size bytes) from IP $ipaddress Port $port\n";   //socket_getpeername($sock, $raddr, $rport); 
    //$msg = "Подключение от $raddr:$rport\n"; 
    
fwrite($fp$msg); 

    do {
        if (
false === ($buf socket_read($msgsock2048PHP_NORMAL_READ))) {
            
$msg "Не удалось выполнить socket_read(): причина: " socket_strerror(socket_last_error($msgsock)) . "\n";
            
fwrite($fp$msg); 
            break 
2;
        }
        if (!
$buf trim($buf)) {
            continue;
        }
        if (
$buf == 'выход') {
            break;
        }
        if (
$buf == 'выключение') {
            
socket_close($msgsock);
            break 
2;
        }
        
$msg "PHP: прислано '$buf'.\n";
        
$msg .= "$buf\n";
        
fwrite($fp$msg); 
    } while (
true);
    
socket_close($msgsock);
} while (
true);

socket_close($sock);
fclose($fp); 
?>
Telnet`ом подключается нормально, в лог переписка идет Но от камер пока ничего не пришло - чегото не додумал

directman66: Порт конечно можно прописать! Я попробовал чрез php поднять сокет и посмотреть что приходит.... что пишется в лог? Как открыть сокет на прослушивание порта? Где прописать этот код? Интересно так то, сам бы попробовал, но не хватает опыта.

directman66: Порт конечно можно прописать! Я попробовал чрез php поднять сокет и посмотреть что приходит.... ?> Telnet`ом подключается нормально, в лог переписка идет Но от камер пока ничего не пришло - чегото не додумал подскажите, как запустить сокет параллельно работающему серверу MD?

directman66: удалось взвести сокет, и кстати мои камеры присылают что-то типа такого.
Принимаем соединение
.
Received [] ( bytesfrom IP 192.168.1.35  Port 8086
PHP
прислано 'ÿ.............ä.Â...{ "Address" : "0x2001A8C0", "Channel" : 0, "D
escrip" : "", "Event" : "MotionDetect", "SerialID" : "6e54e47db919f87e", "StartT
ime" : "2017-02-20 21:39:07", "Status" : "Start", "Type" : "Alarm" }'
.
ÿ.............ä.Â...{ "Address" "0x2001A8C0""Channel" 0"Descrip" """
Event" 
"MotionDetect""SerialID" "6e54e47db919f87e""StartTime" "2017-02
-20 21:39:07"
"Status" "Start""Type" "Alarm" }
Не удалось выполнить socket_read(): причинаConnection reset by peer
т.е. я делаю вывод, что камеру вполне можно использовать как детектор движения

Serega66: MajorDomo пользуюсь недавно, не программист, просто уверенный пользователь ПК. Настраиваю MajorDomo читая форум. Использую PCI плату видео захвата Macro-Video NV9316AV, регистратор стоит на одном компьютере с MajorDomo на :8081 порту. Для удаленного просмотра камер есть веб клиент (IEClient.html с ActiveX файлом IEClient.ocx) Помогите вытащить код видео для просмотра камер через MajorDomo. ни один из рекомендуемых на форуме кодов не подходит к моей железке.

Serega66: Неужели никто не подключал многоканальные IP видеорегистраторы для аналоговых камер?

directman66: я недавно получил для своих айпи камер видеорегистратор, на мое идивление он не умеет писать прямой rtsp поток, а только камеры onvif. Вопрос то в чем.

Serega66: У меня IP регистратор на нем до 16 аналоговых камер. Могу я вывести картинку с камер в MajorDomo? какой для этого нужен код? у меня есть HTML фаил для удаленного доступа к камерам но он работает только на IE и как отдельный модуль. А я хочу вывести 2-3 камеры через умный дом.

andrey1509: У меня IP регистратор на нем до 16 аналоговых камер. Могу я вывести картинку с камер в MajorDomo? какой для этого нужен код? у меня есть HTML фаил для удаленного доступа к камерам но он работает только на IE и как отдельный модуль. А я хочу вывести 2-3 камеры через умный дом. На чем стоит MajorDomo? винда или динукс? У меня linux + motion , вытаскивается элементарно.

nick7zmail: Ребят...помогите с камерой... Приобрел на али оную НоуНэйм так сказать...думал уж с такой прогой как webcam7 глюков не возникнет....попытался значит добавить - хрен...он там запрашивает модель... Судя по описанию на али - производитель Grenseure, моделька LTIDS-62BDF...в списке моделей, как вы понимаете - ничего похожего не нашел. Как я понял - по модельке он выбирает способ вытягивания картинки....У кого нить есть опыт с подобными камерами? Какую выбрать модель, чтоб подтянулось изображение? Или какие способы ещё попробовать? PS: Вот ссылочка (сомневаюсь что что-то она даст...может просто кто-то свою камеру по виду узнает))) https://ru.aliexpress.com/item/Mini-IP- ... 0.0.TSxtTJ, ПО Линия IP пробовал, с ним что-то не задалось...не находит сервер, не может подключится, а соответственно и навесить камеры...Ещё пару прог пробовал - пока толку ноль...веб интерфейс работает с плагином для IE только...на телефоне родным приложением (xmeye) автопоиском - подцепилась.

Serega66: и MD и DVR стоят на одном компьютере под Win7

nick7zmail: и MD и DVR стоят на одном компьютере под Win7 Это вопрос или утверждение?)) Если утверждение - то для DVR какие проги юзаете? UPD: Сори, не сразу понял что не мне ответ)))...но вопрос мой все же интересует!

Serega66: и MD и DVR стоят на одном компьютере под Win7 Это вопрос или утверждение?)) Если утверждение - то для DVR какие проги юзаете? UPD: Сори, не сразу понял что не мне ответ)))...но вопрос мой все же интересует! Посмотрите вот здесь, http://www.macro-video.com/xiazai.php я юзаю их, и у них есть более древняя версия всего один html файлик если подойдут те могу куда нибудь закинуть старую прогу но я какраз и спрашивал здесь как из этой проги в МД взять видео

nick7zmail: Ребят...помогите с камерой плиз ...точнее сказать с прогой WebCam7...я думал я её понимаю...а нифига)) Короче rtsp на 2х компах в vlc открывается отлично. В webcam7 на 1 компе всё ок...на втором (который как раз сервер) - не хочет добавляться зараза...есть идеи?

nick7zmail: Общий вопрос к форумчанам.... Кто какие проги юзает для винды для видеонаблюдения и записи? Больше интересует - запись по движению (не постоянная). Хотел WebCam7 подключить...но чет не хочет хавать мою камеру =( ищу альтернативу.

C_3AXAPOB: ispy попробуйте Отправлено с моего iPhone используя Tapatalk

nick7zmail: ispy попробуйте Отправлено с моего iPhone используя Tapatalk Кажется то что надо =) Ещё и опен сорс. Красота!

DAP: смонтировал 4 камеры hikvision и регистратор, как оказалось регистратор не умеет отдавать поток в mjpeg, а камеры не могут отдавать более одного mjpeg потока, есть какой-то способ увеличения количества потоков, чтобы получать картинку на несколько устройств одновременно?

Bagir: Кто какие проги юзает для винды для видеонаблюдения и записи? Давным давно, когда Алиса ещё не поселилась у меня, я установил систему Ewclid. Это комплексное решение из платы видеоввода, платы внешних датчиков и реле. Есть прога монитор для камер и планировщих для создания логики каналов ввода-вывода. Исходный код не открыт, и поэтому моё участие ограничилось хотелками и тестами предрелизных версий. Но проект скоропостижно скончался. Команда расформирована и дальнейшие разработки прекращены. Сейчас Ewclid до сих пор тащи мои 4 аналоговые камеры. Очень хочется отказаться полностью, но к этой плате видеоввода у меня не получается ничем подключиться. Axxon Next не видит эти камеры. Но зато Axxon подключился к двум другим цифровым камерам. События детектора движения передаю Алисе с помощью средства запуска приложений в Axxon. Работает довольно стабильно (за исключением web сервера), но зоопарк из разных программ мне не нравится. Недавно попробовал ispy. И о чудо, он смог подключиться к моим аналоговым камерам платы Ewclid. Но картинку приходится ограничивать частотой кадров. Иначе 4 камеры очень сильно грузят процессор. А вот к ip камерам я так ispy подключить и не смог. Так что пока дальше дружиться с ним для меня смысла нет. Axxon у меня пока что остается единственным рабочим вариантом. Но тут тоже есть грабли. Сижу на версии AxxonNext_3_6_2_133. Подключается в двум моим ip камерам стабильно. Следующие версии AxxonNext_3_6_3_360 и AxxonNext_3_6_4_466 Больше не могут подключиться к одной ip камере. А у AxxonNext_3_6_2_133 периодически падает встроенный web сервер. Перезапустить его просто, но автоматически это сделать никак. Как итог: Нужна программа видео наблюдения, или может быть отдельное железо, которое без труда подключится к камерам с rtsp потоком. Возьмет на себя все работы по ведению видео архива, и предоставит свой web сервер с mjpeg видео потоком, чтобы можно было показывать на терминалах. Если бы у AxxonNext не ложился web сервер, то цены бы ему не было. Но подобные баги могут быть не у всех. Так что пробуйте. Третья версия AxxonNext бесплатная.

denis: Axxon умеет подключаться к rtsp-потоку, у меня он без проблем подхватил китайский NVR Hunter https://doc.axxonsoft.com/confluence/pages/viewpage.action?pageId=115607277 вот кто бы подсказал как формируется http запрос к виртуальному датчику? перечитал web-api, но пока ничего не смог сделать с этим запросом. не срабатывает виртуальный датчик. https://doc.axxonsoft.com/confluence/pages/viewpage.action?pageId=127668253 тогда можно было управлять Axxon из МД - есть сигнал, формируем http запрос - начинаем запись, делаем снимок и другое. Axxon 4.0 до 4-х камер и архив вроде до 1 Тб тоже бесплатен. У меня работает 3 камеры бесплатно.

nick7zmail: В описании говорится Ознакомительная версия работает с 8:00 до 18:00 1 месяц работы после первой установки любое количество камер, серверов и удаленных рабочих мест (УРМ) без ограничения размера архивов это стремно что с 8 до 18. А rtsp и ispy у меня отлично подхватил.

denis: это "ознакомительная версия" 1 месяц работы после первой установки любое количество камер, серверов и удаленных рабочих мест (УРМ) без ограничения размера архивов на 4 камеры это "free-версия" с ограничением по размеру архива и количество камер, но работает круглосуточно.

nick7zmail: Эт где такая? Ткните носом несведущего человека плс) http://www.itv.ru/products/axxon_next/price.php

denis: Эт где такая? Ткните носом несведущего человека плс) http://www.itv.ru/products/axxon_next/price.php на сайте действительно упоминания об этом нет) вот так вот) но она существует, при активации нужно будет выбрать тип лицензии "Free Version" и все получится. на этой странице даже семинары проводят "Активация бесплатной лицензии Free version" http://www.itv.ru/support/training/seminar-axxon-next.php или пошагово смотрим раздел 3 http://www.itv.ru/download/files/AxxonNextActivationGuide_ru.pdf только сейчас не 16 камер, а 4. так, что ничего невозможного нет, в мануалах по Axxon много чего написано, но нужно очень много времени на прочтение)

nick7zmail: хм....над попробовать качнуть на досуге =).

Bagir: И всё бы ничего, но 4 версия требует новый NET, а он уже только минимум под Win7. Так что на XP мне не удалось пощупать это творение. rtsp поток, да, подхватывает, но не со всех камер. Например с моего китайского чуда, которое к слову уже пережило все ожидаемые сроки и дает отличную картинку, rtsp поток не берется. Ссыль есть, VLC и CMS без проблем цепляются не задавая никаких вопросов. А вот Axxon не хочет, как только не изгалялся. Иногда получается добиться картинки, но одновременно с надписью что сигнала нет. А в логах камеры идут постоянные авторизации каждые 10 секунд. Устойчиво работает только по ONVIF. И при чем только не выше AxxonNext_3_6_2_133 версии. На Axxon форуме полный штиль. Техподдержка сказала что с халявщиками не работаем. А покупать кота в мешке, заведомо зная, что лезешь на вилы, я не хочу.

denis: На Axxon форуме полный штиль. Техподдержка сказала что с халявщиками не работаем. А покупать кота в мешке, заведомо зная, что лезешь на вилы, я не хочу. С этим согласен, с форумом там беда( с техподдержкой тоже. Сейчас задал им вопрос про http-запросы - жду ответа. Но может продукт "линия" лучше, но я его не щупал. Ispy и еще какой-то мне совсем не понравились, а Axxon как-то более расширенные настройки и возможности. Тут на форуме у кого-то красиво встроились видео на сцены на "линии".

Bagir: Да, действительно, несмотря на трудности Axxon, его весьма многие используют. Так то и я был бы полностью доволен, если бы не падал его web сервер. Или была возможность его перезапускать не руками. "Линию" я тоже не смотрел. Может быть кто то отпишется если есть опыт применения.

Bagir: Если терминалов, которые получают картинку много, то я бы крайне не советовал тянуть её непосредственно с камеры. Железо камеры как правило не сможет устойчиво держать несколько подключений. В идеале должно быть так: Камеры отдают rtsp поток хорошего качества на видео регистратор. Регистратор это прога типа Axxon или отдельная железка. Главное, чтобы регистратор был надежен, удобен в работе с видео архивом, и умел отдавать mjpeg поток для Алисы. В моем случае Axxon хорош всем, кроме надежности встроенного web сервера для mjpeg потока. Може быть у других будет работать без сбоев. Кстати, на счет четвертой версии. На сайте написали о временном ограничении работы. На самом деле при установке можно выбрать либо временное ограничение, либо только 4 камеры и только один гиг архива. Ставится 4 версия похоже только на Windows 7+ в виду требования новой версии Net.

denis: да вот в соседней теме про "линию" http://majordomo.smartliving.ru/forum/viewtopic.php?f=8&t=185&p=44695&hilit=BBB8BDB88F#p44695

nick7zmail: Я пробовал линию IP завести...у меня она чет не захотела цепляться к собственному же локалхост-серверу...не понял в чем прикол, но дальше мучить не стал...тем более бесплатная версия без возможности записи.

Bagir: Эта "линия" похоже интересная штучка. Надо пробовать. Что из моего борохла сможет подцепить, и на сколько стабильно будет работать web сервер. Если есть бесплатная версия без записи видео, то это отличный тест. Будем пробовать. Axxon неплох, но не все мои камеры поднял. И встроенный web сервер глючит.

Jager: Эта "линия" похоже интересная штучка. Надо пробовать. Что из моего борохла сможет подцепить, и на сколько стабильно будет работать web сервер. Если есть бесплатная версия без записи видео, то это отличный тест. Будем пробовать. Axxon неплох, но не все мои камеры поднял. И встроенный web сервер глючит. У меня на одном объекте стоит "Линия" с лицензией на 16 камер вот уже 6 лет. Работает очень стабильно, пока не нашлось камеры которую она не увидела.

Bagir: Вдохновляюще звучит. А то я уже намучался с Axxon если честно. Линия на WinXP ставится? Просто новый Axxon4 похоже только на Win7+ ввиду требования NET новой версии.

Jager: Вдохновляюще звучит. А то я уже намучался с Axxon если честно. Линия на WinXP ставится? Просто новый Axxon4 похоже только на Win7+ ввиду требования NET новой версии. Да, ставится под XP. Сейчас посмотрел сайт, заявлена поддержка 3775 моделей камер :)

Bagir: Я уже не раз убедился, что IP камеры ещё та зараза. Может как отлично работать, так и глючить без видимой причины. Взять даже Axxon. Отлично подключается к моим камерам, у которых заявлен ONVIF. Ставишь обновление Axxon, и после него как не изгаляйся, а к одной из камер больше не подключишься. Посмотрим что сможет "Линия" У меня для неё парочка сюрпризов. Аналоговые камеры на ewclid плате видеоввода, и несколько китайских ONVIF камер.

denis: Да, "линия" вроде неплохой продукт, но у нее нет "виртуальных датчиков" как это называется в axxon, а значит нельзя активировать событие, начать запись по внешнему запросу к серверу "линии". Мне также ответила техподдержка и темы на форуме "линии" это подтверждают http://www.devline.ru/forum/index.php?showtopic=1778&p=15229 Поэтому буду пока разбираться с axxon, он вроде такое умеет и это просто будет чудесно - хочешь по срабатыванию датчика, хочешь по кнопке звонка, по повышению температуры котла, протечке)), вообщем по любому событию в МДМ можно настраивать реакцию сервера axxon.

Bagir: Форум у Линии очень даже живой. Так что есть надежда что добавят пожелания по расширению списка условий. Действительно ввод-вывод событий это очень важно. Честно говоря, странно что в таком серьёзном ПО этого до сих пор нет. Когда я начал заниматься этой темой, то ввод-вывод сразу же понадобился. Долгие переписки с разработчиками уже мёртвой системой ewclid привели к успеху. Они это добавили. Жить стало проще и веселей. С тех пор прошло много лет. Сменилось много разного ПО. А вопросы всё те же самые.

Bagir: Нашлись две одинаковые темы. Эта и Подключение IP-камер Я думаю что надо их объединить.

Bagir: Поставил демку Линии. Она без труда подключилась к двум IP камерам в локалке. Даже микрофоны в камерах увидела. Управление поворотом камеры только не получилось сделать. Но я и не рассчитывал. Попробовал вставить видео. Есть вот такой вариант и он работает. Но он использует http://www.adobe.com/go/getflashplayer Кто знает ещё варианты? Например через <img src=...

Jager: Попробовал вставить видео. Есть вот такой вариант и он работает. Но он использует http://www.adobe.com/go/getflashplayer Кто знает ещё варианты? Например через <img src=... Чем модуль Onvif не угодил? У меня все камеры увидел, теперь прекрасно вставляется и в сцены и в домашние страницы как видео поток так и скриншоты.

Bagir: А сколько сеансов откроется к камере, если например у меня будет пять терминалов? Да и всё равно никуда не уйти без программы для видео наблюдения. Нужно ещё и архив писать.

Jager: Да и всё равно никуда не уйти без программы для видео наблюдения. Нужно ещё и архив писать. Зачем забивать ресурсы компа видеонаблюдением когда есть масса бюджетных специализированных решений, у меня такой вариант трудится без всяких проблем.

Bagir: А почему бы и нет. Комп сильный, и без труда справляется с этими задачами. Как итог: "Линия" мне понравилась. Выглядит красиво, работает шустро. За вечер тестов никакие баги не выскочили. Видео с web сервера тоже можно забрать. Работает только через Flash Player. И вот только что нашел вариант как получить mjpg http://admin:@<IP>:9786/cameras/0/video

sergejey: А поделитесь как вы вообще с камерами работаете? Мой вариант -- храню серии снимков по событиям, архив разбит по дням/месяцам/годам. Снимки так же использую в уведомлениях о событиях (например, открылись ворота -- пришло уведомление и снимок в телеграм). Видео-архив не записываю и не храню. Живое видео смотрю крайне редко (даже не вспомню, когда в последний раз надо было). Ещё какие-нибудь варианты?

nick7zmail: Лично я сейчас - сохраняю по движению куски видео... Был бы частный дом - скорее всего круглосуточное наблюдение бы сделал, но со специализированной железякой с хардом...а в МД-чисто картинки, или интерфейс управления видеорегом...

Jager: А поделитесь как вы вообще с камерами работаете? У меня отдельный регистратор и 8 IP камер, запись со всех 24/7, глубина архива 10 дней. "Живое" видео выведено на ТВ через HDMI и так же доступно в локальной сети, но по факту функция не используется. Регистратор отдает основной и субпоток через rtsp, скриншоты использую для уведомления в телеграмм по событиям средствами МДМ.

sergejey: А поделитесь как вы вообще с камерами работаете? У меня отдельный регистратор и 8 IP камер, запись со всех 24/7, глубина архива 10 дней. "Живое" видео выведено на ТВ через HDMI и так же доступно в локальной сети, но по факту функция не используется. Регистратор отдает основной и субпоток через rtsp, скриншоты использую для уведомления в телеграмм по событиям средствами МДМ. Какой объём архив занимает в таком режиме?

Jager: Какой объём архив занимает в таком режиме? Объем само собой зависит от массы факторов, смотря какие камеры, какая толщина потока выбрана для записи, даже время суток влияет, т.к. VBR подстраивается. В моем случае 6 камер 1,3Мп и 2 камеры на 3 Мп., диск 2 Тб.

Bagir: Частный дом. 1 IP и 4 аналоговых камер, которые были смонтированы ещё в стародавние времена. + 3 IP камеры с подконтрольных объектов. Две из них как раз сейчас отвалились. Надо менять. Хулиганы какие то... Для аналоговых есть видео регистратор, который стримит rtsp потоки и еще пишет в цикле на небольшой хард. IP камеры и стрим получает сервер, на котором живет Алиса. Сейчас перешёл с Axxon на "Линия". C web сервера Линии терминалы получают поток в mjpeg, когда что то где то шевелится. При некоторых событиях, например кнопка звонка, отправляется фотка с камеры на мыло. Жуть как хочется реализовать распознавание лица на фото по событию кнопки звонка, чтобы открывать входную дверь, когда дом не на охране. Но пока что я не вижу доступных вариантов.

Jager: Жуть как хочется реализовать распознавание лица на фото по событию кнопки звонка, чтобы открывать входную дверь, когда дом не на охране. Но пока что я не вижу доступных вариантов. У меня вызов с домофона приходит и на мобильный, с него же могу открыть калитку удаленно. Реальнее, проще и оперативнее чем распознавание лица по фото.

lanket: Жуть как хочется реализовать распознавание лица на фото по событию кнопки звонка, чтобы открывать входную дверь, когда дом не на охране. Но пока что я не вижу доступных вариантов. Кто-то недавно здесь делился находкой opensource проекта avr с детектором движения, распознованим номеров машин и РАСПОЗНОВАНИЕМ ЛИЦ. И еще всякого функционала... http://www.ispyconnect.com/plugins.aspx Отправлено с моего Redmi Note 3 через Tapatalk

karo: kak kluchit dvr na 4 kamer na majordomo Отправлено с моего m1 note через Tapatalk

Bagir: У меня вызов с домофона приходит и на мобильный, с него же могу открыть калитку удаленно.Да, такая штучка у меня тоже давно сделана. Спору нет, очень удобно. Но всё же хочется чтобы система узнавала и по фото тоже. Кто-то недавно здесь делился находкой opensource проекта avr с детектором движения, распознованим номеров машин и РАСПОЗНОВАНИЕМ ЛИЦ.Спасибо посмотрел, интересно. Стоит попробовать. Конечно хотелось бы чтоб основная программа этим занималась. Раньше на Axxon сидел, сейчас Линия. Остается только надеяться, что такой функционал появится в будущем. А пока попробую в локалке на другой машине поднять iSpy, скормить ему видеопоток с камеры и поиграться. kak kluchit dvr na 4 kamer na majordomoЧто тут ответить, вопрос очень общий. Если просто хочется видеть видео с регистратора на странице majordomo, то нужно найти в инструкции этого регистратора ссылку по которой можно получить с него mjpeg поток. Этот поток могут показывать все браузеры без установки дополнительных компонентов. Если регистратор не умеет выдавать mjpeg, то потребуется дополнительная программа, которая будет этим заниматься. Можно использовать ПО Линия, Axxon, или модуль из маркета дополнений.

Cracken090: Уважаемые форумчане! подскажите как исправить следующую проблему: зацепил IP камеру, вывел на сцену, но долго соображает(вместо онлайн видео - слайдшоу)

C_3AXAPOB: так и должно быть

Cracken090: то есть со слайд шоу нет смысла бороться? Это никак не исправить?

Vovix: то есть со слайд шоу нет смысла бороться? Это никак не исправить? при использовании модуля "thumb" - только слайды!

Cracken090: Vovix а какой модуль лучше использовать чтобы не было слайдов??? пусть будет не в самом лучшем качестве, но видео. камера - OMNY 100 PRO

sergejey: то есть со слайд шоу нет смысла бороться? Это никак не исправить? Модуль thumb предназначен для вытягивания картинок из потока, но не для трансляции потока. Чтобы в интерфейсе видеть поток, надо что б он был в формате MJPEG -- некоторые камеры предоставляют ссылку на такой поток (далеко не все), для других надо использовать транскодер, который "на лету" сможет перекодировать поток в формат MJPEG.

Cracken090: Сергей здравствуйте! а можно подробнее о транскодерах и варинтах реализации таких алгоритмов? (ссылку, если есть.)

Cracken090: по оборудованию Arduino Mega + Nextion + Majordomo (Ubuntu Server 16.04 LTS)

landgraf: Никак не могу подключить wi-fi камеру Sricam SP009A. https://ru.aliexpress.com/item/Original ... 0.0.5r1oyV В ONVIF Device Manager и VLC транслирует поток по этому адресу: rtsp://192.168.0.18:554/onvif1 Но в МД никак не могу подцепить. Axxon видит его как частично поддерживаемое устройство (настраиваемое в ручную), но я не смог настроить даже вывод потока. Может кто уже сталкивался и есть более менее годная инструкция?

ZhenyaRUS39: Т.е. в MD сейчас по rtsp подключить нельзя?

Jager: Т.е. в MD сейчас по rtsp подключить нельзя? Можно.

olehs: Никак не могу подключить wi-fi камеру Sricam SP009A. https://ru.aliexpress.com/item/Original ... 0.0.5r1oyV В ONVIF Device Manager и VLC транслирует поток по этому адресу: rtsp://192.168.0.18:554/onvif1 Но в МД никак не могу подцепить. Axxon видит его как частично поддерживаемое устройство (настраиваемое в ручную), но я не смог настроить даже вывод потока. Может кто уже сталкивался и есть более менее годная инструкция? в файле htdocs/modules/thumb/thumb.php нужно в двух местах из командной строки вызова ffmpeg удалить -rtsp_transport tcp

bezzeb: то есть со слайд шоу нет смысла бороться? Это никак не исправить? Модуль thumb предназначен для вытягивания картинок из потока, но не для трансляции потока. Чтобы в интерфейсе видеть поток, надо что б он был в формате MJPEG -- некоторые камеры предоставляют ссылку на такой поток (далеко не все), для других надо использовать транскодер, который "на лету" сможет перекодировать поток в формат MJPEG. а только MJPEG или H.264 тоже? а то почти все сейчас на H.264 и хотелось бы видео,а не слайдшоу

sergejey: В вебе H.264 нельзя посмотреть стандартными средствами. Нужны либо какие-то плагины (java/activex и т.п.), встроенные в браузер кодеки его не покажут. Ищите отдельный софт для перекодировки потока на лету и используйте уже выходной поток для встраивания в интерфейс.

denis: После обновления гугл-хрома перестало показываться 'живое' видео (поток mjpeg) от сервера axxon next на сценах и домашних страницах вставленное через тег <img src= > При установке более ранних версий хрома все показыаает замечательно. Может кто-нибудь знает рецепт лечения? В других браузерах тоже ничего не 'показывает'.

aleksnet07: Камера Misecu (https://ru.aliexpress.com/item/MISECU-2 ... 0.0.Q2Pxuy) В браузере IE камера показывает, ip 192.168.0.50, логин admin без пароля. Код страницы прилагаю. В сцене создал элемент видеонаблюдение, написал код <img src="http://192.168.1.50:80/videofeed" width="150"> но там ничего не показывает. какой код написать подскажите пожалуйста

aleksnet07: <object classid="CLSID:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" id="mo" width="420" height="315" codebase="http://www.apple.com/qtactivex/qtplugin.cab"> <param name="src" value="back.GIF"> <param name="allowFullScreen" value="true"> <param name="qtsrc" value="rtsp://192.168.0.50:554/user=admin&password=&channel=0&stream=0.sdp?real_stream--rtp-caching=100"> <param name="autoplay" value="true"> <param name="autohref" value="True"> <param name="target" value="myself "> <param name="loop" value="false"> <param name="wMode" value="transparent"> <param name="controller" value="false"> <param name="scale" value="tofit"> <embed src="back.GIF" name="movie1" qtsrc="rtsp://192.168.0.50:554/user=admin&password=&channel=0&stream=0.sdp?real_stream--rtp-caching=100" controller="false" width="420" height="315" loop="false" scale="tofit" wmode="Transparent" autoplay="true" kioskmode="true" enablejavasript="true" target="Myself" allowfullscreen="true" bgcolor="black" plugin="quicktimeplugin" type="video/quicktime" pluginspage="http://www.apple.com/quicktime/download/"> </object> вот так заработало. Спасибо Vovix. Кому интересто смотрите 4-ю страницу темы.

newload: Никак не могу подключить wi-fi камеру Sricam SP009A. https://ru.aliexpress.com/item/Original ... 0.0.5r1oyV В ONVIF Device Manager и VLC транслирует поток по этому адресу: rtsp://192.168.0.18:554/onvif1 Но в МД никак не могу подцепить. Axxon видит его как частично поддерживаемое устройство (настраиваемое в ручную), но я не смог настроить даже вывод потока. Может кто уже сталкивался и есть более менее годная инструкция? в файле htdocs/modules/thumb/thumb.php нужно в двух местах из командной строки вызова ffmpeg удалить -rtsp_transport tcp На малинке не хочет так работать. Пишет "Не удалось открыть страницу", а под виндой завелось только в Домашних страницах. При добавлении в сцены хром выдает страницу "Опаньки"

[ Обсудить на форуме ]

 

MajorDomo

Информация

Проекты

Партнёры

edit SideBar

 
 
 

 

Blix theme adapted by David Gilbert, powered by PmWiki