Arm-linux下USB摄像头的视频服务器的实现
很高,大概有70%左右。开发板的内核是Linux2.6.18,交叉编译器是arm-linux-gcc 3.4.1。
配置一下内核,在内核目录下make menuconfig,在Device driver->Multimedia devices->Video4Linux,将它编译进内核,使系统提供V4L。然后就是USB摄像头的驱动,尽管其内核中就集成了对0V511、zc301等系列摄像头的支持,开源驱动spca5xx/gspca也提供了对大部分主流摄像头的支持,但还是无法涵盖所有品牌的各种型号的摄像头,尤其是对于国内的中低端用户,很难找到直接可用的Linux下的驱动。于是我在网上下载了gspca驱动(http://mxhaard.free.fr/spca50x/Download/gspcav1-20070508.tar.gz,如果无法链接
的话,可以到csdn上下载,我已经上传了,免资源分),交叉编译make,其中Makefile参考的是
VERSION
DEFINES
###
# The following flags enable experimental features.
# By default, these are enabled for development versions of the driver, and
# disabled for release versions.
# Optional: Enable driver debugging
DEFINES
# Optional: Enable direct register read/write for PAC207 development
#DEFINES
###
# The following flags enable features that arent yet implemented, and
# therefore are disabled by default.
# Optional: Enable compression
DEFINES
###
# Rest of Makefile follows here. You probably wont need to touch this.
# Setup defines
DEFINES
DEFINES
ifneq ($(KERNELRELEASE),)
CFLAGS += $(DEFINES)
obj-m += gspca.o
gspca-objs := gspca_core.o decoder/gspcadecoder.o
else
KERNEL_VERSION = `uname -r`
KERNELDIR := /usr/src/linux-2.6.20.3
PWD
MODULE_INSTALLDIR = /lib/modules/$(KERNEL_VERSION)/kernel/drivers/usb/media/
MODULE_INSTALLDIR2 = /lib/modules/$(KERNEL_VERSION)/kernel/drivers/media/video/
CC=/usr/local/arm/3.4.1/bin/arm-linux-gcc
CROSS_COMPILE=/usr/local/arm/3.4.1/bin/arm-linux-
ARCH=arm
default:
install:
uninstall:
endif
##############################################################################
# OTHER TARGETS
##############################################################################
clean:
##############################################################################
就会在解压目录下生成gspca.ko,然后cp gspca.ko /home/NFS,在开发板上insmod gspca.ko。
这时ls /dev就会看到一些设备文件vedio0
spacview需要SDL库的支持,如果没有的话会出错。还有就是运行交叉编译的servfox要带参数的,如
./servfox -d /dev/video0 -s 640x480 -w 192.168.1.75:7070,当然运行客户端播放程序也要带参数的,
如在局域网内另一台PC上运行./spcaview -d /dev/video0 -s 640x480 -w 192.168.1.75:7070。csdn上编译好的servfox和spcaview下载。当然也可以下载到源码自己编译。
运行后的效果图如下:
Arm-linuxUSB摄像头视频服务 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)