Search code examples
speech-recognitionvoice

Speech-to-text conversion for Android App


Is there any low-computational-cost library framework to convert voice to text for an Android App (Java) without using web services or a server-side processing? What algorithms/paradigms can be used?


Solution

  • This greatly depends on what speech you want to recognize, versus what you don't, and your desired error rate.

    If you want to recognize only one word from a known user within otherwise silence at an accuracy rate slightly better than 50%, you might be able to develop or find some "low complexity" framework using audio level detection and/or sound fingerprinting.

    For continuous speech recognition within a very large vocabulary from an unknown user of an unknown accent or dialect at a 99.9%+ accuracy rate, you might be unlikely to find anything, even with using server side processing.

    For something in-between, you might want to take a look at using CPU's Pocketsphinx in an Android NDK build. But I'm not sure whether or not someone would call the computational complexity of this "low" enough, nor the accuracy rate good enough for their purposes.