我在网上找了一段时间,还没有找到这个问题的答案。我希望通过 iPhone 的耳塞从蓝牙麦克风流式传输音频。我已经能够分别配置从麦克风流式传输和流式传输到耳塞,但不能同时配置。我通过配置 AudioSession 来做到这一点:
// Set up Audio Session
NSError *error = nil;
audioSession = [AVAudioSession sharedInstance];
[audioSession setCategory:AVAudioSessionCategoryPlayAndRecord withOptions:AVAudioSessionCategoryOptionAllowBluetooth error:&error];
if (error) NSLog(@"Error in Setting Audio Session Category");
error = nil;
[audioSession setActive:YES error:&error];
if (error) NSLog(@"Error in Setting Audio Session Active");
error = nil;
for (AVAudioSessionPortDescription *mDes in audioSession.availableInputs){
printf("Port: %s\n",[mDes.portType UTF8String]);
if ([mDes.portType isEqualToString:AVAudioSessionPortBluetoothHFP]) {
[audioSession setPreferredInput:mDes error:&error];
if (error != nil)
printf("Error Setting Preferred Input\n");
else
printf("Success\n");
error = nil;
}
}
似乎当我设置首选输入时,它也设置了输出。我已经尝试在事后覆盖输出,但这会重置输入。有没有办法单独配置音频会话的输入和输出?
谢谢。