假设我有USB设备,例如相机,我想使用libusb API将相机捕获的图像序列加载到主机 .

我不清楚以下几点:

  • 如何填充设备上的IN endpoints ?它总是一帧的完整图像数据(并且可选地加上一些状态数据)吗?

  • libusb_bulk_transfer()有一个参数 length 来指定主机想要读取IN的数据的长度,另一个参数 transferred 指示实际传输了多少数据 . 问题是:我是否应该始终请求IN endpoints 发送的数据量相同?如果是这样,那么 transferred 小于 length 的情况会怎样?

  • 如何确定每个传输请求时In endpoints 将发送多少数据?