android studio USB UVC摄像头 预览 失败

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android studio USB UVC摄像头 预览 失败相关的知识,希望对你有一定的参考价值。

参考技术A 如下:
检查设备管理器图像处理设备下的摄像头项,显示设备正常运作无冲突。

UVC1.5协议 2

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

目录

文章目录

前言

一、UVC拓扑结构

二、UVC描述符以及单元


前言

 

UVC协议是USB下的一个子类 ,UVC就是USB video class ,是 USB视频捕获设备定义的协议标准。USB设备可能具备很多功能比如一个摄像头可能集合了音频和视频所以它会用到UVC和UAC,将这俩个功能进行复合。内容较多,先写一些,个人理解如有不对之处请见谅


一、UVC拓扑结构

USB拓扑结构如图:

         这是一个比较标准的UVC设备的拓扑结构,图中所示这个设备有两个接口,VideoControl以及VIdeoStreaming,在实际的UVC设备中这两个接口是存在的,但是里面的单元不一定是这样,可能IT->PU->OT或者多个EU等等。

        可以看到在这个示例中,这个设备有俩个接口,接口可以理解成一种功能的集合,vc接口负责视频控制,vs接口描述视频流格式等信息。在video funtion中可以看到他有俩输入终端,一个是camera terminal 代表从sensor捕获数据输入,另外一个是input terminal,代表复合视频输入,一般来说都是IT。然后经过选择单元将视频流选择后送入处理单元再进去output treminal。再被vs中的端点接收。

        白色的为usb描述符,灰色是特殊类,或者说uvc class的描述符。alt,setting代表备用设置,一个uvc设备当前只能使用一种配置,但是可以动态的改变设置,完成配置的不同。 

二、UVC描述符以及单元

        UVC的描述符用来表示该设备的属性,在枚举的过程中给主机端读出描述符明白这个设备是怎么样供电用的是什么协议,以及该设备具备的功能例如支持什么样的分辨率,什么编码模式(可以出mjpeg或者264)等等一些属性。

        具体描述符如下(有些疏忽):

        

         可以看到UVC的描述符和拓扑结构是相关的,IAD是将接口关联描述符,VC这边主要是一些单元的描述符来对视频进行控制,拓展单元的话一般用在厂商的配套APP,中断状态一般使用的是端点0,在通信过程中设备与主机通信通过端点进行传输,具体描述符功能有点多,感兴趣的看一下官方文档吧

三、  复位

        复位是把一个信号从从挂起态唤醒,设备3ms不活动进入空闲态,空闲10ms进入挂起态 主机会停止发送sof包 usb会提供10ms的唤醒时间,保证下行端口也成功唤醒。

关于复位也还存在一些疑惑了解的大佬可以详细说说

以上是关于android studio USB UVC摄像头 预览 失败的主要内容,如果未能解决你的问题,请参考以下文章

Android USB Camera : 调试记录

我可以在使用 android studio 开发应用程序时禁用 android 默认摄像头(后置和前置)吗

android app 如何与uvc摄像头通讯

怎样在linux 3.0内核加载uvc摄像头

uvc无驱摄像头怎么连接电脑

UVC采集卡是啥?