v4l(video for Linux)使用摄像头实验的一点小感慨

本文记录了作者在Linux环境下使用V4L进行摄像头实验的过程,从驱动到应用层的探索。在尝试编写驱动时发现Linux已内置摄像头驱动,通过`lsmod`和`ll /dev`确认设备存在。在应用层,作者参考他人代码编写程序,遇到`VIDIOCGCAP: Invalid argument`错误,通过搜索引擎寻找解决方案,最终在Google上找到使用V4L2而非V4L的建议,成功解决问题并获取到摄像头画面。
摘要由CSDN通过智能技术生成

v4l(video for Linux)使用摄像头实验的一点小感慨

前言

    学习Linux快1个月了,Linux教学视频看完了,然后在虚拟机上装了个CentOS6.3把该做的实验大多也做了。突然就想玩玩刚买来的蓝魔USB摄像头(型号M2200),我给自己定了个计划,先写个摄像头驱动再写个应用层上面与图像有关的随便什么程序。

 

正文

    1,先是驱动,我在想USB摄像头的话USB总线协议部分Linux应该已经有了,我只要基于这个USB总线协议上增加一层摄像头的通信协议就可以了。于是我就想把我的摄像头拆了看看里面用的是什么芯片,结果没有舍得拆,于是我干脆先到淘宝网物品信息部分看看有没有我的M2200所用芯片信息,结果查出了芯片供应商是中星微但具体芯片型号没有,我舍不得拆,怎么办。我突然想起来我的摄像头是免驱的,既然windows都自带它的驱动,就说明芯片那边使用的协议一定也是符合某个标准的。上于是在网上捣鼓了一下,我靠,有好多论文和论坛都在讲关于USB摄像头驱动,居然有这么多人在玩摄像头,看来我落伍了。看着看着我渐渐的明白了,原来有个V4L(video for Linux)协议,果不其然。既然Linux都已经自带了摄像头驱动,那我就不写了。但是我要看看我的CentOS6.3有没有集成摄像头驱动,我把摄像头插上,windows给我自动安装程序,安装完了,好像又安装了一个vmware usb device什么东东。不管它(后来才知道windows关机后再启动虚拟机就不会安装vmware usb device了,要设置下:虚拟机->可移动设备->usb设备上钩一下),然后再lsmod | grep video下就能看到uvcvideo、videodev之类的模块如图1,用ll /dev命令也就能看到video0这个设备文件了如图2。

                              图1

 

                                                            图2

 

    2,应用层,上网搜一搜,天啦,也有好多程序,很给力,看来我有了很好的学习材料,先给出一些传送门

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值