香橙派Zero2 V1.5使用摄像头
详细可参考 OrangePi_Zero2_H616_用户手册_v4.0.pdf 中的 3.13.6 USB 摄像头测试章节。
操作如下:
- 首先将 USB 摄像头插入到 Orange Pi 开发板的 USB 接口中
- 然后通过 lsmod 命令可以看到内核自动加载了下面的模块
- 更新一下源,安装 v4l2-ctl 的安装包、通过 v4l2-ctl 命令可以看到 USB 摄像头的设备节点信息为/dev/video0
orangepi@orangepi:~$ sudo apt update
orangepi@orangepi:~$ sudo apt install -y v4l-utils
orangepi@orangepi:~$ v4l2-ctl --list-devices
出现如图所示:
-
使用 fswebcam 测试 USB 摄像头
A. 安装 fswebcam,执行下面的命令
sudo apt-get install -y fswebcam
B. 安装完 fswebcam 后可以使用下面的命令来拍照
a)-d 选项用于指定 USB 摄像头的设备节点
b)--no-banner 用于去除照片的水印
c)-r 选项用于指定照片的分辨率
d)-S 选项用设置于跳过前面的帧数
e) ./image.jpg 用于设置生成的照片的名字和路径
sudo fswebcam -d /dev/video0 --no-banner -r 1280x720 -S 5 ./image.jpg
#注意这里的video0要根据实际的情况修改
出现下面表示接入成功
orangepi@orangepizero2:~$ sudo fswebcam -d /dev/video0 --no-banner -r 1280x720 -S 5 ./image.jpg
--- Opening /dev/video0...
Trying source module v4l2...
/dev/video0 opened.
No input was specified, using the first.
--- Capturing frame...
Skipping 5 frames...
Capturing 1 frames...
Captured 6 frames in 0.19 seconds. (31 fps)
--- Processing captured image...
Disabling banner.
Writing JPEG image to './image.jpg'.
C. 在服务器版的 linux 系统中,拍完照后可以直接通过 mobaxterm 拖到电脑桌面,查看图片
-
使用 mjpg-streamer 测试 USB 摄像头
a. 下载 mjpg-streamer
Gitee 的镜像下载地址为:
orangepi@orangepi:~$ git clone https://gitee.com/leeboby/mjpg-streamer
b. 安装依赖的软件包
Ubuntu 系统
orangepi@orangepi:~$ sudo apt-get install -y cmake libjpeg8-dev
c. 编译安装 mjpg-streamer
orangepi@orangepi:~$ cd mjpg-streamer/mjpg-streamer-experimental
orangepi@orangepi:~/mjpg-streamer/mjpg-streamer-experimental$ make -j4
orangepi@orangepi:~/mjpg-streamer/mjpg-streamer-experimental$ sudo make install
d. 然后输入下面的命令启动 mjpg_streamer
orangepi@orangepizero2:~/mjpg-streamer/mjpg-streamer-experimental$ ls
orangepi@orangepizero2:~/mjpg-streamer/mjpg-streamer-experimental$ vi start.sh
根据如上图所示修改,注意,video 的序号不一定都是 video0,请以实际看到的为准。
接着执行./start.sh
orangepi@orangepizero2:~/mjpg-streamer/mjpg-streamer-experimental$ ./start.sh
MJPG Streamer Version: git rev: 85f89a8c321e799fabb1693c5d133f3fb48ee748
i: Using V4L2 device.: /dev/video0
i: Desired Resolution: 640 x 480
i: Frames Per Second.: 30
i: Format............: UYVY
i: JPEG Quality......: 80
i: TV-Norm...........: DEFAULT
i: Could not obtain the requested pixelformat: UYVY , driver gave us: MJPG
... will try to handle this by checking against supported formats.
... Falling back to the faster MJPG mode (consider changing cmd line options).
UVCIOC_CTRL_ADD - Error at Pan (relative): Inappropriate ioctl for device (25)
UVCIOC_CTRL_ADD - Error at Tilt (relative): Inappropriate ioctl for device (25)
UVCIOC_CTRL_ADD - Error at Pan Reset: Inappropriate ioctl for device (25)
UVCIOC_CTRL_ADD - Error at Tilt Reset: Inappropriate ioctl for device (25)
UVCIOC_CTRL_ADD - Error at Pan/tilt Reset: Inappropriate ioctl for device (25)
UVCIOC_CTRL_ADD - Error at Focus (absolute): Inappropriate ioctl for device (25)
UVCIOC_CTRL_MAP - Error at Pan (relative): Inappropriate ioctl for device (25)
UVCIOC_CTRL_MAP - Error at Tilt (relative): Inappropriate ioctl for device (25)
UVCIOC_CTRL_MAP - Error at Pan Reset: Inappropriate ioctl for device (25)
UVCIOC_CTRL_MAP - Error at Tilt Reset: Inappropriate ioctl for device (25)
UVCIOC_CTRL_MAP - Error at Pan/tilt Reset: Inappropriate ioctl for device (25)
UVCIOC_CTRL_MAP - Error at Focus (absolute): Inappropriate ioctl for device (25)
UVCIOC_CTRL_MAP - Error at LED1 Mode: Inappropriate ioctl for device (25)
UVCIOC_CTRL_MAP - Error at LED1 Frequency: Inappropriate ioctl for device (25)
UVCIOC_CTRL_MAP - Error at Disable video processing: Inappropriate ioctl for device (25)
UVCIOC_CTRL_MAP - Error at Raw bits per pixel: Inappropriate ioctl for device (25)
o: www-folder-path......: ./www/
o: HTTP TCP port........: 8080
o: HTTP Listen Address..: (null)
o: username:password....: disabled
o: commands.............: enabled
e. 然后在和开发板同一局域网的 Ubuntu PC 或者 Windows PC 或者手机的浏览 orange Pi 器中输入 【开发板的 IP 地址:8080】就能看到摄像头输出的视频了
4.在/etc/xdg/autostart/下创建 mjpg.desktop 文件输入以下内容
/etc/xdg/autostart 这个文件夹下面的.desktop 文件会在开机的时候自动启动
orangepi@orangepizero2:/etc/xdg/autostart$ sudo vi mjpg.desktop
内容如下,可能需要更改的地方 Name、Exec
[Desktop Entry]
Name=mjpg //名字
Exec=/home/orangepi/mjpg.sh//自己的文件路径
Type=Application
NoDisplay=true
下一步重启输入命令
sudo reboot -f
出现如上图所示开启自启动拍照可以运行