UVC 摄像头驱动(一)硬件描述

 

UVC 摄像头驱动(一)硬件描述

http://blog.csdn.net/lizuobin2/ https://blog.csdn.net/lizuobin2/article/details/53144378

虚拟摄像头驱动vivi

内核中使用 video_device 结构来描述一个 video 设备,以虚拟摄像头驱动 vivi 为例,整体框架无非是:

  • 分配一个 video_device
  • 设置 video_device 的众多的 ioctl 等
  • 注册 video_register_device

对于一个虚拟摄像头驱动来说,上层应用程序无论是来查询视频格式,还是设置格式,我们都是伪造的,视频缓冲区的数据也更是伪造的。那么对于一个真正的usb 摄像头来说,设备的信息比如它支持的视频格式等,我们就要通过分析 usb 的描述符,视频数据要通过访问 usb 设备来获取。

uvc摄像头驱动

uvc 摄像头驱动,首先它是一个 usb 设备驱动,对于 usb 设备驱动整体框架也可以分为三步:

  • 分配 usb_driver 结构体
  • 设置 usb_driver 结构 
    • 设置 it_table 表示驱动支持哪些 usb 设备
    • probe 函数 
      • 分配 video_device
      • 设置 video_deivce
      • 注册 video_register_device
  • 注册 usb_register

摄像头硬件模型

协议下载

uvc == usb video class ,标准协议可以从 usb.org下载,所有的标准协议都可以下载到,比如 Mass Storage 、HID …

硬件模型

摄像头硬件模型可以大致分为以下两部分,VC interface 和 VS interface 
这里写图片描述
VC interface 用于控制,内部又分为多个 unit 和 terminal ,unit 用于内部处理,terminal 用于内外链接。 
VS interface 用于传输,内部包括视频数据传输的端点以及摄像头支持的视频格式等信息。

功能特性(翻译)

Each video function has a single VideoControl (VC) interface and can have several VideoStreaming (VS) interfaces 
The VideoControl (VC) interface is used to access the device controls of the function whereas 
the VideoStreaming (VS) interfaces are used to transport data streams into and out of the function. 
每个视频有且仅有1个VideoControl (VC)接口和可有多个 VideoStreaming (VS) 接口,VC接口用于设备功能控制,VS接口用于传输数据流进出 
VC 内部抽象出了两个概念 unit 和 terminal

Unit

Units provide the basic building blocks to fully describe most video functions ,A Unit has one or more Input Pins and a single Output Pin, 
Unit提供了基础模块来全面描述大部分的视频功能,一个Unit可以由一个或多个输入引脚和仅一个输出引脚(这里的每一个pin代表一个逻辑上的数据流) 
这里写图片描述 
Unit可以通过pin引脚连接在一起,一个输出pin可以连接多个输入pin,但一个输入pin只能连接一个输出pin 
这里写图片描述

Select Unit

The Selector Unit (SU) selects from n input data streams and routes them unaltered to the single output stream. 
选择Unit (SU)选择多个输入数据流并路由它们到单一的输出流 
这里写图片描述

Processing Unit

The Processing Unit (PU) controls image attributes of the video being streamed through it. 
这里写图片描述 
处理Unit (PU)控制流经它的视频流图像属性。 
User Controls

  • Brightness
  • Hue
  • Saturation
  • Sharpness
  • Gamma
  • Digital Multiplier (Zoom)

Auto Controls

  • White Balance Temperature
  • White Balance Component
  • Backlight Compensation
  • Contrast

Other

  • Gain
  • Power Line Frequency
  • Analog Video Standard
  • Analog Video Lock Status

Terminal

Terminals have one Input or Output Pin that is always numbered one. 
Terminal只有1个输入或一个输出引脚pin

Input Terminal

An Output Terminal (OT) represents an ending point for data streams. 
一个输出Terminal (OT)终端是一个实体代表数据流的结束端点 
这里写图片描述

Out Terminal

An Output Terminal (OT) represents an ending point for data streams. 
一个输出Terminal (OT)终端是一个实体代表数据流的结束端点 
这里写图片描述

Camera Terminal

The Camera Terminal (CT) controls mechanical (or equivalent digital) features of the device component that transmits the video stream. 
CameraTerminal (CT)控制传输视频流的设备组件特性

  • Scanning Mode扫描模式
  • Auto-Exposure Mode自动曝光模式
  • Auto-Exposure Priority自动曝光优先级
  • Exposure Time 曝光时间
  • Focus聚焦
  • Auto-Focus自动聚焦
  • Simple Focus简单聚焦
  • Iris红外
  • Zoom放大
  • Pan摇动
  • Roll滚动
  • Tilt倾斜
  • Digital Windowing数字窗口

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
数据来源:中经数据库 主要指标110多个(全部都是纯粹的 市辖区 指标),大致是: GDP GDP增速 第一产业增加值占GDP比重 第二产业增加值占GDP比重 第三产业增加值占GDP比重 人均GDP 社会消费品零售总额 固定资产投资(不含农户) 新设外商投资企业数_外商直接投资 实际利用外资金额(美元) 一般公共预算收入 一般公共预算支出 一般公共预算支出_教育 一般公共预算支出_科学技术 金融机构人民币各项存款余额_个人储蓄存款 金融机构人民币各项存款余额 金融机构人民币各项贷款余额 规模以上工业企业单位数 规模以上工业企业单位数_内资企业 规模以上工业企业单位数_港澳台商投资企业 规模以上工业企业单位数_外商投资企业 规模以上工业总产值 规模以上工业总产值_内资企业 规模以上工业总产值_港澳台商投资企业 规模以上工业总产值_外商投资企业 规模以上工业企业流动资产合计 规模以上工业企业固定资产合计 规模以上工业企业利润总额 规模以上工业企业应交增值税 规模以上工业企业主营业务税金及附加 户籍人口数 年均户籍人口数 户籍人口自然增长率 第一产业就业人员占全部城镇单位就业人员比重 第二产业就业人员占全部城镇单位就业人员比重 第三产业就业人员占全部城镇单位就业人员比重 城镇非私营单位就业人员数 城镇非私营单位就业人员数_第一产业 城镇非私营单位就业人员数_第二产业 城镇非私营单位就业人员数_第三产业 城镇非私营单位就业人员数_农、林、牧、渔业 城镇非私营单位就业人员数_采矿业 城镇非私营单位就业人员数_制造业 城镇非私营单位就业人员数_电力、热力、燃气及水生产和供应业 城镇非私营单位就业人员数_建筑业 城镇非私营单位就业人员数_批发和零售业 城镇非私营单位就业人员数_交通运输、仓储和邮政业 城镇非私营单位就业人员数_住宿和餐饮业 城镇非私营单位就业人员数_信息传输、软件和信息技术服务业 城镇非私营单位就业人员数_金融业 城镇非私营单位就业人员数_房地产业 城镇非私营单位就业人员数_租赁和商务服务业 城镇非私营单位就业人员数_科学研究和技术服务业 城镇非私营单位就业人员数_水利、环境和公共设施管理业 城镇非私营单位就业人员数_居民服务、修理和其他服务业 城镇非私营单位就业人员数_教育 城镇非私营单位就业人员数_卫生和社会工作 城镇非私营单位就业人员数_文化、体育和娱乐业 城镇非私营单位就业人员数_公共管理、社会保障和社会组织 城镇非私营单位在岗职工平均人数 城镇就业人员数_私营企业和个体 城镇非私营单位在岗职工工资总额 城镇非私营单位在岗职工平均工资 城镇登记失业人员数 建成区面积 建设用地面积 建设用地面积_居住用地 液化石油气供气总量 液化石油气供气总量_居民家庭 人工煤气、天然气供气总量 人工煤气、天然气供气总量_居民家庭 液化石油气用气人口 人工煤气、天然气用气人口 城市公共汽电车运营车辆数 城市出租汽车运营车辆数 城市公共汽电车客运总量 道路面积 排水管道长度 建成区绿化覆盖面积 建成区绿化覆盖率 绿地面积 公园绿地面积 维护建设资金支出 土地面积 生活用水供水量 供水总量 全社会用电量 城乡居民生活用电量 工业生产用电量 房地产开发投资 房地产开发投资_住宅 限额以上批发和零售业法人单位数 限额以上批发和零售业商品销售总额 普通中学学校数 中等职业教育学校数 普通小学学校数 普通高等学校专任教师数 普通中学专任教师数 中等职业教育专任教师数 普通小学专任教师数 普通高等学校在校生数 普通中学在校生数 中等职业教育在校生数 普通小学在校生数 电视节目综合人口覆盖率 公共图书馆总藏量_图书 医疗卫生机构数_医院和卫生院 卫生人员数_执业(助理)医师 医疗卫生机构床位数_医院和卫生院 城镇职工基本养老保险参保人数 职工基本医疗保险参保人数 失业保险参保人数

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值