我正在使用新的 Apple Speech 库,但在几秒钟的沉默后,我找不到翻转 isFinal 布尔并结束转录的命令。有谁知道沉默后如何结束任务?
这是我收到语音转录结果的代码。
recognitionRequest.shouldReportPartialResults = true
speechRecogTask = speechRecognizer.recognitionTask(with: recognitionRequest, resultHandler: { (result, error) in
var isFinal = false
if result != nil {
self.textField.text = result?.bestTranscription.formattedString
isFinal = (result?.isFinal)!
}
if error != nil || isFinal {
self.audioEngine.stop()
inputNode.removeTap(onBus: 0)
self.speechRecogRequest = nil
self.speechRecogTask = nil
}
})
有任何想法吗?