C# 将 RecognizedAudio 转换为文本

C# convert RecognizedAudio to text

我想让我的程序将我的 RecognizedAudio 转换为文本,这是我尝试过的方法

RecognizedAudio nameAudio = result.GetAudioForWordRange(result.Words[2], result.Words[result.Words.Count - 1]);
MessageBox.Show(nameAudio.ToString());

它输出这条信息:

System.Speech.Recognition.RecognizedAudio

有人能帮我解决这个问题吗?非常感谢!

提前致谢

ToString() 只是 class 的默认 ToString() 方法,调用它实际上会将其转换为字符串,这不是您要查找的方法。

来自SpeechRecognizer

您必须为您的 class 添加处理程序:

 static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)  
    {  
      Console.WriteLine("Speech recognized:  " + e.Result.Text);  
      Console.WriteLine();  
      Console.WriteLine("Semantic results:");  
      Console.WriteLine("  The flight origin is " + e.Result.Semantics["origin"].Value);  
      Console.WriteLine("  The flight destination is " + e.Result.Semantics["destination"].Value);  
    }  

上面的代码是我参考过的微软页面中的最后几行代码。