2013-05-17 10 views
5

In meiner Anwendung möchte ich wissen, ob es eine TTS-Engine gibt, die Hindi-Text lesen kann. meinen Codesprechen mit TTS wie Hindi

tts.setLanguage(Locale.US); 

leider Hindi wird nicht von Android unterstützt. Siehe die Liste der Regionen unterstützt unter

http://developer.android.com/reference/java/util/Locale.html 

Wie werde ich tun die hindi jede Hilfe locale? Vielen Dank im Voraus

+0

Überprüfung des untenstehenden Link [Lokalisierung in Android für indische Regionalsprachen] [1] [1]: http: // Stackoverflow. com/questions/10943811/how-to-set-benutzerdefinierte-locale-for-indian-regional-sprachen-in-android-emulator – Pinki

+1

@Praveena_Pinki er möchte, wie Hindi TTS (Tes t to rede in hindi locale) Da es keine Unterstützung von Google gibt, erwartet er auch andere 3rd Party Libs. –

+0

ja padma kumar hast du recht – peter

Antwort

6

Hindi wird von Android unterstützt - es ist nur, dass es keine Locale Konstante dafür gibt. Wenn Sie sich http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes anschauen, dann ist hi der Code ISO 639-1 für Hindi. Beachten Sie auch, dass Android/Java auch den ISO 39-3-Code verwenden kann, der für Hindi hin ist.

Daher müssen Sie entweder verwenden:

tts.setLanguage(new Locale("hi")); 

oder:

tts.setLanguage(new Locale("hin")); 

Sie auch einen Text-to-Speech Synthesizer verwenden müssen, die Hindi unterstützt, sonst werden Sie bekommen "Sprache nicht unterstützt" Fehler. Der eSpeak-Text-zu-Sprache-Synthesizer unterstützt Hindi.

Ich habe einen Port von eSpeak für Android 4.0 und höher [1]/[2] für £ 0,99. Dies hat viele Verbesserungen und Fehlerbehebungen über den freien Port der Augen und wird mit den neuesten eSpeak-Versionen auf dem neuesten Stand gehalten.

  1. http://reecedunn.co.uk/espeak-for-android
  2. https://play.google.com/store/apps/details?id=com.reecedunn.espeak
+0

hat für mich gearbeitet :) – Bawa

+0

@reece Hallo mein Herr, kann mir bitte für Kannada Language helfen. –

+0

@reece Ich habe versucht (tts.setLanguage (Locale.forLanguageTag ("kan")); so, aber nicht woking –