基于 Mini2440 通过网络浏览和控制 CMOS 或 USB 摄像头
本文档版本日期:2010‐4‐5
说明:本文档关键内容主要来自于网络,敬请自由传播浏览,友善之臂保留本文档的解
释权及修改权。
更新说明
2010‐4‐5: 增加了某些 USB 摄像头不被支持的原因解释
2010‐4‐1: 更改了目录标题序号,以和实际目录对应。
2010‐3‐27: 本文档创建
目录
1 简介 ......................................................................................................................................................................... 2
2 快速上手体验 ......................................................................................................................................................... 2
2.1. 环境平台 ..................................................................................................................................................... 2
2.2 在 mini2440 上安装 mjpeg‐stream.............................................................................................................. 3
2.3 通过网页浏览 CMOS 摄像头 ...................................................................................................................... 3
2.4 通过网页浏览和控制 USB 摄像头 .............................................................................................................. 5
3 关于下载和编译源代码 .......................................................................................................................................... 9
1 简介
虽然我们已经提供了基于 Qtopia 的摄像头预览和拍照实用测试程序(不开源),但依然
有很多网友和用户希望能够通过网络控制和浏览摄像头。互联网的力量十分伟大,现在已经有
国外的爱好者在 mini2440 上把这个想法付诸实践并实现了,并为此创建了一个 google code 项
目,网址是:http://code.google.com/p/mjpg‐streamer‐mini2440/,我们经过简单测试使用,觉
得这个东西十分简单易用,特此介绍给大家。
Mjpeg‐stream 是一个开源软件,用于把 mjpeg 格式的文件变成流媒体输出,这里作者
已经把它移植到 mini2440,并做好了相应的启动运行命令,因此你只需下载下来使用它就行了。
2 快速上手体验
2.1. 环境平台
目标板:mini2440/micro2440
开发板上运行的系统:内核 Linux‐2.6.32.2,默认文件系统 root_qtopia(不分 nand flash 容量类型)
主机:Windows7 + Chome 浏览器(可能需要安装 Java 组件)
说明:默认的 Linux‐2.6.32.2 内核已经支持 CMOS 摄像头,及多种型号的 USB 摄像头,因此无
需重新配置编译。
2.2 在 mini2440 上安装 mjpeg‐stream
Step1: 获取要安装的文件 mjpeg‐stream
文件名:mjpg‐streamer‐mini2440‐bin‐r6.tar.gz
获取途径:(1)使用附件中的可执行文件(2)自行下载
下载地址:
http://mjpg‐streamer‐mini2440.googlecode.com/files/mjpg‐streamer‐mini2440‐bin‐r6.tar.gz
Step2:在 mini2440 上安装 mjpeg‐stream
使用优盘或者 ftp 等工具把 mjpeg‐stream 复制到开发板,在此假定复制到了/home/plg 目录
在控制台终端执行如下命令:
#mkdir /mjpg‐streamer ;创建一个独立目录用于测试
#cd /mjpg‐streamer ;进入该测试目录
#tar xvzf mjpg‐streamer‐mini2440‐bin‐r6.tar.gz ;解压安装
至此,mjpeg‐stream 就已经在开发板上安装好了。
2.3 通过网页浏览 CMOS 摄像头
Step1: 连接好硬件
把 CMOS 摄像头插装到开发板上,可以先使用开发板自带的“CMOS 摄像头”程序测
试该摄像头可用,然后重启开发板。
Step2: 启动 mjpeg‐stream
在命令行终端执行以下命令:
#cd /mjpg‐streamer ;进入测试目录
#./start_s3c2410.sh ;执行测试程序
此时可以在终端看到如图输出信息,这说明已经成功启动 mjpeg‐stream 程序
ep3:通过
Ste
在
在浏览器中输
态画面了,
说
说明:开发板
如图。
浏览器动态
输入:http
态预览 CMO
://192.168.
OS 摄像头
1.230:8080
0/stream_si
mple.html
即可看到摄
摄像头的动
动
以根据实际
际的网络参数
数输入相应
应
板默认的 IP
P 地址是 19
92.168.1.23
30 ,你可以
的 ip 地址。
。
2.4 通过网页浏览和控制 USB 摄像头
Step1: 连接好硬件
把 USB 摄像头插装到开发板上,可以先使用开发板自带的“USB 摄像头”程序测试该
摄像头可用,然后重启开发板。
Step2: 启动 mjpeg‐stream
在命令行终端执行以下命令:
#cd /mjpg‐streamer ;进入测试目录
#./start_uvc.sh ;执行测试程序
此时可以在终端看到如图输出信息,这说明已经成功启动 mjpeg‐stream 程序
mple.html
即可看到摄
摄像头的动
动
浏览器动态
输入:http
态预览 USB
://192.168.
摄像头
1.230:8080
0/stream_si
ep3:通过
Ste
在
在浏览器中输
态画面了,
说明:开发板
说
。因为大部
的 ip 地址。
如图。
板默认的 IP
部分 USB 摄
P 地址是 19
像头的分辨
92.168.1.23
辨率要高一
30 ,你可以
些,因此呈
以根据实际
呈现的图像
际的网络参数
像也会清晰很
数输入相应
应
很多。
ep4:通过
Ste
在
在浏览器中输
浏览器控制
输入:http:
制 USB 摄像
://192.168.
像头
1.230:8080
/stream.htm
ml 出现如下
下界面
点页面左侧的“Control“会出来一个控制页面窗口,如图
通过页面上的提示,可以控制 USB 摄像头的对比度,亮度等参数,用户可以自行测
试一下。
2.5 为什
什么我的
的 USB 摄
摄像头没有
有显示
像头在使用时
# ./start_uvc_
时出现了如
_yuv.sh
如下信息:
的 USB 摄像
pg‐streamer]#
2.0
ev/video0
0 x 480
le, using JPEG
G
fatal !!
如果你使用的
如
dlyARM /mjp
[root@Friend
MJPG Stream
mer Version.:
2 device.: /de
i: Using V4L2
esolution: 640
i: Desired Re
i: Frames Pe
r Second.: 5
.......: YUV
i: Format.....
ity......: 80
i: JPEG Qual
Pixel format
is unavailabl
r arrive exit f
should neve
In failed
i: init_Video
这说明,mjp
这
) 你可以更
(1)
) 自行更改
(2)
解释:虽然 L
解
动向上层提
提供的图像
供的 Qtopia
而我们提供
USB 摄像头
头向上层提供
个提示:
peg 软件并不
更改其他型号
改 mjpeg 源代
Linux‐2.6.32
像解码接口是
a 版本的 US
供的图像解
不支持你所
号的 USB 摄
代码以支持
2 等高版本
是不同的,
SB 摄像头动
解码接口支
所使用的 US
摄像头试试
持你所使用的
的内核已经
而 mjpeg 软
动态预览程
持,这也就
SB 摄像头类
类型。解决
决方法有两种
种:
的 USB 摄像
经支持“万
软件仅能识
程序,则根据
就是我们为什
像头驱动程序
能”USB 摄
识别一部分型
据用户的不
什么会在该
序接口
摄像头驱动,
型号的 USB
不断反馈增加
该程序中添加
,但每个驱
驱
B 摄像头,
加了更多的
的
加了这样一
一
目
的就是让用
像头驱动中
软件并不是
用户把所使
中的图像解码
是我们开发和
使用的 USB 摄
码支持。对
和维护的。
号 USB 摄像
为 mjpeg 软
摄像头样品
对于 mjpeg
品寄给我们,
软件,我们
,以便在我
们则不提供
我们的程序中
供这样的升级
中增加该型
型
级改进,因
因