//void _rg_SpeechRecognized(object sender, SpeechRecognizedEventArgs e) void _rg_SpeechRecognized(Object sender, RecognitionEventArgs e) { var conf = e.Confidence; if (conf < 0.5) { return; } var txt = e.Text; // 语音识别前,必须先识别前缀名称,然后几秒内识别关键字 if (_Tip.AddSeconds(3) < DateTime.Now) { // 此时只识别前缀 if (txt != Name) { return; } XTrace.WriteLine("语音识别:{0} {1}", txt, conf); // 现在可以开始识别关键字啦 _Tip = DateTime.Now; } else { XTrace.WriteLine("语音识别:{0} {1}", txt, conf); if (_dic.TryGetValue(txt, out var func)) { func(); } } }
void _rg_SpeechRecognized(Object sender, SpeechRecognizedEventArgs e) { if (e.Result == null) { return; } var ev = new RecognitionEventArgs(e.Result.Confidence, e.Result.Text); if (SpeechRecognized != null) { SpeechRecognized.Invoke(sender, ev); } }