USB UVC设备安卓系统下无法预览图像

USB UVC设备在win10系统下表现良好,但是在安卓系统下无法预览图像,提示USB UVC设备错误!-256.
经反复修改测试发现在结构体struct uvc_streaming_control 中dwMaxPayloadTransferSize的值不能为0,我修改为1024大小后,预览正常。


每个 usb interface里面有多个设置(setting),那么我们使用哪一个设置呢?我们根据端点能传输的最大带宽容量来选择 setting。

1. 首先 从 myuvc_params 确定带宽,即从 struct myuvc_streaming_control 信息结构体中确认dwMaxPayloadTransferSize,是1024。

2. 再根据 setting 的 endpoint端点 能传输的 wMaxPacketSize最大包 找到能满足该带宽的 setting ,即 lsusb -v -d deviceid 查看能满足dwMaxPayloadTransferSize=1024的是哪一个设置。

你可能感兴趣的:(USB UVC设备安卓系统下无法预览图像)