usb摄像头驱动的移植并在网页上查看视频信息
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
【usb摄像头驱动的移植】
常见的usb摄像头有两种格式:YUV,GSPCA 格式
YUV格式:不经压缩的视频GSPCA格式:视频经过了压缩
1.如果摄像头是YUV格式:
通用的移植步骤是:
make menuconfig
Device Drivers --->
<*> Multimedia support --->
[*] Cameras/video grabbers support
[*] Media USB Adapters --->
< *> USB Video Class (UVC) (NEW)
2.视频通过一张一张图片连续播放得到视频信息,每秒播放24帧图像会得到视频信息
3.添加摄像头驱动(GSPCA)
1.将摄像头插入到pc电脑,让pc电脑去识别摄像头。
将得到的详细的硬件信息是:
V(vendor)ID: 0AC8 PID:303B
2.在内核的源码中搜索VID或者PID.
grep "303b" * ./* -nR
搜索结果:drivers/media/usb/gspca/zc3xx.c:6986: {USB_DEVICE(0x0ac8, 0x303b)},
425 config USB_GSPCA_ZC3XX
426 tristate "ZC3XX USB Camera Driver"
427 depends on VIDEO_V4L2 && USB_GSPCA
说明要添加USB_GSPCA_ZC3XX VIDEO_V4L2 USB_GSPCA
3.在菜单中用/ 搜索USB_GSPCA
搜索结果:Symbol: USB_GSPCA [=n]
│
│Type : tristate
│Prompt: GSPCA based webcams
│Location:
│-> Device Drivers
│(1) -> Multimedia support (MEDIA_SUPPORT [=n])
│-> Media USB Adapters (MEDIA_USB_SUPPORT [=n])
│Defined at drivers/media/usb/gspca/Kconfig:1
│Depends on: USB [=y] && MEDIA_SUPPORT [=n] && MEDIA_USB_SUPPORT [=n]
4.根据搜索结果找到对应的驱动在菜单中选中添加:
make menuconfig
-> Device Drivers │
<*> Multimedia support --->
[*] Cameras/video grabbers support │
[*] Media USB Adapters --->
<*> GSPCA based webcams --->
< *> ZC3XX USB Camera Driver (NEW)
5.make uImage.
在开发板上:
会有如下提示信息:
[root@farsight ]# [ 33.740000] gspca_zc3xx 1-3.1:1.0: URB error -71, resubmitting
[ 33.765000] gspca_zc3xx 1-3.1:1.0: URB error -71, resubmittinggspca_zc3xx 1-3.1:1.0: URB error -71, resubmitting
[ 33.815000] gspca_zc3xx 1-3.1:1.0: URB error -71, resubmitting[ 33.820000] usb 1-3.1: USB disconnect, device number 3
[root@farsight ]# ls /dev/video0
ls: /dev/video0: No such file or directory
[root@farsight ]# [ 41.450000] usb 1-3.1: new full-speed USB device number 4 using exynos-ehci
[ 41.565000] gspca_main: gspca_zc3xx-2.14.0 probing 0ac8:303b
[ 42.555000] input: gspca_zc3xx as /devices/12580000.ehci/usb1/1-3/1-3.1/input/input2 [ 42.900000] random: nonblocking pool is initialized
驱动添加成功后产生/dev/video0:
[root@farsight ]# ls /dev/video0
/dev/video0说明驱动添加正确
【如果想查看视频信息】
查看视频的软件:mjpg_streamer
软件在运行的时候需要依赖于图片库,所以在移植视频的源码之前,先移植图片库
1.移植jpeg图片库的源码
1) 下载jpeg图片库的源码。jpeg源码包通过下面这个网址下载
/files/jpegsrc.v8b.tar.gz
2)解压源码包
tar xvf jpegsrc.v8b.tar.gz
3)配置源码
cd jpeg-8b
./configure --host=arm-none-linux-gnueabi --prefix=/home/linux/jpeg
4)编译
make
5)安装
make install