gspca 摄像头驱动的移植(ZC3XX)

Kernel version :2.6.22.6

Crosstool     :arm-linux-gcc-3.4.5

Board          :FS2410 

System        :Fedora 8
Source         :gspcav1-20071224、servfox-R1_1_3、spcaview-20061208
Author         :http://viviwei.cublog.cn
一、移植gspcav1-20071224
     gspcav1-20071224下载地址:
http://www.slackware.com/%7Ealien/slackbuilds/gspcav1/build/gspcav1-20071224.tar.gz
FS2410开发板上移植的是Linux-2.6.22.6内核,USB及CS8900A均能工作,由于linux-2.6.22.6/drivers/usb 目录下没有 media 目录,故移植步骤如下:
a)  在 linux-2.6.22.6/drivers/usb 目录下新建 media 目录,将gspcav1-20071224.tar.gz copy 到 media  下并解压。为了使media 编译进内核,需修改linux-2.6.22.6/drivers/usb 目录下的Kconfig、Makefile 文件。
[linux@weijing usb]$ pwd
/work/kernel/linux-2.6.22.6/drivers/usb
[linux@weijing usb]$ vi  Kconfig
添加
source "drivers/usb/media/Kconfig"
[linux@weijing usb]$ vi Makefile
添加
obj-$(CONFIG_USB_SPCA5XX)        += media/
b)  为添加 gspcav1-20071224 编译选项,在 media 下新建 Kconfig、Makefile 文件。
[linux@weijing media]$ pwd
/work/kernel/linux-2.6.22.6/drivers/usb/media
[linux@weijing media]$ vi Kconfig
## USB Multimedia device configuration
#comment "USB Multimedia devices"
#depends on USBconfig USB_SPCA5XX       
config USB_SPCA5XX
tristate "USB SPCA5XX Sunplus/Vimicro/Sonix jpeg Cameras"        
depends on USB && VIDEO_DEV


---help---          
Say Y or M here if you want to use one of these webcams:
The built-in microphone is enabled by selecting USB Audio support.
This driver uses the Video For Linux API. You must say Y or M to
"Video For Linux" (under Character Devices) to use this driver.
Information on this API and pointers to "v4l" programs may be found at.
To compile this driver as a module, choose M here: themodule will be called spca5xx.

[linux@weijing media]$ vi Makefile
## Makefile for USB Media drivers#obj-$(CONFIG_USB_SPCA5XX)   += gspcav1-20071224/
c)  修改 gspcav1-20071224 的 Makefile
[linux@weijing gspcav1-20071224]$ pwd
/work/kernel/linux-2.6.22.6/drivers/usb/media/gspcav1-20071224
[linux@weijing gspcav1-20071224]$ vi Makefile
gspca-objs := gspca_core.o decoder/gspcadecoder.oobj-$(CONFIG_USB_SPCA5XX) += gspca.oclean:        rm -f *.[oas] .*.flags *.ko .*.cmd .*.d .*.tmp *.mod.c         rm -rf .tmp_versions
d)  编译内核
(1 )Multimedia devices  --->
         Video For Linux
(2 ) USB support  --->
        Support for Host-side USB
       --- USB Host Controller Drivers    
        OHCI HCD support
(3 )--- USB Multimedia devices
     USB SPCA5XX Sunplus/Vimicro/Sonix jpeg Cameras

此时,可能会提示 gspca_core.c 的一些轻微错误,稍作修改即可:
//static const char gspca_version[] = GSPCA_VERSION;
static const char gspca_version[] = "00.60.00";
把新生成的 uImage 烧进开发板,重启,插上中星微芯片的摄像头,命令行出现
# usb 1-1: new full speed USB device using s3c2410-ohci and address 2           
usb 1-1: configuration #1 chosen from 1 choice                                  
drivers/usb/media/gspcav1-20071224/gspca_core.c: USB GSPCA camera found.(ZC3XX)
说明移植的驱动已经能识别设备,设备名所在路径 /dev/video0。
二、 servfox
    服务器端程序用是servfox,通过它可以在PC上看到开发板采集来的图像,从这里下载
http://mxhaard.free.fr/spca50x/embedded/Servfox/servfox-R1_1_3.tar.gz
下载,解压,进入其目录,发现没有一个makefile.arm,还有一个makefile.386,将makefile.arm改名为makefile,然后输入命令 make,生成 servfox 可实行文件,copy 到开发板运行之:
# ./servfox -d /dev/video0 -g -s 640x480 -w 7070                                
servfox version: 1.1.3 date: 11:12:2005 (C) 
mxhaard@magic.fr
                   
wrong spca5xx device                                                            
Waiting .... for connection. CTrl_c to stop !!!!                                

Got connection from 192.168.1.2

 三、spcaview

    客户端程序使用的是spcaview,下载地址为:
http://mxhaard.free.fr/spca50x/Download/spcaview-20061208.tar.gz
这个程序在PC 上运行,直接解压编译,生成 spcaview 可实行文件,运行如下:

[root@weijing spcaview-20061208]# ./spcaview -g -w 192.168.1.17
Spcaview version: 1.1.7 date: 06:11:2006 (C) 
mxhaard@magic.fr

ERROR Set default port to 7070 
using Server 192.168.1.17 Port 7070 

bright 32768 contrast 32768 


Linux上编译spcaview.由于此软件包依赖与libsdl,所以在安装spcaview之前,必须要安装 SDL-1.2.13.(http://download.csdn.net/detail/zdf511391565/6847579)

解压源码包:  tar zxvf SDL-1.2.13.tar.gz

安装源码包:  cd SDL-1.2.13; 运行 ./configure 文件,编译文件 make ,安装文件 make install。在安装的过程中,注意安装的路径,可以通过查看配置文件获得安装路径或者修改路径。

 

安装spcaview软件:

tar zxvf spcaview-20061208;cd spcaview-20061208;make

ok啦,在源文件目录上,可以看到三个可执行文件,spcacat spcaserv spcaview

spcacat 简单图片的抓取工具,不能用于网络监视客户端。

Spcaserv shi 流媒体服务器,

Spcaview 工具是用来纪录数据流,也能用来播放数据,也能作为网络监视客户端用。

我们可以在Linux上运行: ./spcaview -g -s 320x240 -w 192.168.0.11:7070

其中192.168.0.11是服务器的IP地址,这样我们就可以在PC机上看见USB摄像头采集进来的数据了。

 

 

参考链接:

使用servfox 和spcaview架设嵌入式Linux视频服务器:
http://blogold.chinaunix.net/u2/81592/showart_1891319.html



附件2是在 Fedora 8 下看到的图像。

参考:
http://blog.chinaunix.net/u/26710/showart_387765.html

       
http://blog.chinaunix.net/u/31/showart_692727.html



附件2
Click here to open new windowCTRL+Mouse wheel to zoom in/out
                
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值