Linux 下UVC&V4L2技术简介(二)

通过前文Linux 下UVC&V4L2技术简介(一)我们了解了UVC和V4L2的简单知识。

这里是USB设备的文档描述:http://www.usb.org/developers/docs/devclass_docs/

那么如果我们想运行一个UVC的camera设备需要做哪些工作呢?


我简单的查看了几个CM项目的kernel配置文件,发现在这些系统里面的V4L2的驱动配置选项都是打开的,但是CONFIG_USB_VIDEO_CONFIG选项是没有打开的,也就是说在现在CM支持的机型里面默认是不支持UVC camera的。


这样的情况就给开发者带来很大的不便,因为这样以来,UVC camera就不能作为一个android系统的标配存在着。


那么现在问题来了,

如何让设备成为一个UVC(USB video class)设备?

如何让android系统能够支持UVC camera设备正常工作?


首先,在前一篇文章中提到UVC设备可以有一个支持的device list或者利用命令去查看设备是否被支持。我们是否可以修改我们的设备,使之成为一个UVC camera?


此处根据阅读文档的结果来看符合UVC设备的条件,硬件上是有一个固定的架构的。所以如果硬件上不是UVC设备架构的情况下,很难将一个普通的camera转化成UVC camera。




其次如何让android系统能够支持UVC camera呢?

在描述这部分之前,需要先说一下V4L2的工作原理。


接下来讲述UVC驱动。






你可能感兴趣的:(linux,kernel,Class,usb)