Подключение потока RTSP сжатого H.264 к регистратору движений motion
Invite pending
Все началось с того, что было замечено странное поведение уровня дизтоплива в цистерне. Первая мысль, естественно: «Поймаю ...!!!». Ну решение принято, вызов принят! В этот же день распотрошилась веб-камера, извлекся ИК-фильтр, в радиомагазине куплена жменя ИК-диодов для пультов, неттоп, ubuntu, motion, модем, SSH канал. Охота началась. Ну и на будущее: на Али заказано пара ИП камер.
Итак, приехали камеры, пытаюсь разобраться как настроить. В комплекте есть ПО под Windows. Но motion больше симпатизирует. Погуглив, выяснил, что можно подключится к потоку rtsp://192.168.10.1:554/user=admin&password=&channel=1&stream=0.sdp? Да, но motion не понимает такие потоки. Только в виде jpg-последовательностей или v4l девайсов. Но решение таки есть:
1. Ставим v4l2loopback. Это модуль виртуальной вебкамеры. Правда, его придется собрать из исходников, под текущее ядро.
Как собирать описывать не буду, там все стандартно. После запуска драйвера в папке /dev появится дополнительное видеоустройство, например video1, если есть уже обычная вебкамера.
2. Теперь нужно подключить к виртуальной «вебке» нужный нам поток. Сделать это можно с помощью Gstreamer:
Вуаля, теперь у нас в системе как бы локальная вебкамера, которая транслирует удаленную. Теперь ее можно использовать в motion, ну и где угодно в принципе.
Итак, приехали камеры, пытаюсь разобраться как настроить. В комплекте есть ПО под Windows. Но motion больше симпатизирует. Погуглив, выяснил, что можно подключится к потоку rtsp://192.168.10.1:554/user=admin&password=&channel=1&stream=0.sdp? Да, но motion не понимает такие потоки. Только в виде jpg-последовательностей или v4l девайсов. Но решение таки есть:
1. Ставим v4l2loopback. Это модуль виртуальной вебкамеры. Правда, его придется собрать из исходников, под текущее ядро.
sudo apt-get install v4l2loopback-source
Как собирать описывать не буду, там все стандартно. После запуска драйвера в папке /dev появится дополнительное видеоустройство, например video1, если есть уже обычная вебкамера.
2. Теперь нужно подключить к виртуальной «вебке» нужный нам поток. Сделать это можно с помощью Gstreamer:
gst-launch-1.0 -v rtspsrc location="rtsp://192.168.10.1:554/user=admin&password=&channel=1&stream=0.sdp?" ! decobin ! videoconvert ! v4l2sink device=/dev/video1
Вуаля, теперь у нас в системе как бы локальная вебкамера, которая транслирует удаленную. Теперь ее можно использовать в motion, ну и где угодно в принципе.