实时录音&播放,使输入音频为系统,输出音频为蓝牙端
NSError*error;
AVAudioSession *audioSession = [AVAudioSession sharedInstance];
[audioSession setCategory:AVAudioSessionCategoryPlayAndRecord mode:AVAudioSessionModeDefault options:AVAudioSessionCategoryOptionAllowBluetoothA2DP error:&error];//主要是这句
[audioSession setPreferredSampleRate:44100 error:&error];
[audioSession setPreferredInputNumberOfChannels:1 error:&error];
[audioSession setPreferredIOBufferDuration:0.05 error:&error];
通过删除< code >。allowBluetooth来自AVAudioSession的< code>categoryOptions,它不允许HFP,这是一种使用蓝牙设备作为输入的协议。因此,它会自动将其输入路径改为内置麦克风。如果您有多个输入(例如,如果您的设备连接到usbAudio或lineIn输入设备),您仍然需要使用< code>setPreferredInput来将您的输入路由更改为内置麦克风。
网友评论