驱动开发读书笔记. 0.06 嵌入式linux视频开发之预备知识

Posted simonlin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了驱动开发读书笔记. 0.06 嵌入式linux视频开发之预备知识相关的知识,希望对你有一定的参考价值。

驱动开发读书笔记. 0.06  嵌入式linux视频开发之预备知识

由于毕业设计选择了嵌入式linux视频开发相关的项目,于是找了相关的资料,下面是一下预备知识

UVC :

UVC,全称为:USB video class 或USB video device class。是Microsoft与另外几家设备厂商联合推出的为USB视频捕获设备定义的协议标准,目前已成为USB org标准之一。

 

UVC linux driver:

UVC linux 驱动 需要在编译内核的时候选上

配置内核

Device Drivers --->
    <*> Multimedia support --->
        <*> Video For Linux
        [*] Enable Video For Linux API 1 (DEPRECATED)
        [*] Video capture adapters --->
            [*] V4L USB devices --->
                <*> USB Video Class (UVC)
                [*] UVC input events device support
                [*] GSPCA based webcams --->

 

 

 

(使用选择UVC的内核的板子,只要符合UVC标准的usb摄像头 插入板子,就可以被识别,/dev 目录下自动创建 video*的文件)

 

如何知道手中的摄像头是否符合UVC标准?:

利用 lsusb命令,具体看链接

http://blog.csdn.net/jason6765599/article/details/19907263

那个品牌的摄像头符合要求?:

简单的方法,某宝里面搜“arm9+摄像头”

 

插入摄像头之后出现:"uvcvideo: UVC non compliance - GET_DEF(PROBE) not supported. Enabling workaroun":

你的摄像头不适于UVC 摄像头.虽然有该设备文件,但是你的摄像头无法正常工作.

在网上看到的模糊的解决方法:  1.先卸载UVC 摄像头驱动.  2.加载适合你自己摄像头的驱动.

(据我所知,如果这个卸载驱动是指整个UVC Linux Driver,如果你编译进了内核,卸载的方法只有重新编译内核了)

 

如果插入没有出现non compliance的提示,并且在/dev目录新创建了video*的文件:

那么你就可以用这个文件编程了

 

编程API--V4L2:

意为video 4 linux 2;利用这个API就可以完成视频相关的编程

 



以上是关于驱动开发读书笔记. 0.06 嵌入式linux视频开发之预备知识的主要内容,如果未能解决你的问题,请参考以下文章

Android深度探索(卷1)HAL与驱动开发 第五章 搭建S3C6410开发板的测试环境 读书笔记

第十章 读书笔记

Android驱动开发读书笔记五

嵌入式 Linux 的调试技术读书笔记

Android深度探索——第五章读书笔记及心得

Android驱动开发读书笔记六