无法在iPad + Swift 3上使用蓝牙扬声器进行录制

时间:2017-06-11 23:59:07

标签: ios swift swift3 avfoundation avaudiorecorder

我想用连接到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”)
   }

1 个答案:

答案 0 :(得分:2)

好的我解决了这个问题。 如果您想使用蓝牙扬声器或麦克风进行AVAudioRecording,请将选项设置为" setCategory"方法如下。

try! session.setCategory(AVAudioSessionCategoryPlayAndRecord,
        mode:AVAudioSessionModeDefault,
        options:AVAudioSessionCategoryOptions.allowBluetoothA2DP)

感谢。