mini2440 MJPG_STREAMER 产生问题
usb摄像头芯片是中芯微的zc0301pl,
http://www.vimicro.com.cn/product/pdf/ZC301PL-1107-V10-EN.pdf
[root@FriendlyARM bin-song]# usb 1-1.2: new full speed USB device using s3c2410-ohci and address 10
usb 1-1.2: New USB device found, idVendor=0ac8, idProduct=301b
usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
usb 1-1.2: Product: PC Camera
usb 1-1.2: Manufacturer: Vimicro Corp.
usb 1-1.2: configuration #1 chosen from 1 choice
gspca: probing 0ac8:301b
zc3xx: probe 2wr ov vga 0x0000
zc3xx: probe sensor -> 0011
zc3xx: Find Sensor HV7131R(c)
gspca: probe ok
/************************************************************************************************************************************/
执行,,如下---使用google code上的mjpg-streamer for mini2440,如前面4篇
FriendlyARM bin13]# ./start_uvc.sh
MJPG Streamer Version.: 2.0
DBG(input_uvc.c, input_init(), 133): argv[0]=UVC webcam grabber
i: Using V4L2 device.: /dev/video0
i: Desired Resolution: 640 x 480
i: Frames Per Second.: 5
i: Format............: MJPG
requested MJPG but got JPEG format instead//格式
DBG(dynctrl.c, initDynCtrls(), 139): adding control for 0
DBG(dynctrl.c, initDynCtrls(), 143): uvcioc ctrl add error: errno=22 (retval=-1)
DBG(dynctrl.c, initDynCtrls(), 139): adding control for 1
...
可以执行,但是用浏览器浏览时图像有问题---
发现上面line 8
requested MJPG but got JPEG format instead
在源码中找到这行------在plugins/input_uvc/v4l2uvc.c的init_v4l2()函数,大概line 150
if(vd->fmt.fmt.pix.pixelformat!=vd->formatIn)
{
char fourcc1[5]={0,0,0,0,0};
char fourcc2[5]={0,0,0,0,0};
memmove(fourcc1,(char*)&vd->formatIn,4);
memmove(fourcc2,(char*)&vd->fmt.fmt.pix.pixelformat,4);
fprintf(stderr, " requested %s but got %s format instead\n",fourcc1,fourcc2);
vd->formatIn = vd->fmt.fmt.pix.pixelformat;
}
将这个if块注释掉就正常啦。。。
秀一张很模糊很美的图片----是摄像头差劲,10元一个。
/************************************************************************************************************************************/
如果使用友善提供的编译好的程序,考到板子上执行会有如下问题
[root@FriendlyARM /mjpg-streamer]# ./start_uvc.sh
MJPG Streamer Version.: 2.0
i: Using V4L2 device.: /dev/video0
i: Desired Resolution: 640 x 480
i: Frames Per Second.: 5
i: Format............: MJPEG
Pixel format is unavailable, using JPEG
should never arrive exit fatal !!
i: init_VideoIn failed [root@FriendlyARM /mjpg-streamer]# ./start_uvc_yuv.sh
MJPG Streamer Version.: 2.0
i: Using V4L2 device.: /dev/video0
i: Desired Resolution: 640 x 480
i: Frames Per Second.: 5
i: Format............: YUV
i: JPEG Quality......: 80
Pixel format is unavailable, using JPEG
should never arrive exit fatal !!
i: init_VideoIn failed
提供的编译好的程序和源码不是一个版本的。所以没法troubleshooting。
但问题貌似和上面那个一样,把那个if块注释掉应该可以解决。
/************************************************************************************************************************************/
以下3种方法均可。http://192.168.1.230:8080/
详见天嵌网络摄像头说明书。
借来天嵌板子WebCam的mjpg_streamer input_uvc.so output_http.so,考到micro2440的/home/plg,/mjpg-streamer/www/是以前用的。
执行如下,使用mjpg-streamer测试usb摄像头,正常。
[root@FriendlyARM plg]# ./mjpg_streamer -i "./input_uvc.so" -o "./output_http.so -w /mjpg-streamer/www/"
MJPG Streamer Version.: 2.0
i: Using V4L2 device.: /dev/video0
i: Desired Resolution: 640 x 480
i: Frames Per Second.: 5
i: Format............: MJPEG
o: www-folder-path...: /mjpg-streamer/www/
o: HTTP TCP port.....: 8080
o: username:password.: disabled
o: commands..........: enabled
zc3xx: probe 2wr ov vga 0x0000
把uvc_stream借来,使用uvc-streamer测试usb摄像头 ,正常。
[root@FriendlyARM plg]# ./uvc_stream
Using V4L2 device.....: /dev/video0
Resolution............: 640 x 480
frames per second.....: 5
TCP port..............: 8080
motor control TCP port: 8081
zc3xx: probe 2wr ov vga 0x0000
把input_cmoscamera.so借来,使用mjpg-streamer测试cmos摄像头了,正常。
[root@FriendlyARM plg]# ./mjpg_streamer -i "./input_cmoscamera.so" -o "./output_http.so -w /mjpg-streamer/www/"
MJPG Streamer Version.: 2.0
i: Using CMOS Camera device.: /dev/camera
i: Desired Resolution: 640 x 512
i: Frames Per Second.: 5
i: Format............: YUV
i: JPEG Quality......: 80
o: www-folder-path...: /mjpg-streamer/www/
o: HTTP TCP port.....: 8080
o: username:password.: disabled
o: commands..........: enabled
由于天嵌提供的这方面的资料全一些,所以后面就分析天嵌的WebCam了。
mini2440 MJPG_STREAMER 产生问题的更多相关文章
- DM9000驱动移植在mini2440(linux2.6.29)和FS4412(linux3.14.78)上的实现(deep dive)篇一
关于dm9000的驱动移植分为两篇,第一篇在mini2440上实现,基于linux2.6.29,也成功在在6410上移植了一遍,和2440非常类似,第二篇在fs4412(Cortex A9)上实现,基 ...
- 移植tslib1.4至mini2440
在移植tslib1.4至mini2440的过程中出现了一些问题,在解决问题的过程中也学到了不少东西.但是由于注意力不集中也导致了一些低级的错误,非常地浪费时间,以后在做事的时候必须集中注意力,宁愿慢一 ...
- linux-3.0内核移植到fl2440开发板(以MINI2440为模板)
我们的fl2440开发板使用的是s3c2440的芯片,与MINI2440十分相似,因此需要改动的地方不多,移植也比较容易. 1.[weishusheng@localhost kernel]$ sudo ...
- 基于mini2440的Qt移植
花了很长时间,终于把Qt移植到mini2440开发板上了,不能说完全成功,总算是完成一大步,各中过程心酸,废话不多说,下面正式讲解移植过程. 移植环境: win7系统,虚拟机是ubuntu12.04 ...
- 基于mini2440的Tslib的移植
软件平台: win7系统,虚拟机ubuntu12.04 mini2440开发板 tslib是电阻式触摸屏用于校准的一个软件库,是一个开源的程序,能够为触摸屏驱动获得的采样提供诸如滤波.去抖.校准等功能 ...
- 基于mini2440的uboot移植(一)
一.移植环境 虚拟机:ubuntu12.04 uboot源码:u-boot-2008.10.tar.bz2 交叉编译:arm-linux-gcc-4.4.3 简单的记录下编译uboot的过程,要想具体 ...
- CubieTruck上安装mjpg_streamer
最近手头项目需要用到一个上位机,需要在上位机上实现远程访问及视频监控.其中视频监控采用了网上资料较多的mjpg_streamer进行视频处理.在使用中遇到许多坑也一并记录下来. 首先安装依赖环境和检测 ...
- 基于boa服务器的web控制mini2440的GPIO口
win7 系统 虚拟机:ubuntu12.04 开发板:mini2440 上一篇已经详细的讲解了如何配置boa服务器,在这里我们就要利用boa服务器带来的便利,利用web控制开发板上的GIPO口,这 ...
- 基于mini2440的boa服务器移植
win7 系统 开发板:mini2440 虚拟机:ubuntu12.04 准备工作:确保主机与开发板之间能够正常通信,即能够ping通,具体的操作课参考我上一篇随笔. 1.首先从 http://ww ...
随机推荐
- jQuery事件绑定的最佳实践
如果你经常使用jQuery,那么你也许很熟悉事件绑定.这是很基本的东西,但是深入一点,你就能够找到机会让你事件驱动的代码变得不太零碎,并且更容易管理. 更好的选择器策略 让我们从基础的例子开始.下面的 ...
- Mysql相关问答
问:我们团队中的一人想要使用 bigint 字段类型来代替 25-30 长度的 varchar 类型来存储 CRC64 数据,然后将索引也改成 bigint 的索引,这会节省索引的空间.请问这否是合理 ...
- SGU107——987654321 problem
For given number N you must output amount of N-digit numbers, such, that last digits of their square ...
- DevExpress MessageBox 弹出框 底层类
效果图: 前台调用: //图一的前台调用 MessageBox.Show("测试", "标题", MessageBoxButtons.OK); //图二的前台调 ...
- oracle 日期字段的处理
a. oracle plsql 如何查询两个间隔日期之间的数据 1) 方法一:Select * from Tables where time >= to_date('2013-01-02 19: ...
- jsp页面转发到servlet
一个简单的例子来了解一下jsp页面转发到servlet的过程,环境 eclipse.tomcat 1.工程目录结构如下 2.各部分代码如下 1>index.jsp <%@ page lan ...
- 用Regex类计算一个字符串出现次数是最好方法【转载】
我的一个朋友问我,怎么在c#或vb.net中,计算一个字符串中查找另一个字符串中出现的次数,他说在网上打了好多方法,我看了一下,有的是用replace的方法去实现,这种方法不是太好,占资源太大了.其实 ...
- 在Java项目中整合Scala
Scala是一个运行在Java JVM上的面向对象的语言.它支持函数编程,在语法上比Java更加灵活,同时通过Akka库,Scala支持强大的基于Actor的多线程编程.具有这些优势,使得我最近很想在 ...
- Kinect for Windows V2和V1对照开发___深度数据获取并用OpenCV2.4.10显示
V1深度分辨率:320x240 V2深度分辨率:512x424 1. 打开深度图像帧的方式 对于V1: hr = m_PNuiSensor->NuiImageStreamOpen( NUI_I ...
- cocos2d-x jsb + cocosbuider 适配iphone5 尺寸
最简单的适配iphone5的方案,应该算是直接用一块图片补上多出来的区域了: 1:Iphone5分辨率为 1136* 640 , 需要在cocosbuilder中将ccb修改为对应的尺寸: Docum ...