语音识别从音频文件而不是麦克风识别

时间:2012-06-26 17:35:05

标签: c# speech-recognition

  

可能重复:
  speech recognition from audio file instead of microphone

我有这个程序使用麦克风设备进行语音识别。这是程序中的一个简短片段。

然而,我打算做的不是使用微电脑设备,我打算将声音文件传递给这个语音识别引擎,该引擎应该识别该aduio文件中的文本并重新调整结果。

    SpeechRecognitionEngine speechRecognitionEngine = new SpeechRecognitionEngine();
    List<Word> words = new List<Word>();
    public TestSpeech()
    {
        speechRecognitionEngine = createSpeechEngine("en-us");
        speechRecognitionEngine.SpeechRecognized += new EventHandler<SpeechRecognizedEventArgs>(engine_SpeechRecognized);
        loadGrammarAndCommands();            

        speechRecognitionEngine.SetInputToDefaultAudioDevice();
        speechRecognitionEngine.RecognizeAsync(RecognizeMode.Multiple);
    }

我应该怎样做而不是speechRecognitionEngine.SetInputToDefaultAudioDevice();

语音识别桌面示例,以便从音频设备识别:http://www.codeproject.com/Articles/380027/Csharp-Speech-to-Text

2 个答案:

答案 0 :(得分:3)

为什么不试试SetInputToAudioStream()

答案 1 :(得分:0)

<强>解决方案:

您应该将输入模式配置为wav:

// Configure the input to the recognizer.
recognizer.SetInputToWaveFile(@"c:\temp\SampleWAVInput.wav");

This article讨论了如何使用识别器识别音频文件 System.Speech命名空间。

其他说明:

  1. 您需要确保您的音频文件采用正确/支持的格式
  2. 您还应该查看Microsoft Speech Platform 11(截至帖子的最新版本)。它拥有最新的Microsoft语音技术,可以提高您尝试做的任何事情的准确性。
  3. 您可以通过Google搜索“Microsoft Speech Platform SDK 11下载”来read more here下载SDK

    祝你好运!