Pull to refresh

Подключение потока RTSP сжатого H.264 к регистратору движений motion

Все началось с того, что было замечено странное поведение уровня дизтоплива в цистерне. Первая мысль, естественно: «Поймаю ...!!!». Ну решение принято, вызов принят! В этот же день распотрошилась веб-камера, извлекся ИК-фильтр, в радиомагазине куплена жменя ИК-диодов для пультов, неттоп, ubuntu, motion, модем, SSH канал. Охота началась. Ну и на будущее: на Али заказано пара ИП камер.

Итак, приехали камеры, пытаюсь разобраться как настроить. В комплекте есть ПО под 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, ну и где угодно в принципе.
Tags:
Hubs:
You can’t comment this publication because its author is not yet a full member of the community. You will be able to contact the author only after he or she has been invited by someone in the community. Until then, author’s username will be hidden by an alias.