本文提供了关于相机配置文件 V2 开发者规范的概述。
内容
概述
通过 Windows 10 1507,添加了相机配置文件(此处称为相机配置文件 1507)支持,以允许 IHV/OEM 向平台和开发人员描述设备上可用的相机的硬件限制。
这些限制的范围包括相机的并发使用、基于并发使用的受限媒体类型,以及/或基于一个或多个相机上的流组合的有限媒体类型。
但是,这些描述性限制的生成与使用被证明既繁琐又容易出错。 相机配置文件 V2 是原始规格的扩展,用于解决原始相机配置文件规范中发现的许多痛点。
V2 还将尝试通过使用 Windows 10 平台上现在提供的 Frame Server 支持来解决 ISV 在使用相机配置文件时遇到的困难。
在相机配置文件 1507 中,为任何给定计算机定义相机配置文件有两种方法:
KS API
INF 替代
KS API 是用于发布或更新任何配置文件信息的驱动程序初始化时间 API。 为了保持向后兼容性,这些 API 将重新路由以支持下面所述的相机配置文件 V2 架构。
INF Override 旨在为通用驱动程序集提供一个覆盖机制。 例如,IHV 创建一个基于参考实现的二进制驱动程序,该驱动程序初始化相机档案,然后生成多个 INF 文件,这些 INF 文件使用 SKU 特定的档案替代参考档案。
这些 INF 重载也将在内部重新路由到相机配置文件 V2,以保持向后兼容性。
此设计有两个主要目标:
简化相机配置文件的发布
简化相机配置文件的使用
为了发布相机配置文件,将简化声明配置文件的要求,以减少 IHV/OEM 必须写入的代码/INF 数量。
为了使用相机配置文件,我们将在初始化每个上下文期间使用帧服务器的上下文管理来更改引脚/媒体类型,以匹配可用的配置文件信息。
术语
| 术语 | 定义 |
|---|---|
| 资料约束 | 一组适用于整个配置文件的约束。 |
| LRS | 配置文件约束标记:表示锁定解析。 |
| LFR | 配置文件约束标记:表示锁定帧速率。 |
| LST | 配置文件约束标记:表示 Lock 子类型。 |
| DIS | 配置文件限制标记:禁用配置文件。 |
| UAR | 配置文件约束标记:解锁纵横比。 |
| 筛选器集 | 表示一组筛选器的配置文件架构条目。 |
| 过滤器 | 一个配置文件架构条目,表示筛选器属性、筛选器比较运算符和筛选器值的组合。 |
| 筛选器属性 | 表示 MF 媒体类型中可用的属性之一。 目前仅定义了分辨率、帧速率和子类型: RES – 解决方法 FRT – 帧速率 SUT – 子类型 |
| 筛选器比较运算符 | 表示针对分辨率、帧速率或子类型的比较操作。 |
| 筛选器值 | 筛选器属性的值。 每种表示形式因筛选器属性而异。 请参阅下文。 |