我想用连接到iPad的蓝牙扬声器录制。 但是,当使用AVAudioRecorder时,它会变成内置扬声器。
let session = AVAudioSession.sharedInstance()
try! session.setCategory(AVAudioSessionCategoryPlayAndRecord)
try! session.setActive(true)
let recordSetting: [String: Any] = [AVSampleRateKey: NSNumber(value: 16000),
AVFormatIDKey: NSNumber(value: kAudioFormatLinearPCM),
AVLinearPCMBitDepthKey: NSNumber(value: 16),
AVNumberOfChannelsKey: NSNumber(value: 1),
AVEncoderAudioQualityKey: NSNumber(value: AVAudioQuality.max.rawValue)
];
do {
self.audioRecorder = try AVAudioRecorder(url: url as URL, settings: recordSetting)
} catch {
fatalError(“error”)
}
答案 0 :(得分:2)
好的我解决了这个问题。 如果您想使用蓝牙扬声器或麦克风进行AVAudioRecording,请将选项设置为" setCategory"方法如下。
try! session.setCategory(AVAudioSessionCategoryPlayAndRecord,
mode:AVAudioSessionModeDefault,
options:AVAudioSessionCategoryOptions.allowBluetoothA2DP)
感谢。