首页 文章

语音识别从音频文件识别而不是麦克风[重复]

提问于
浏览
1

可能重复:从音频文件而不是麦克风识别语音

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

但是,我打算做的不是使用微电脑设备,而是打算将声音文件传递给这个语音识别引擎,该引擎应该识别该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

    为什么不试试SetInputToAudioStream()

  • 3

    Solution:

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

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

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

    Other notes:

    • 您需要确保您的音频文件采用正确/支持的格式

    • 您还应该查看Microsoft Speech Platform 11(截至帖子的最新版本) . 它拥有最新的Microsoft语音技术,可以提高您尝试做的任何事情的准确性 .

    您可以read more here并通过Google搜索"Microsoft Speech Platform SDK 11 Download"下载SDK

    祝好运!

相关问题