Raspberry Pi + USB Web-камера. Потоковое видео (стрим).

“Малинка” Raspberry Pi способна очень хорошо работать с достаточно большим количеством USB веб-камер.
Сегодня мы рассмотрим как можно подключить одну из таких камер к нашей Raspberry Pi и настроим стрим видео, который можно будет просматривать через локальную сеть либо интернет. Для этого нам необходимо иметь:

1. Raspberry Pi с установленной ОС Raspbian Whezzy и включенной в сеть с выходом в интернет.
2. Собственно USB веб-камера.
3. IP адрес нашей Raspberry Pi (можно посмотреть с помощью команды ifconfig или в настройках скажем роутера)

raspberry_pi_usb_webcam
Рисунок 1 – Веб-камера Logitech подключена к Raspberry Pi

(adsbygoogle = window.adsbygoogle || []).push({});

Работаем с Raspberry Pi в командной строке (кто через терминал графического интерфейса, кто удаленно по ssh). Я подключаюсь к малинке с Windows, поэтому использую putty.

raspberry_pi_login

raspberry_pi_login1

Войдя, выполняем команды:

sudo apt-get update && sudo apt-get upgrade

raspberry_pi_apt-get_update

Для того, чтобы мы могли работать с нашей веб-камерой, нам необходимо установить из репозитория программное обеспечение motion. Делается это с помощью команды:

sudo apt-get install motion

raspberry_pi_apt-get_install

После инсталляции программы motion, необходимо осуществить ее настройку. Открываем файл motion.conf с помощью команды:

sudo nano /etc/motion/motion.conf

Этот файл является достаточно большим, но нас интересуют только две строчки:

DAEMON = OFF (меняем на ON)
Webcam_localhost = ON (меняем на OFF)

raspberry_pi_conf

Сохраняем изменения (CTRL + O и клавиша Enter) и закрываем файл (CTRL + X).

Далее вводим:

sudo nano /etc/default/motion

И в нем:

start_motion_daemon = no (меняем на yes)

raspberry_pi_deamon

Запустить трансляцию видео:

sudo service motion start

Остановить трансляцию:

sudo service motion stop

Для того, чтобы стрим транслировался автоматически после выключения или перезагрузки малинки набираем:

sudo nano /etc/rc.local

і в конце над строкой exit 0 добавляем motion. Примерно вид файла rc.local такой:


#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

# Print the IP address
_IP=$(hostname -I) || true
if [ "$_IP" ]; then
printf "My IP address is %s\n" "$_IP"
fi

# Start motion
motion

exit 0

Теперь наш стрим доступен по локальной сети по адресу http://IP_адрес_вашей_raspberri_pi:8081.
:8081 – это порт для трансляции видео.

Если необходимо транслировать видео через интернет, предварительно надо открыть данный порт для внутреннего IP адреса вашей Raspbery Pi на роутере. И обращаться к стриму из интернета через http://IP_адрес_вашего_роутера:8081.

raspberry_pi_stream


5 комментариев

  1. Спасибо, хороший гайд, но у меня почему-то не заработало, не грузится страница ( хотя веб сервер вроде встал, потому что когда просто ввожу ИП своей RPi то вываливается страница с фразой типа “Its Work”, а вот когда добавляю порт, то все, страница недоступна, и кстати тоже самое и с mjpg-streamer, в чем может быть проблема?((

    1. Поздний ответ, но все же – вы до этого Apache не пробовали поднимать и прописывать на автозагрузку? Вот скорее всего он у вас и ругается

  2. В догонку к прошлой статье, коротко напишу о том, как на платформе Raspberry PI транслировать изображение с обычной USB-камеры в сеть.

  3. Спасибо!!! Все заработало!!! Сделал по инструкции, только немного все поменялось в конфиге.
    DAEMON = OFF (меняем на ON) – так и осталось
    Webcam_localhost = ON (меняем на OFF) ->стало -> stream_localhost on
    В конце нужно перезагрузить малину -> sudo reboot
    Стартует стрим с малиной без доп настроек
    На малине стоит линукс образ под majordomo, без графической оболочки. Апач по хоже поднят уже по умолчанию.

Оставить ответ

Обязательные поля помечены*

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.