如何在用户停止讲话时停止Apple Watch中的语音识别(听写)?

时间:2016-02-08 11:27:23

标签: ios swift apple-watch watch-os-2

我在Apple Watch(WatchOS 2.1,iOS 9.2.1)中成功实现了原生语音识别(Dictation),基本上我使用了这段代码,带有一个空的“菜单选项数组”:

func launchDictation(){
        self.presentTextInputControllerWithSuggestions([], allowedInputMode: WKTextInputMode.Plain, completion:{
            (results) -> Void in
                let aResult = results?[0] as? String
                if(!(aResult == nil)){
                    print(aResult)
                    print("SHORT ASR COMPLETED")
                    dispatch_async(dispatch_get_main_queue()) {
                        // Update UI
                    }
                }//end if
            })//end show voice menu
    }

因为它是......用户点击“发言按钮”,然后弹出一个视图(显示用户说话时检测到的单词和一个漂亮的小音量图表)。现在,用户必须说话,然后点击“完成”以完成语音识别。如果检测到短语但未点击“完成”,则“听写失败”最终将出现在屏幕上。有人知道如何实现一些侦听器或委托,在用户停止说话几秒钟后检测到听写过程结束的时间吗?

0 个答案:

没有答案