《Linux视频驱动V4L2》.pdf

  1. 1、本文档共30页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《Linux视频驱动V4L2》.pdf

VideoforLinuxTwo(V4L2)——驱动编写指南 Video for Linux Two (V4L2) ——驱动编写指南 原始翻译稿:Video4Linux2 (usr 技术社区 译文组) 原文地址:The Video4Linux2 整理:Tekkaman Ninja 2012-8-17 声明:本文是基于/网站上的经典系列文章 《Video4Linux2 》的翻译整理。 原始翻译来自usr 技术社区 译文组和雷宏亮的博文。 本文因个人学习需要顺手做整理、修正,发布此文档仅为方便广大Linux 爱好者。 第 1/30页 08/19/2012 VideoforLinuxTwo(V4L2)——驱动编写指南 目录 一、 API 介绍3 二、 注册和open() 4 1. 视频设备注册5 2. open() 和 release() 5 三、 基本ioctl()处理7 四、 输入和输出9 1. 视频标准 9 2. 输入10 3. 输出11 五、 颜色与格式12 1. 色域12 2. 密集存储和平面存储12 3. 四字符码13 4. RGB 格式 13 5. YUV 格式14 6. 其他格式 15 7. 格式描述 15 六、 格式协商 16 七、 基本的帧I/O 19 1. read() 和 write() 19 2. 流参数19 八、 流I/O 22 1. v4l2_buffer 结构体22 2. 缓冲区设定24 3. 将缓冲区映射到用户空间25 4. 流I/O 26 九、 控制28 第 2/30页 08/19/2012 VideoforLinuxTwo(V4L2)——驱动编写指南 一、 API 介绍 笔者最近有机会写了一个用于“One Laptop Per Child”项目中的摄像头驱动。这个驱动使用了为此目的而 设计的内核API :the Video4Linux2 API 。在写这个驱动的过程中,笔者发现了一个惊人的问题:这个API 的文档工作做得并不是很好,而实际上用户层的文档则写得相当不错。为了补救这一现状,LWN 将在未来 的内个月里写一系列文章,告诉大家如何写V4L2 接口的驱动。 V4L2 有一段历史了。大约在1998 的秋天,它的光芒第一次出现在Bill Dirks 的眼中。经过长足的发展, 它于2002 年 11 月,在发布2.5.46 时,融入了主线内核之中。然而直到今天,仍有一部分内核驱不支持新 的API ,这种新旧API 的转换工作仍在进行。同时,V4L2 API 也在发展,并在2.6.18 版本中进行了一些重 大的改变。支持V4L2 的应用依旧相对较少。 V4L2 旨在支持多种设备,它们之中只有一部分在本质上是真正的视频设备:  video capture interface (影像捕获接口)从调谐器或摄像头上获取视频数据。对很多人来讲,影 像捕获(video capture) 是V4L2 的基本应用。由于笔者在这方面的最有经验,这一系列文章也趋

文档评论(0)

wfkm + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档