Search code examples
androidspeech-recognitionspeech

Is it possible to make SpeechRecognition more sensitive?


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);

Solution

  • 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!