I'm working on an android app, that offers continuous Speech Recognition.
Everything works fine except the silence delay after last word pronounced which is around 6 seconds.
I have seen that it's a known bug in Android, but is there any alternatives / hacks / workaround for this ?
Intent intent = new Intent (RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
intent.putExtra (RecognizerIntent.EXTRA_LANGUAGE_PREFERENCE, Locale.getDefault ());
intent.putExtra (RecognizerIntent.EXTRA_LANGUAGE_MODEL, RecognizerIntent.LANGUAGE_MODEL_WEB_SEARCH);
intent.putExtra (RecognizerIntent.EXTRA_CONFIDENCE_SCORES, true);
intent.putExtra (RecognizerIntent.EXTRA_SPEECH_INPUT_COMPLETE_SILENCE_LENGTH_MILLIS, 0);
intent.putExtra (RecognizerIntent.EXTRA_SPEECH_INPUT_POSSIBLY_COMPLETE_SILENCE_LENGTH_MILLIS, 0);
intent.putExtra (RecognizerIntent.EXTRA_CALLING_PACKAGE, getApplication ().getPackageName ());
speechRecognizer.startListening (intent);
So basically RecognizerIntent.EXTRA_SPEECH_INPUT_COMPLETE_SILENCE_LENGTH_MILLIS
is not taken into consideration at all.
Is there any way to solve this ? or an alternative API ? (I have used PocketSphinx but couldn't make it work for sentences and words outside the dictionary).