带SFSpeechRecognizer的单个口头信件?

时间:2016-12-11 13:30:07

标签: swift sfspeechrecognizer

我正在写一个拼写蜜蜂应用程序。我一直在使用SFSpeechRecognizer,但它并没有很好地使用单个字母,因为我猜它正在寻找口头短语。

我一直在谷歌搜索SFSpeechRecognizer一段时间,并且没有找到很多关于识别单个字母的信息。

我必须生成一个SFSpeechRecognizer在说出字母时才会启动的内容列表,并且只根据该列表进行验证。

SFSpeechRecognizer中是否有一些设置可以让它更好地处理单个口头字母?

1 个答案:

答案 0 :(得分:1)

检查答案:https://stackoverflow.com/a/42925643/1637953

声明String变量以保存已识别的单词。

  1. 在音频会话开始时创建Timer
    strWords = "" var timer = NSTimer.scheduledTimerWithTimeInterval(2, target: self, selector: "didFinishTask", userInfo: nil, repeats: false)
  2. recognitionTaskWithRequest块中添加以下代码:
    strWords = result.bestTranscription.formattedString
  3. 如果计时器过期并且didFinishTalk被调用,则:
    if strWords == "" { timer.invalidate() timer = NSTimer.scheduledTimerWithTimeInterval(2, target: self, selector: "didFinishTalk", userInfo: nil, repeats: false) } else { // do your stuff using "strWord" }