使用C#语音文本
作者:互联网
我正在尝试使用C#语言设计文本编辑器并为正常文件功能实现语音识别,这是否可以实现.
如果我重复之前提出的问题,我感到非常抱歉.
我只是想知道是否有方法使用C#将语音转换为文本.
你的帮助非常宝贵.
等待回复.
提前致谢.
解决方法:
以下是使用C#和System.Speech从语音转换为文本的完整示例
代码可分为两个主要部分:
配置SpeechRecognitionEngine对象(及其必需元素)
处理SpeechRecognized和SpeechHypothesized事件.
第1步:配置SpeechRecognitionEngine
_speechRecognitionEngine = new SpeechRecognitionEngine();
_speechRecognitionEngine.SetInputToDefaultAudioDevice();
_dictationGrammar = new DictationGrammar();
_speechRecognitionEngine.LoadGrammar(_dictationGrammar);
_speechRecognitionEngine.RecognizeAsync(RecognizeMode.Multiple);
此时,您的对象已准备好开始从麦克风转录音频.您需要处理一些事件,以便实际访问结果.
第2步:处理SpeechRecognitionEngine事件
_speechRecognitionEngine.SpeechRecognized -= new EventHandler(SpeechRecognized);
_speechRecognitionEngine.SpeechHypothesized -= new EventHandler(SpeechHypothesizing);_speechRecognitionEngine.SpeechRecognized += new EventHandler(SpeechRecognized);
_speechRecognitionEngine.SpeechHypothesized += new EventHandler(SpeechHypothesizing);private void SpeechHypothesizing(object sender,
SpeechHypothesizedEventArgs e) {
///real-time results from the engine
string realTimeResults = e.Result.Text; }private void SpeechRecognized(object sender, SpeechRecognizedEventArgs
e) {
///final answer from the engine string finalAnswer =
e.Result.Text; }
而已.如果您想使用预先录制的.wav文件而不是麦克风,则可以使用
_speechRecognitionEngine.SetInputToWaveFile(pathToTargetWavFile);
代替
_speechRecognitionEngine.SetInputToDefaultAudioDevice();
这些课程中有许多不同的选项,值得更详细地探讨.
标签:c,net,speech-to-text 来源: https://codeday.me/bug/20190530/1186771.html