树莓派使用 USB 摄像头做网络监控

时间:2021-03-14 13:30:29


树莓派使用 USB 摄像头做网络监控


    在树莓派上有几种视频监控软件 
        fswebcam 
        motion 
        mjpg-streamer

    上面两种都相对简单,唯独mjpg-streamer整了半天。所以记录下安装过程

1.将USB摄像头插上,查看是否找到设备,输入:

root@raspberrypi:/# lsusb
其中Logitech就是摄像头,说明找到usb设备了,然后再看看设备驱动是否正常:

root@raspberrypi:/# ls /dev/vid*

/dev/video0

看到video0就对啦,如果找不到可能驱动不对,或者工作不正常,看看供电,装装驱动试试


2. 下载mjpeg-stream到树莓派

wget https://github.com/jacksonliam/mjpg-streamer/archive/master.zip


3. 安装辅助工具

在树莓派上执行:

sudo apt-get install subversion

sudo apt-get install libv4l-dev

sudo apt-get install libjpeg8-dev

# sudo apt-get install cmake


4. 解压master.zip

在树莓派上执行:

unzip master.zip


5. 编译安装 

# vim mjpg-streamer-experimental/plugins/input_uvc/input_uvc.c

修改为: int width = 640, height = 480, fps = 30, format =V4L2_PIX_FMT_YUYV


  # 
cd mjpg-streamer/mjpg-streamer-experimental

  #  make USE_LIBV4L2=true clean all 

  # cp    *.so    /usr/lib/


6. 编写 脚本 stream.h 并修改权限

脚本内容如下

  1. #!/bin/sh  
  2.   
  3. STREAMER=mjpg_streamer  
  4. DEVICE=/dev/video0  
  5. RESOLUTION=320x240  
  6. FRAMERATE=30  
  7. HTTP_PORT=8080  
  8.   
  9. PLUGINPATH=/usr/lib  
  10.   
  11. #./$STREAMER -i "$PLUGINPATH/input_uvc.so -n -d $DEVICE -r $RESOLUTION -f $FRAMERATE" -o "$PLUGINPATH/output_http.so -n -p $HTTP_PORT -w ./www" &  
  12. ./$STREAMER -i "$PLUGINPATH/input_uvc.so -n -d $DEVICE -r $RESOLUTION -f $FRAMERATE -y YUYV" -o "$PLUGINPATH/output_http.so -n -p $HTTP_PORT -w ./www" &  
树莓派使用 USB 摄像头做网络监控

 

# sudo chmod 777 stream.sh

# sudo ./stream.sh


7. 在其它电脑是打开浏览器,输入 192.168.1.111:8080,即可打开访问摄像头的网址

树莓派使用 USB 摄像头做网络监控


8. 工程位于 /home/pi/mjpg-streamer-master/mjpg-streamer-experimental下。直接执行 mjpg_streamer即可启动服务