3

我正在使用 AVAudioSession 和远程 IO,目的是通过音频插孔连接器和内置麦克风记录一些信息......我想这可能与 iOS 6 的新功能:多路由音频。

为此,我想从我的音频会话中获取 inputDataSources:(https://developer.apple.com/library/ios/#documentation/AVFoundation/Reference/AVAudioSession_ClassReference/Reference/Reference.html#//apple_ref /c/data/AVAudioSessionCategoryMultiRoute )

我正在做的是:

AVAudioSession *session = [AVAudioSession sharedInstance];
NSArray *available_outputs = [session inputDataSources];

(我也在配置音频会话并激活它)

我得到的是全零available_outputs...

我究竟做错了什么?

4

1 回答 1

1

找到了。
文档中:

这目前仅适用于某些 USB 设备。

这个 API 将在 iOS 7 中发生变化,但 6 仅限于“某些 USB 设备”的模糊定义。
顺便说一句,根据我的测试 - 它适用于 iPhone 麦克风的 iOS 6.02,但不适用于 6.1.4(在 iPhone 5 上的两个测试)。

于 2013-09-03T06:41:15.427 回答