基于ARM的网络视频监控开发boa+servfox

http://whlfly.blog.163.com/blog/static/9058441620088424626543/

2008-09-04 14:46:26|  分类: Linux |字号 订阅

要用到的软件包

  摄像头驱动: http://mxhaard.free.fr/spca50x/embedded/KernelPatch/usb-2.4.31LE06.patch.tar.gz

  服务器视频采集: http://mxhaard.free.fr/spca50x/embedded/Servfox/servfox-R1_0_0.tar.gz

  客户端播放视频: ftp://ftp5.linuxeden.com/hardware/spcaview-20061208.tar.gz

  浏览器java plugs: http://software.lupaworld.com/data/upload/jre-1_5_0_06-linux-i586-rpm.bin

(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 选项下应该有

  <M> USB SPCA5XX Sunplus Vimicro Sonix Cameras,要把它配置成module。 

(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 。 这一步没有成功。

      解压后,还会产生<http-java-applet>,此是WEB客户端。将java目录拷到boa服务器的/var/www目录下。目标板启动boa服务器,在windows浏览器下访问:http://192.168.0.11/java/index-sample.html。就可以在线视频监控。

(7)window浏览器安装jre-1_5_0_06-windows-i586-p.exe

下载,安装即可。

安装好后,启动开发板,将摄像头驱动spca5xx.o,服务器视频采集程序servfox,boa服务器程序,以及boa服务器的三个文件夹:lib,etc,var。

开发板的启动步骤:

              (1)设置IP

                  #ifconfig eth0 192.168.0.11

                注意:若使用不同的开发板,要对板子进行操作的命令是大致一样的,关键是找到如何以根用户登录的方式。我的板子是启动后输入:root即可。有的板子是启动后输入:login,然后输入:root即可。

              (2)加载摄像头驱动

                  进入摄像头驱动的安放目录

                  #insmod spca5xx.o

              (3)#mknod /dev/video0 c 81 0

               (4)启动boa服务器

                  进入boa服务器安放目录

                   #./boa

               (5)启动视频采集程序

                   #./servfox -g -d /dev/video0 -s 320x240 -w 7070

windows下启动IE,输入地址:http://192.168.0.11/java/index-sample/html

                就可在线看到采集的视频。注意windows主机的IP必须和开发板在同一个网段。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值