Android Die kontinuierliche Spracherkennung gibt ERROR_NO_MATCH zu schnell zurück

8

Ich habe versucht, den kontinuierlichen SpeechRecognition-Mechanismus zu implementieren. Wenn ich die Spracherkennung starte, bekomme ich folgende Meldungen in logcat:

%Vor%

und dieser Fehler 7, was ERROR_NO_MATCH bedeutet. Wie Sie sehen, heißt es fast sofort. Ist das nicht unangemessen?

Hier sind vollständige Protokolle zwischen startSpeechRecognition und dem ersten Fehler 7:

%Vor%

Und hier ist mein Code:

%Vor%

Mein Gerät ist Samsung Note5. Jeder weiß, wie kann ich das beheben?

    
karlkar 05.06.2016, 10:37
quelle

2 Antworten

2

Dies ist ein bekannter Fehler, über den ich einen Bericht einreichte. Sie können das Problem mit diesem einfachen Kern reproduzieren.

Der einzige Weg ist es, das SpeechRecognizer -Objekt jedes Mal neu zu erstellen. siehe Bearbeiten . Dies führt zu anderen Problemen, wie im Hauptteil erwähnt, aber keine, die ein Problem für Ihre App verursachen.

Google wird schließlich einen Weg finden, um kontinuierliches Hören zu verhindern, da es nicht das ist, wofür die API entwickelt wurde. Sie sollten besser PocketSphinx als langfristige Option betrachten.

BEARBEITEN 22.06.16 - Bei der letzten Google-Veröffentlichung hat sich das Verhalten verschlechtert. Eine neue Lösung ist mit dem Kern verknüpft, der die RecognitionListener ableitet, um nur auf "echte" Rückrufe zu reagieren.

EDIT 01.07.16 " - Siehe diese Frage für ein weiterer neuer Fehler

    
brandall 05.06.2016, 12:18
quelle
1

Ja, Sie haben Recht. Google Spracherkennung ist mit ihrer "Google App" verknüpft. Seit der Version 5.10 (Februar 2016) läuft alles schief und mit der letzten Version 6 ist es ein Durcheinander! Sehen Sie meinen Thread hier im Basic4Android-Forum: Ссылка

    
Rick Harris 12.07.2016 18:22
quelle

Tags und Links