8,460
个编辑
更改
→USB摄像头测试
<li><p>首先将USB摄像头插入到Orange Pi开发板的USB接口中</p></li>
<li><p>然后通过lsmod命令可以看到内核自动加载了下面的模块</p>
{| class="wikitable" style="width:800px;"
|-
|
<p>orangepi@orangepi:~$ '''lsmod'''</p>
<pspan style="margin-right: 100px;">Module </span><span style="margin-right: 50px;">Size </span><span style="margin-right: 45px;">Used by</pspan><br><pspan style="margin-right: 100px;">'''uvcvideo </span><span style="margin-right: 50px;">106496 </span><span style="margin-right: 50px;">0'''</pspan><br>|}</li>
<li><p>通过v4l2-ctl命令可以看到USB摄像头的设备节点信息为/dev/video0</p>
{| class="wikitable" style="width:800px;"
|-
|
<p>orangepi@orangepi:~$ '''sudo apt update'''</p>
<p>orangepi@orangepi:~$ '''sudo''' '''apt install -y v4l-utils'''</p>
<p>orangepi@orangepi:~$ '''v4l2-ctl --list-devices'''</p>
<p>USB 2.0 Camera (usb-sunxi-ehci-1):</p>
:<p>/dev/video0</p>|}{| class="wikitable" style="background-color:#ffffdc;width:800px;" |-| <big><p>'''注意v4l2中的l是小写字母l,不是数字1。'''</p><p>'''另外video的序号不一定都是video0,请以实际看到的为准。'''</p></big>|}</li>
<li><p>使用fswebcam测试USB摄像头</p>
<ol style="list-style-type: lower-alpha;">
<li><p>安装fswebcam</p>
{| class="wikitable" style="width:800px;"
|-
|
<p>orangepi@orangepi:~$ '''sudo''' '''apt update'''</p>
<p>orangepi@orangepi:~$ '''sudo apt-get install -y fswebcam'''</p>|}</li>
<li><p>安装完fswebcam后可以使用下面的命令来拍照</p>
<ol style="list-style-type: lower-alphanone;"><li><p>a) -d 选项用于指定USB摄像头的设备节点</p></li><li><p>b) --no-banner用于去除照片的水印</p></li><li><p>c) -r 选项用于指定照片的分辨率</p></li><li><p>d) -S 选项用设置于跳过前面的帧数</p></li><li><p>e) ./image.jpg 用于设置生成的照片的名字和路径</p>{| class="wikitable" style="width:800px;" |-|
<p>orangepi@orangepi:~$ '''sudo''' '''fswebcam -d /dev/video0 \'''</p>
<p>'''--no-banner -r 1280x720 -S 5 ./image.jpg'''</p>|}</li></ol></li><li><p>在服务器版的linux系统中,拍完照后可以使用scp命令将拍好的图片传到Ubuntu PC上镜像观看</p>{| class="wikitable" style="width:800px;" |-| <p>orangepi@orangepi:~$ '''scp image.jpg [mailto:test@192.168.1.55:/home/test test@192.168.1.55:/home/test] (根据实际情况修改IP地址和路径)'''</p>|}
</li>
<li><p>在桌面版的linux系统中,可以通过HDMI显示器直接查看拍摄的图片</p></li></ol>
</li>
<ol style="list-style-type: lower-alpha;">
<li><p>下载mjpg-streamer</p>
<ol style="list-style-type: lower-alphanone;"><li><p>a) Github的下载地址:</p>{| class="wikitable" style="width:800px;" |-| <p>orangepi@orangepi:~$ '''git clone https://github.com/jacksonliam/mjpg-streamer'''</p>|}</li><li><p>b) Gitee的镜像下载地址为:</p>{| class="wikitable" style="width:800px;" |-| <p>orangepi@orangepi:~$ '''git clone https://gitee.com/leeboby/mjpg-streamer'''</p>|}</li></ol>
</li>
<li><p>安装依赖的软件包</p>
<ol style="list-style-type: lower-alphanone;"><li><p>a) Ubuntu系统</p>{| class="wikitable" style="width:800px;" |-| <p>orangepi@orangepi:~$ '''sudo apt-get install -y cmake libjpeg8-dev'''</p>|}</li><li><p>b) Debian系统</p>{| class="wikitable" style="width:800px;" |-| <p>orangepi@orangepi:~$ '''sudo apt-get install -y cmake libjpeg62-turbo-dev'''</p>|}</li></ol>
</li>
<li><p>编译安装mjpg-streamer</p>
{| class="wikitable" style="width:800px;"
|-
|
<p>orangepi@orangepi:~$ '''cd mjpg-streamer/mjpg-streamer-experimental'''</p>
<p>orangepi@orangepi:~/mjpg-streamer/mjpg-streamer-experimental$ '''make -j4'''</p>
<p>orangepi@orangepi:~/mjpg-streamer/mjpg-streamer-experimental$ '''sudo make install'''</p>|}</li>
<li><p>然后输入下面的命令启动mjpg_streamer</p>
{| class="wikitable" style="background-color:#ffffdc;width:800px;" |-| <big><p>'''注意,video的序号不一定都是video0,请以实际看到的为准。'''</p></big>|}{| class="wikitable" style="width:800px;" |-|
<p>orangepi@orangepi:~/mjpg-streamer/mjpg-streamer-experimental$ '''export LD_LIBRARY_PATH=.'''</p>
<p>orangepi@orangepi:~/mjpg-streamer/mjpg-streamer-experimental$ '''sudo ./mjpg_streamer -i "./input_uvc.so -d \'''</p>
<p>'''/dev/video0 -u -f 30" -o "./output_http.so -w ./www"'''</p>|}</li><li><p>然后在和开发板同一局域网的Ubuntu PC或者Windows > PC或者手机的浏览器中输入【'''开发板的IP地址:8080'''】就能看到摄像头输出的视频了</p>
<div class="figure">