PapstRatze
Lt. Junior Grade
- Registriert
- Aug. 2008
- Beiträge
- 436
Tag,
wollte aus Spaß mal schauen wie die Spracherkennung mit der neuen Speech SDK von Bing läuft, stoße aber gerade auf einen Fehler den ich nicht nachvollziehen kann, wollte mal nachhaken ob schon jemand auf etwas ähnliches gestoßen ist.
Im Programm versuche ich mittels SpeechRecognitionGrammarFileConstraint, relativ straightforward auf Grundlage des Beispieles auf Bing Befehle vom Nutzer zu empfangen.
Mein Programm soll nach verschiedenen Angaben lauschen (funktioniert auch soweit) und dann nachfragen ob diese richtig verstanden wurde. Dafür soll jetzt das GrammarFileConstraint welches nach diesen aussagen horcht disabled werden und eine weitere welche nur nach ja/nein in seinen verschiedenen Formen horcht soll enabled werden. Das Problem ist aber nun folgendes nach der Initialisierung (siehe Code) erhalte ich beim Aufruf "await this.speechRecognizer.RecognizeAsync();" die Fehlermeldung: HRESULT 0x8004550C, welche laut Internetsuche sagt, dass keine GrammarFileConstraint enabled war. Aber num ist eindeutig 1 (siehe code)
, kann also nicht wirklich nachvollziehen warum der Fehler kommt.
Falls jemanden der Fehler schon bekannt ist, würde ich mich über Tipps freuen. Bis dahin probiere ich noch weiter blind herum ob ich den Fehler eliminieren kann.
wollte aus Spaß mal schauen wie die Spracherkennung mit der neuen Speech SDK von Bing läuft, stoße aber gerade auf einen Fehler den ich nicht nachvollziehen kann, wollte mal nachhaken ob schon jemand auf etwas ähnliches gestoßen ist.
Im Programm versuche ich mittels SpeechRecognitionGrammarFileConstraint, relativ straightforward auf Grundlage des Beispieles auf Bing Befehle vom Nutzer zu empfangen.
Mein Programm soll nach verschiedenen Angaben lauschen (funktioniert auch soweit) und dann nachfragen ob diese richtig verstanden wurde. Dafür soll jetzt das GrammarFileConstraint welches nach diesen aussagen horcht disabled werden und eine weitere welche nur nach ja/nein in seinen verschiedenen Formen horcht soll enabled werden. Das Problem ist aber nun folgendes nach der Initialisierung (siehe Code) erhalte ich beim Aufruf "await this.speechRecognizer.RecognizeAsync();" die Fehlermeldung: HRESULT 0x8004550C, welche laut Internetsuche sagt, dass keine GrammarFileConstraint enabled war. Aber num ist eindeutig 1 (siehe code)
Code:
private async void InitializeSpeechRecognizer()
{
// Create an instance of SpeechRecognizer.
this.speechRecognizer = new Windows.Media.SpeechRecognition.SpeechRecognizer();
// Add a grammar file constraint to the recognizer.
var storageFile = await Windows.Storage.StorageFile.GetFileFromApplicationUriAsync(new Uri("ms-appx:///grammar.grxml"));
var grammarFileConstraint = new Windows.Media.SpeechRecognition.SpeechRecognitionGrammarFileConstraint(storageFile, "grammar");
this.speechRecognizer.Constraints.Add(grammarFileConstraint);
storageFile = await Windows.Storage.StorageFile.GetFileFromApplicationUriAsync(new Uri("ms-appx:///janein.grxml"));
grammarFileConstraint = new Windows.Media.SpeechRecognition.SpeechRecognitionGrammarFileConstraint(storageFile, "janein");
this.speechRecognizer.Constraints.Add(grammarFileConstraint);
// Compile the constraint.
await this.speechRecognizer.CompileConstraintsAsync();
speechRecognizer.Constraints.Where(x => x.Tag == "janein").First().IsEnabled = false;
speechRecognizer.Constraints.Where(x => x.Tag == "grammar").First().IsEnabled = true;
int num = speechRecognizer.Constraints.Count(x => x.IsEnabled == true);
RecognizeWithSRGSGrammarFileConstraintContinuously();
}
Falls jemanden der Fehler schon bekannt ist, würde ich mich über Tipps freuen. Bis dahin probiere ich noch weiter blind herum ob ich den Fehler eliminieren kann.