我有一个类似于 Square 阅读器的设备,可以插入 iPad 的音频插孔,并提供非常简单的数据。我正在使用奴佛卡因来读取原始数据,但我在通过扬声器同时播放音频时遇到问题。
是否可以在通过扬声器播放声音时录制耳机插孔的输入?如果我将kAudioSessionProperty_OverrideAudioRoute
设置为kAudioSessionOverrideAudioRoute_Speaker
,则输入的路径也会更改。据我所知,它是不 可能独立设置输入和输出路径。
是否可以下拉一个级别并使用远程 IO 单元来完成此任务?我可以使用任何 higher-level API 吗?有没有人有这样的例子?
1 回答
我本来想为我的应用程序做这个,并且无法找到办法,而且我在最低级别工作,使用 Core Audio 设备,特别是远程 IO 设备。
相关方法是 overrideOutputAudioPort:。来自文档:
讨论使用 AVAudioSessionPortOverrideSpeaker 选项调用此方法,音频会话的类别为 AVAudioSessionCategoryPlayAndRecord,无论其他设置如何,音频都会使用 built-in 扬声器和麦克风。此更改仅在当前路由更改之前有效,或者您使用 AVAudioSessionPortOverrideNone 选项再次调用此方法。