全部博文(133)
分类: LINUX
2011-03-23 15:31:26
要用到的软件包
摄像头驱动:
服务器视频采集:
客户端播放视频:
浏览器java plugs:
(1)安装摄像头驱动
将usb-2.4.31LE06.patch.tar.gz 复制到/armlinux/kernel/driver/usb下,解压,打补丁
#tar -xvzf usb-2.4.31.patch.gz
#patch -p1 < usb-2.4.31.patch
此
时就会在此目录下看到spca5xx文件夹了.不知是何原因,估计是KERNEL版本的原因,在/armlinux/kernel/driver
/usb 的目录中的Makefile 和config.in中找不到对应的关键字,此时会有一些错误,并将错误放在Makefile.rej
和config.in.rej 两文件中,打开两个文件,分别将其中前面有+的文字加到 Makefile和config.in中
对应的分类中即可. 我做的时候,没有生成config.in.rej ,只需处理一下Makefile.rej 。
(2)编译内核
进入armlinux
#make menuconfig.
在arm linux的kernel目录下make menuconfig,
首先<*>选择Multimedia device->下的Video for linux,
然后 USB support ---> USB Multimedia devices 选项下应该有
(3)#make clean //删除以前的编译结果
#make dep //依赖编译
#make
#make Image //形成vmlinux
#/usr/local/arm/2.95.3/bin/arm-linux-objcopy -O binary -S vmlinux linux.bin //形成linux.bin
// /usr/local/arm/2.95.3/bin/arm-linux-objcopy 在交叉编译工具的安装目录中的一个工具
#gzip -v9 linux.bin //形成linux.bin.gz
#./mkimage -A arm -O linux -C gzip -a 0x20008000 -e 0x20008000 -d linux.bin.gz uImage //把linux.bin.gz文件变为最终的影像文件uImage
//G:\FFT-9200\标准配置光盘\fft-U-boot\编译\fft-uboot-1.0.0\tools\mkimage
在linux-2.4.19-rmk7/driver/usb/spca5xx目录下生成spca5xx.o,spcadecoder.o,spca_core.o。这就是我们要的驱动. 实际使用时,只需spca5xx.o就可以了。
(4)烧写新的内核到开发板
挂载相关文件到开发板
需要挂载spca5xx.o,servfox,boa,boa的lib,etc,var三个文件目录
#insmod spca5xx.o
会打印出找到摄像头的提示信息
(5)移植视频采集程序servfox
解压servfox-R1_1_3.tar.gz,将目录中的Makefile.arm文件,修改为名为Makefile即可。再make。
将生成的servfox挂载到开发板。
#mknod /dev/video0 c 81 0 //不写这一步,会出现 ERROR opening V4L interface错误。这一步的意思是:创建一个USB摄像头设备文件/dev/video0
#./servfox -g -d /dev/video0 -s 320x240 -w 7070
// -g :直接从内存读取数据
// -s :servfox上显示的视频窗口的大小
// -w : 服务器端口
(6)客户端spcaview
make生成目标文件
在PC上,spcaview –w 192.168.0.11:7070就可以看到摄像头采集来的图片了
我的系统是红帽9 。 这一步没有成功。
解压后,还会产生
(7)window浏览器安装jre-1_5_0_06-windows-i586-p.exe
下载,安装即可。
安装好后,启动开发板,将摄像头驱动spca5xx.o,服务器视频采集程序servfox,boa服务器程序,以及boa服务器的三个文件夹:lib,etc,var。
(come from )