Ich versuche, Continues Speech Recognition in meiner Android-Anwendung zu implementieren. Ich habe diese Link Codierung gefolgt. Dies funktioniert weiter vor zwei Tagen. Aber jetzt, wenn die Spracherkennung nicht gut funktioniert, wird es mehr Zeit für das Sprachhören brauchen. wie man dieses Problem löst. Bitte führen Sie mich. DankWie füge ich die kontinuierliche Spracherkennung in meine Android-Anwendung ein?
Recognition Codierung:
// starts the service
protected void startListening() {
try {
initSpeech();
Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
//intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,RecognizerIntent.LANGUAGE_MODEL_WEB_SEARCH);
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE, "en-US");
if (!intent.hasExtra(RecognizerIntent.EXTRA_CALLING_PACKAGE))
{
intent.putExtra(RecognizerIntent.EXTRA_CALLING_PACKAGE,
"com.dummy");
}
sr.startListening(intent);
} catch(Exception ex) {
Log.d("SpeechRecognitionService", "Bei der Initialisierung des SpeechRecognizers ist ein Fehler aufgetreten");
}
}
// stops the service
protected void stopListening() {
if (sr != null) {
sr.stopListening();
sr.cancel();
sr.destroy();
}
sr = null;
}
protected void initSpeech() {
if (sr == null) {
sr = SpeechRecognizer.createSpeechRecognizer(this);
if (!SpeechRecognizer.isRecognitionAvailable(context)) {
Toast.makeText(context, "Speech Recognition is not available",
Toast.LENGTH_LONG).show();
finish();
}
sr.setRecognitionListener(VoiceRecognitionListener.getInstance());
}
}
Benutzer beginnt zu sprechen
public void onBeginningOfSpeech() {
System.out.println("Starting to listen");
}
public void onBufferReceived(byte[] buffer) { }
// User finished speaking
public void onEndOfSpeech() {
System.out.println("Waiting for result...");
}
Wird ein Fehler angezeigt? In welchem Fall, welcher Fehler? – Zoe
kein Fehler .. aber Sprachhören dauert mehr Zeit @ Polarbear – Raj
nehmen mehr Zeit wie? – Zoe