苹果mfi iap2识别被拒绝
apple mfi iap2 identification rejected
我正在为 ios 开发 USB 音频设备。
我使用 "usb devcie mode"(我的设备是 USB 主机,苹果是 USB 设备),
符合苹果官方 doc:mfi 苹果设备版本 R5.
配件接口规范
我已经通过认证,收到苹果"StartIdentification"请求。
当发送 "IdentificationInformation" 命令和我的身份证明时。
我得到 ID 15 的 "IdentificationReject"。(USBDeviceTransportComponent)
我已经尝试删除 ID15 的 "USBDeviceSupportedAudioSamplerate" parmeter:6,7,8(枚举值对应采样率),以及 ID6、ID7 中的 "USB Device Mode Audio" 命令。我得到 "IdentificationAccept"。但是我现在不能在没有音频命令的情况下使用 USB 音频...
拒绝的 IdentificationInformation ID15 十六进制转储:
00 1C 00 0F //组header
00 06 00 00 // 参数 0 header
0A 01 //组件标识
00 07 00 01 // 参数 1 header
73 61 00 //名称字符串
00 04 00 02 //parmeter 2 header(only header表示传输支持iap2)
00 07 00 03 //参数3 header
06 07 08 //采样枚举 val(32k,44.1k,48k)
在弄清楚你的十六进制转储数据后,我发现问题出在采样率参数上。每个采样率都需要 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)
我正在为 ios 开发 USB 音频设备。 我使用 "usb devcie mode"(我的设备是 USB 主机,苹果是 USB 设备), 符合苹果官方 doc:mfi 苹果设备版本 R5.
配件接口规范我已经通过认证,收到苹果"StartIdentification"请求。 当发送 "IdentificationInformation" 命令和我的身份证明时。 我得到 ID 15 的 "IdentificationReject"。(USBDeviceTransportComponent)
我已经尝试删除 ID15 的 "USBDeviceSupportedAudioSamplerate" parmeter:6,7,8(枚举值对应采样率),以及 ID6、ID7 中的 "USB Device Mode Audio" 命令。我得到 "IdentificationAccept"。但是我现在不能在没有音频命令的情况下使用 USB 音频...
拒绝的 IdentificationInformation ID15 十六进制转储: 00 1C 00 0F //组header 00 06 00 00 // 参数 0 header 0A 01 //组件标识 00 07 00 01 // 参数 1 header 73 61 00 //名称字符串 00 04 00 02 //parmeter 2 header(only header表示传输支持iap2) 00 07 00 03 //参数3 header 06 07 08 //采样枚举 val(32k,44.1k,48k)
在弄清楚你的十六进制转储数据后,我发现问题出在采样率参数上。每个采样率都需要 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)