gpt4 book ai didi

c# - Cortana API 是否可用于桌面应用程序?

转载 作者:可可西里 更新时间:2023-11-01 08:04:22 25 4
gpt4 key购买 nike

我想使用新的 Cortana 引擎在 Windows 10 上开发 Windows 应用程序。

不幸的是,据我所知,它似乎只适用于 Windows Phone 8.1 项目(例如,我没有找到从不同类型的 Visual Studio 项目访问 Windows.Media.SpeechRecognition 命名空间的方法).

我也找不到好的 API 文档,只能找到一些非常简单的示例。

编辑:

根据 Peter Torr 的回答,我写了一些代码。我已经能够识别一些单词,但是当引擎尝试识别一些简单的单词(如“你好”)时似乎遇到了困难,而 Cortana 成功识别了它。

我做错了什么吗?

public static class SpeechSynthetizerManager
{
private static readonly SpeechSynthesizer synth = new SpeechSynthesizer();
private static readonly SpeechRecognitionEngine speechRecognitionEngine = new SpeechRecognitionEngine();

public static event EventHandler<SpeechRecognizedEventArgs> SpeechRecognized
{
add { speechRecognitionEngine.SpeechRecognized += value; }
remove { speechRecognitionEngine.SpeechRecognized -= value; }
}

public static event EventHandler<RecognizeCompletedEventArgs> RecognizeCompleted
{
add { speechRecognitionEngine.RecognizeCompleted += value; }
remove { speechRecognitionEngine.RecognizeCompleted -= value; }
}

static SpeechSynthetizerManager()
{
synth.SelectVoiceByHints(VoiceGender.Female);

speechRecognitionEngine.LoadGrammar(new DictationGrammar());

speechRecognitionEngine.SetInputToDefaultAudioDevice();
}

public static void Speak(string message)
{
synth.Speak(message);
}

public static void Listen()
{
speechRecognitionEngine.RecognizeAsync();
}
}

最佳答案

严格来说,Cortana API 是 Windows.ApplicationModel.VoiceCommands namespace 中的那些。 .这些不适用于经典(“桌面”)应用程序,但可用于 Windows 10 上的通用 Windows 应用程序。经典应用程序无法使用 API 的原因是因为它们依赖于诸如后台任务和应用程序身份之类的概念,这些概念不会t 适用于经典应用。

Windows.Media.SpeechRecognition namespace 中的类型也不适用于经典应用程序,但我不确定那里的限制是什么。

注意:作为 @Andrew Pilley提到,您可能能够让这些类型在桌面应用程序中工作,但目前并未明确支持。

如果您只想在 .NET 应用程序中进行语音识别,您可以使用 System.Speech.Recognition namespace ,它使用相同的底层技术。

关于c# - Cortana API 是否可用于桌面应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31930452/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com