In my application , I wish to know if there is any tts engine that can read hindi text . my code
tts.setLanguage(Locale.US);
unfortunately Hindi is not supported by Android. See the list of Locales supported below
http://developer.android.com/reference/java/util/Locale.html
How will i do the hindi locale any help ? Thanks in advance
Hindi is supported by Android -- it is just that there isn't a
Locale
constant for it.If you look at http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes, then
hi
is the ISO 639-1 code for Hindi. Also note that Android/Java may also use the ISO 39-3 code which for Hindi ishin
.Therefore, you need to use either:
or:
You will also need to use a text-to-speech synthesiser that supports Hindi, otherwise you will get a "language not supported" error. The eSpeak text to speech synthesiser supports Hindi.
I have a port of eSpeak for Android 4.0 and later [1]/[2] for £0.99. This has many improvements and bug fixes over the eyes free port and is kept up-to-date with the latest eSpeak releases.