SpeechRecognitionEngine sre = new SpeechRecognitionEngine();
Choices clist = new Choices();
// just assume I have added words in clist not shown here
Grammar gr = new Grammar(new GrammarBuilder(clist));
sre.RequestRecognizerUpdate();
sre.LoadGrammar(gr);
sre.SpeechRecognized += sre_SpeechRecognized;
sre.SetInputToDefaultAudioDevice();
sre.RecognizeAsync(RecognizeMode.Multiple);
void sre_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
{
//This only outputs words present in grammar
Console.WriteLine(e.Result.Text);
}
Kurz gesagt, warum brauchen wir eine Grammatik in der Spracherkennung. Was ist der Punkt, wenn eine Grammatik benötigt wird? Wenn der Erkenner Strings in der Grammatik entsprechen muss, warum können wir dann nicht einfach ausgeben, was der Spracherkenner ohne Grammatik erkannt hat?Warum brauchen Grammatik in der Spracherkennung C#
Danke und freundlicherweise korrigieren Sie mich, wo ich falsch liege.
Mögliche Duplikate von [Speech Recognition API ohne Grammatik C#] (http://stackoverflow.com/questions/9229187/speech-recognition-api-witout-grammar-c-sharp) –