【发布时间】:2020-07-09 03:39:30
【问题描述】:
我正在尝试使用适用于 iOS 的 Microsoft Cognitive Services Speech to Text SDK。到目前为止,我已经设法让识别Once 函数运行没有任何问题,但是 Swift 的样本很少,而且我似乎无法使用 Swift 进行连续识别。请记住,我通常使用 React Native/JS 并且对 Swift 有非常基本的了解。话虽如此,任何帮助将不胜感激。这是我目前所拥有的:
func recognizeFromMic() {
var speechConfig: SPXSpeechConfiguration?
do {
try speechConfig = SPXSpeechConfiguration(subscription: key, region: region)
} catch {
print("error \(error) happened")
speechConfig = nil
}
speechConfig?.speechRecognitionLanguage = "en-US"
let audioConfig = SPXAudioConfiguration(microphone: nil)
let reco = try! SPXSpeechRecognizer(speechConfiguration: speechConfig!, audioConfiguration: audioConfig!)
reco.addRecognizingEventHandler() {reco, evt in
print("Received intermediate result event. SessionId: \(evt.sessionId), Recognition Result: \(evt.result.text ?? "(no result)"), Status: \(evt.result.reason), Offset: \(evt.result.offset) Duration: \(evt.result.duration), ResultID: \(evt.result.resultId)")
}
reco.addRecognizedEventHandler() {reco, evt in
print("Received final result event. SessionId: \(evt.sessionId), Recognition Result: \(evt.result.text ?? "(no result)"), Status: \(evt.result.reason), Offset: \(evt.result.offset) Duration: \(evt.result.duration), ResultID: \(evt.result.resultId)")
}
reco.addSessionStoppedEventHandler() {reco, evt in
print("Received session stopped event. SessionId: \(evt.sessionId)")
}
print("Listening...")
do {
try reco.startContinuousRecognition()
} catch {
print("error \(error) happened")
}
}
运行上述函数时出现以下错误:
Error Domain=SPXErrorDomain Code=21 "Error: Exception with an error code: 0x15 (SPXERR_MIC_ERROR)
【问题讨论】:
-
如果有帮助,我找到了一个 Java 项目:github.com/Azure-Samples/cognitive-services-speech-sdk/tree/…
标签: swift speech-recognition speech-to-text azure-cognitive-services