2016-04-14 9 views
4

Ich möchte "A13" sprechen mit "A" ausgesprochen in "Englisch" und "13" in "Kantonesisch"; Unten ist der Code, den ich benutzt habe, aber es gibt mir nur "13" in Putonghua.Android Text-To-Speech sprechen Kantonesisch mit "Alphabet" programmatisch

tts.setLanguage(Locale.ENGLISH); 
tts.speak("A", TextToSpeech.QUEUE_FLUSH, null); 

tts.setLanguage(Locale.TRADITIONAL_CHINESE); 
tts.speak("13", TextToSpeech.QUEUE_FLUSH, null); 

Ich habe den Link unten gefolgt und installierte das tts-Paket für „Kantonesisch“, aber ich würde immer noch nicht „Kantonesisch“ in meiner app gesetzt. Allerdings, wenn ich Ekho TTS-Engine verwenden, würde es das gewünschte Ergebnis erzielen, aber die Stimme ist ein bisschen seltsam im Vergleich zu Google-Engine.

http://www.android-apk.com/2015/07/google-tts-%E6%96%87%E5%AD%97%E8%BD%89%E8%AA%9E%E9%9F%B3%E5%B7%B2%E6%94%AF%E6%8F%B4-%E7%B2%B5%E8%AA%9E-%E5%92%8C-%E4%B8%AD%E6%96%87/

Antwort

5

Möglicherweise möchten Sie tts.setLanguage(new Locale("zh", "HK")) oder tts.setLanguage(new Locale("yue", "HK")) versuchen. TRADITIONAL_CHINESE bezieht sich wahrscheinlich auf das Schreiben, nicht auf die gesprochene Sprache. Taiwan verwendet zum Beispiel traditionelles Schreiben, aber die gesprochene Sprache ist Mandarin (zh_TW). Kantonesisch wird in Hongkong gesprochen, daher sollte die "HK" -Variante verwendet werden. Nach den jüngsten Änderungen in den Google-Tents ist Kantonesisch ("yue") insgesamt eine andere Sprache.

+0

Hallo Peter: neues Gebietsschema ("Yue", "HK") funktioniert für mein Nexus-Telefon, aber nicht für das andere. Danke vielmals! –