我想使用芯片组的音频和GPIO / I2C功能 . 我的理解是,Android内核不支持通过USB传输音频(不需要支持手机) .
但是,基于this post,如果我可以通过其VID和PID获取它,我看起来可以为任意USB设备编写软驱动程序 . 也许我甚至可以使用等时 endpoints 从我的应用程序播放一些音频 . 这可能吗?太糟糕的等时 endpoints 目前不受支持 .
当我连接我的设备并使用 dmesg
时,我看到 device vXXXX pXXXX is not supported
. 这表明了什么?
如果我的USB设备有时无法枚举(见下文)怎么办?这可能是硬件问题吗?
<6>[ 262.061309] usb 2-1: new full speed USB device number 5 using musb-hdrc
<3>[ 262.123870] hub 2-0:1.0: unable to enumerate USB device on port 1
<6>[ 262.483215] usb 2-1: new full speed USB device number 6 using musb-hdrc
<3>[ 262.631652] usb 2-1: device descriptor read/all, error -19
<3>[ 262.694183] hub 2-0:1.0: unable to enumerate USB device on port 1
<6>[ 263.053558] usb 2-1: new full speed USB device number 8 using musb-hdrc
<3>[ 268.608215] usb 2-1: device not accepting address 8, error -110
<3>[ 268.670715] hub 2-0:1.0: unable to enumerate USB device on port 1
1 回答
根据http://www.usb.org/developers/devclass_docs/audio10.pdf(第4.6节),USB音频类设备使用等时 endpoints 来传输实际的音频数据 .
Per http://developer.android.com/reference/android/hardware/usb/UsbEndpoint.html,Android 's USB host api doesn' t目前支持等时 endpoints .