我正在为ios开发一个USB音频设备。 我使用“usb devcie模式”(我的设备是USB主机,苹果是USB设备), 符合苹果官方文档:苹果设备发布R5的mfi附件接口规范。
我已通过身份验证,并获得苹果“StartIdentification”请求。 使用我的标识发送“IdentificationInformation”命令时。 我得到了ID 15的“IdentificationReject”。(USBDeviceTransportComponent)
我尝试删除ID15的“USBDeviceSupportedAudioSamplerate”参数:6,7,8(枚举值对应采样率),以及ID6中的“USB设备模式音频”命令,ID7。我得到“IdentificationAccept”。但我现在不能使用usb音频而不是音频命令......
被拒绝的IdentificationInformation ID15十六进制转储: 00 1C 00 0F //组头 00 06 00 00 //参数0标题 0A 01 //组件ID 00 07 00 01 //参数1标题 73 61 00 //姓名字符串 00 04 00 02 //参数2标题(仅标题,表示运输支持iap2) 00 07 00 03 //参数3标题 06 07 08 // samplerate enum val(32k,44.1k,48k)
答案 0 :(得分:0)
找出十六进制转储数据后,我发现问题出在采样率参数上。每个采样率都需要id3参数。
正确的十六进制转储:
00 24 00 0F //group header
00 06 00 00 // parmeter 0 header
0A 01 //component id
00 07 00 01 // parmeter 1 header
73 61 00 //name string
00 04 00 02 //parmeter 2 header(only header,means transport support iap2)
00 05 00 03 //parmeter 3 header
06 //samplerate enum val(32k)
00 05 00 03 //parmeter 3 header
07 //samplerate enum val(44.1k)
00 05 00 03 //parmeter 3 header
08 //samplerate enum val(48k)