Я хочу создать приложение Windows в Windows 10 с помощью нового движка Cortana.
К сожалению, насколько мне известно, он доступен только для Windows Phone 8.1 (например, я не нашел способ получить доступ к пространству имен Windows.Media.SpeechRecognition из другого типа проекта Visual Studio).
Также мне не удалось найти хорошую документацию API, только некоторые очень простые примеры.
Edit:
На основании ответа Питера Торра я написал код. Я смог распознать какое-то слово, но, похоже, движок работает, когда он пытался распознать некоторые простые слова типа "Hello", в то время как 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();
}
}