此演示文稿:http : //www.slideshare.net/invalidname/core-audioios6portland on iOS6 中的 Core Audio 似乎暗示(幻灯片 87)可以使用 Av Session 覆盖音频设备的自动输出/输入。
那么,具体来说,是否可以将外部麦克风插入 iOS6 设备并通过内部扬声器输出声音?我以前在这个网站上看到过这个问题:iOS:通过插孔路由音频输入,通过内置扬声器路由音频输出,但没有答案。
非常感谢 !
此演示文稿:http : //www.slideshare.net/invalidname/core-audioios6portland on iOS6 中的 Core Audio 似乎暗示(幻灯片 87)可以使用 Av Session 覆盖音频设备的自动输出/输入。
那么,具体来说,是否可以将外部麦克风插入 iOS6 设备并通过内部扬声器输出声音?我以前在这个网站上看到过这个问题:iOS:通过插孔路由音频输入,通过内置扬声器路由音频输出,但没有答案。
非常感谢 !
根据苹果的文档:
https://developer.apple.com/library/ios/documentation/AVFoundation/Reference/AVAudioSession_ClassReference/Reference/Reference.html#//apple_ref/occ/instm/AVAudioSession/overrideOutputAudioPort:error:
https://developer.apple.com/library/ios/documentation/AVFoundation/Reference/AVAudioSession_ClassReference/Reference/Reference.html#//apple_ref/doc/c_ref/AVAudioSessionPortOverride
您可以覆盖扬声器,但如果您更仔细地查看基于 C 的音频会话服务(实际上已被弃用,但仍有有用的信息)参考:
https://developer.apple.com/library/ios/documentation/AudioToolbox/Reference/AudioSessionServicesReference/Reference/reference.html#//apple_ref/doc/constant_group/Audio_Session_Property_Identifiers
如果在您将此属性的值设置为 kAudioSessionOverrideAudioRoute_Speaker 时插入耳机,系统会更改输入和输出的音频路由:输入来自内置麦克风;输出到内置扬声器。
我建议查看 iOS 7 的文档,看看他们是否添加了任何新功能。我还建议使用 iRiffPort 或基于 USB 的输入等外部设备运行测试(如果您有带 CCK 的 iPad)。