1

我想使用 iosSFSpeechRecognizer来识别一组封闭的单词和短语。有没有办法指定这些并消除所有其他可能性?我似乎找不到办法做到这一点。

4

2 回答 2

0

您可以尝试使用SFSpeechAudioBufferRecognitionRequest的contextualStrings属性 设置高优先级或设置一些不在词汇表中的单词。有关更多信息,请查看此处:https ://developer.apple.com/documentation/speech/sfspeechrecognitionrequest/1649391-contextualstrings?language=objc

  SFSpeechAudioBufferRecognitionRequest *recognitionRequest = [[SFSpeechAudioBufferRecognitionRequest alloc] init];
    recognitionRequest.contextualStrings = @[@"Your specific word", @"short custom phrases that are unique to your app"];
于 2021-10-13T14:49:43.120 回答
0

我认为你不能限制SFSpeechRecognizer's 的词汇,但只有当你想要的单词被识别时,你才能触发动作。

当你得到你的输出时,你可以尝试这样的事情:

self.recognitionTask = speechRecognizer?.recognitionTask(with: recognitionRequest, resultHandler: { (result, error) in
    if result == "Desired word one" {
        // Do something
    } else if result == "Desired word two" {
        // Do something else
    } else {
        // Don't do anything
    }
})
于 2020-10-08T11:07:31.627 回答