The app that i'm currently writing needs the SpeechRecognition to be EXTREMELY sensitive, meaning that a slight error in enunciation could result in an error. From what i'm using right now, even if i say "pactice" instead of "practice", it still recognizes it as "practice", which i absolutely don't want. I just want to know if there is a way of making it more sensitive? if so, how?
Code that i have right now:
sr = SpeechRecognizer.createSpeechRecognizer(this);
sr.setRecognitionListener(new SListener());
srIntent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
srIntent.putExtra(RecognizerIntent.EXTRA_LANGUAGE, "en-US");
srIntent.putExtra(RecognizerIntent.EXTRA_CALLING_PACKAGE,
this.getPackageName());
srIntent.putExtra(RecognizerIntent.EXTRA_MAX_RESULTS, 3);
You are delegating the task to androids' SpeechRecognizer so you can't do anything more. Anyway, i think that Google is doing a great work with that.
But you have two alternatives: *Optimizing the text result (Good idea) *making your own Recognizer however i think that it will be too complicated!
Good luck!