如何使用AVFoundation在音频输入源(蓝牙,内置麦克风)之间切换

时间:2015-12-08 17:24:28

标签: ios bluetooth avfoundation

我目前在builtInMicrophone和蓝牙麦克风,iOS8之间的音频输入源切换时遇到问题

我试图找到在线解决方案,却一无所获:(

任何人,请告诉我正确的实现方式。

期待你的帮助!

1 个答案:

答案 0 :(得分:1)

我有这段代码。

bluetoothInput只是一个在蓝牙麦克风和普通麦克风之间切换的布尔值。

find_library

}

-(void) changeBluetoothInput{


if (SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"7.0"))
{
    if(self.bluetoothInput){
        //[[AVAudioSession sharedInstance] setActive:NO error:nil];

        [[AVAudioSession sharedInstance] setActive:YES error:nil];
        AVAudioSessionPortDescription* _bluetoothPort = [self bluetoothAudioDevice];
        [[AVAudioSession sharedInstance] setPreferredInput:_bluetoothPort
                                                     error:nil];
    }else{
        //[[AVAudioSession sharedInstance] setActive:NO error:nil];
        //[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayAndRecord error:nil];
        [[AVAudioSession sharedInstance] setActive:YES error:nil];
        AVAudioSessionPortDescription* _bluetoothPort = [self normalAudioDevice];
        [[AVAudioSession sharedInstance] setPreferredInput:_bluetoothPort
                                                     error:nil];
    }
}