news 2026/6/9 23:13:35

UVC 红外相机初始化流程 setup包解析

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
UVC 红外相机初始化流程 setup包解析

UVC 红外相机初始化流程

概述

本文档基于原始数据分析Windows Hello红外相机的UVC初始化流程。

原始数据

intf: 0 unit: 8 cs: 9 req: "85" data: "0400" intf: 0 unit: 8 cs: 9 req: "86" data: "03" intf: 0 unit: 8 cs: 9 req: "82" data: "00000000" intf: 0 unit: 8 cs: 9 req: "83" data: "01000000" intf: 0 unit: 8 cs: 9 req: "87" data: "00000000" intf: 0 unit: 8 cs: 9 req: "84" data: "01000000" intf: 0 unit: 8 cs: 9 req: "1" data: "00000000" intf: 2 unit: 14 cs: 6 req: "85" data: "0900" intf: 2 unit: 14 cs: 6 req: "86" data: "03" intf: 2 unit: 14 cs: 6 req: "82" data: "00" intf: 2 unit: 14 cs: 6 req: "83" data: "010303000000000000" intf: 2 unit: 14 cs: 6 req: "87" data: "010301000000000000" intf: 2 unit: 14 cs: 6 req: "84" data: "00" intf: 2 unit: 14 cs: 6 req: "1" data: "010301000000000000" intf: 2 unit: 14 cs: 9 req: "85" data: "0400" intf: 2 unit: 14 cs: 9 req: "86" data: "03" intf: 2 unit: 14 cs: 9 req: "82" data: "00000000" intf: 2 unit: 14 cs: 9 req: "83" data: "01000000" intf: 2 unit: 14 cs: 9 req: "87" data: "00000000" intf: 2 unit: 14 cs: 9 req: "84" data: "01000000" intf: 2 unit: 14 cs: 9 req: "1" data: "00000000" intf: 2 unit: 14 cs: 6 req: "81" data: "010301000000000000"

数据重新分析

正确的请求类型映射

  • req: “1”=SET_CUR(设置当前值)
  • req: “81”=GET_CUR(获取当前值)
  • req: “82”= GET_MIN (获取最小值)
  • req: “83”= GET_MAX (获取最大值)
  • req: “84”= GET_RES (获取分辨率)
  • req: “85”= GET_LEN (获取数据长度)
  • req: “86”= GET_INFO (获取控制信息)
  • req: “87”= GET_DEF (获取默认值)

初始化流程详细分析

阶段1: 颜色相机MSXU_CONTROL_METADATA初始化 (intf:0, unit:8, cs:9)

步骤请求类型数据说明
1GET_LEN (85)“0400”获取数据长度(4字节)
2GET_INFO (86)“03”获取控制信息(可读写)
3GET_MIN (82)“00000000”获取最小值(0)
4GET_MAX (83)“01000000”获取最大值(1)
5GET_DEF (87)“00000000”获取默认值(0)
6GET_RES (84)“01000000”获取分辨率(1)
7SET_CUR (1)“00000000”设置当前值为0

阶段2: 红外相机MSXU_CONTROL_FACE_AUTHENTICATION初始化 (intf:2, unit:14, cs:6)

步骤请求类型数据说明
8GET_LEN (85)“0900”获取数据长度(9字节)
9GET_INFO (86)“03”获取控制信息(可读写)
10GET_MIN (82)“00”获取最小值(0)
11GET_MAX (83)“010303000000000000”获取最大值{1,3,3}
12GET_DEF (87)“010301000000000000”获取默认值{1,3,1}
13GET_RES (84)“00”获取分辨率(0)
14SET_CUR (1)“010301000000000000”设置当前值为{1,3,1}

阶段3: 红外相机MSXU_CONTROL_METADATA初始化 (intf:2, unit:14, cs:9)

步骤请求类型数据说明
15GET_LEN (85)“0400”获取数据长度(4字节)
16GET_INFO (86)“03”获取控制信息(可读写)
17GET_MIN (82)“00000000”获取最小值(0)
18GET_MAX (83)“01000000”获取最大值(1)
19GET_DEF (87)“00000000”获取默认值(0)
20GET_RES (84)“01000000”获取分辨率(1)
21SET_CUR (1)“00000000”设置当前值为0

阶段4: 获取人脸认证当前状态 (intf:2, unit:14, cs:6)

步骤请求类型数据说明
22GET_CUR (81)“010301000000000000”获取当前值{1,3,1}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/21 12:44:35

企业级考勤管理系统管理系统源码|SpringBoot+Vue+MyBatis架构+MySQL数据库【完整版】

摘要 现代企业管理中,考勤管理是人力资源管理的核心环节之一,直接影响企业的运营效率和员工的工作积极性。传统考勤方式依赖手工记录或简单的电子表格,存在数据易丢失、统计效率低、无法实时监控等问题。随着企业规模的扩大和信息化需求的提升…

作者头像 李华
网站建设 2026/6/1 15:48:55

从零实现嵌入式终端接入:screen指令入门必看

嵌入式调试不翻车:用screen把终端“钉”在设备上你有没有过这样的经历?深夜连着远端的工控机跑数据采集脚本,眼看着快出结果了——网络一抖,SSH 断了。再登录上去,进程没了,日志断了,一切重来。…

作者头像 李华
网站建设 2026/6/9 3:53:04

eSPI主控制器在自动化网关中的部署:从零实现

eSPI主控制器在自动化网关中的实战部署:从协议解析到系统集成工业现场的控制柜里,你是否曾为密密麻麻的通信线缆头疼?当一个自动化网关需要连接TPM安全芯片、外部Flash、GPIO扩展模块和嵌入式协处理器时,传统LPC总线动辄二三十根引…

作者头像 李华
网站建设 2026/6/4 8:41:12

隐私安全 - Cordova 与 OpenHarmony 混合开发实战

欢迎大家加入开源鸿蒙跨平台开发者社区,一起共建开源鸿蒙跨平台生态。 📌 模块概述 隐私安全模块提供了数据保护和安全设置功能。用户可以设置应用密码、启用数据加密、管理权限等,保护个人隐私。 🔗 完整流程 第一步&#xff…

作者头像 李华
网站建设 2026/6/7 3:29:43

OpenBMC平台构建完整指南:Yocto项目实战详解

手把手教你构建 OpenBMC:从零开始的 Yocto 实战之路你有没有遇到过这样的场景?服务器突然宕机,远程无法登录,KVM 连不上,只能派人去机房“拍电源键”——这种传统运维方式在现代数据中心早已不合时宜。而真正高效的解决…

作者头像 李华
网站建设 2026/6/10 0:08:19

d3dcompiler_43.dll文件找不到 无法运行程序 下载修复方法

在使用电脑系统时经常会出现丢失找不到某些文件的情况,由于很多常用软件都是采用 Microsoft Visual Studio 编写的,所以这类软件的运行需要依赖微软Visual C运行库,比如像 QQ、迅雷、Adobe 软件等等,如果没有安装VC运行库或者安装…

作者头像 李华