我愿意为iPad做一个应用程序,它可以执行以下操作:

当耳机和30针连接器扬声器/麦克风同时插入时,用户可以独立选择输入和输出路径,以实现实时音频流 .

例:
用户通过触摸事件选择输入设备作为耳机麦克风,并选择输出设备作为内置扬声器 . 然后,用户可以对着耳机麦克风讲话,并实时在内置扬声器上听到他们的声音 .

然后用户选择30针麦克风作为输入,耳机扬声器作为输出 . 同样地,说到30针麦克风并听到耳机扬声器的输出 .

如下所示的调用不起作用,因为它会自动将输入或输出更改为同一外设 .

CFStringRef audioInputOverride = kAudioSessionInputRoute_HeadsetMic;

AudioSessionSetProperty (kAudioSessionProperty_InputSource, sizeof(audioInputOverride), &audioInputOverride);

CFStringRef audioOutputOverride = kAudioSessionOutputRoute_USBAudio;

AudioSessionSetProperty (kAudioSessionProperty_OutputDestination, sizeof(audioOutputOverride),&audioOutputOverride);

我可以在实时音频流中独立选择输入/输出吗?