我尝试编写一些语音识别应用程序,但发现以下代码:

SpeechRecognitionEngine recognitionEngine = new SpeechRecognitionEngine();

recognitionEngine.SetInputToDefaultAudioDevice();
recognitionEngine.LoadGrammar(new DictationGrammar());

RecognitionResult result = recognitionEngine.Recognize(new TimeSpan(0, 0,20));
foreach (RecognizedWordUnit word in result.Words)
{
     Console.Write(word.Text);
}

但是,当我想调试它时,它在命令上显示错误访问被拒绝HRESULT:0x80070005(E_ACCESSDENIED)): IdentificationEngine.SetInputToDefaultAudioDevice();

(已设置对System.Speech的引用)。我已经浏览了许多线程,但是找不到答案。
我应该在某处设置对麦克风的访问权限,还是应该解决该问题?

感谢你的回答 ;)

最佳答案

您需要在窗口上安装语音识别和文本到语音功能。
如果您使用的是Windows 10,请转到开始菜单并在其中写入设置。

打开设置页面。

开放时间和语言。

打开地区和语言标签。

如果不存在英语,请添加英语作为一种语言。

单击以英语。然后单击选项。

然后在“语音”选项卡下,单击“下载”。

然后,Windows将下载所需的软件包。

完成所有操作后,重新启动系统。

关于c# - 拒绝访问HRESULT : 0x80070005 (E_ACCESSDENIED)) on SetInputToDefaultAudioDevice();,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13498328/

10-10 13:57