Bluetooth наушники отключаются при вызове AVAudioEngine.inputNode - PullRequest
0 голосов
/ 14 мая 2018

Я пытаюсь реализовать голосовые команды, которые будут встроены в мое приложение.Я могу успешно заставить его работать с этим кодом:

    let node = audioEngine.inputNode

    let recordingFormat = node.outputFormat(forBus: 0)
    node.installTap(onBus: 0, bufferSize: 1024,
                    format: recordingFormat) {
                        (buffer, _) in
                        self.recognitionRequest!.append(buffer)
    }
    audioEngine.prepare()
    try! audioEngine.start()

Обратите внимание, что audioEngine установлен в AVAudioEngine() в классе.

Хотя код работает нормально,проблема возникает, когда у меня подключены наушники Bluetooth.Линия let node = audioEngine.inputNode не позволяет моему iPhone подключаться и видеть мои наушники Bluetooth.

Если я удаляю эту линию, мои наушники подключаются, как и ожидалось, однако это означает, что я не могу распознать речь, так как требуется первая линия.

Как использовать голосовые команды и при этом использовать наушники Bluetooth?
Если это помогает, я хочу, чтобы голосовые команды прослушивались с микрофона iPhone, но я хочу, чтобы звук воспроизводилсячерез наушники.Если наушники не подключены, звук должен воспроизводиться и с iPhone.

...