可能重复:从音频文件而不是麦克风识别语音
我有这个程序,它使用麦克风设备进行语音识别 . 这是程序中的一个简短片段 .
但是,我打算做的不是使用微电脑设备,而是打算将声音文件传递给这个语音识别引擎,该引擎应该识别该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 回答
为什么不试试SetInputToAudioStream()?
Solution:
您应该将输入模式配置为wav:
This article讨论了如何使用System.Speech命名空间中的识别器识别音频文件 .
Other notes:
您需要确保您的音频文件采用正确/支持的格式
您还应该查看Microsoft Speech Platform 11(截至帖子的最新版本) . 它拥有最新的Microsoft语音技术,可以提高您尝试做的任何事情的准确性 .
您可以read more here并通过Google搜索"Microsoft Speech Platform SDK 11 Download"下载SDK
祝好运!