Android Text-To-Speech 以编程方式用 "alphabet" 说粤语

Android Text-To-Speech speak Cantonese with "alphabet" programmatically

我想说 "A13","A" 发音为 "English",“13”发音为 "Cantonese";下面是我使用的代码,但它只给我普通话的“13”。

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

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

我已经按照下面的 link 安装了 "cantonese" 的 tts 包,但我仍然不会在我的应用程序中设置 "Cantonese"。但是,如果我使用 Ekho tts 引擎,它会达到预期的效果,但与 google 引擎相比,声音有点奇怪。

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/

您可能想尝试 tts.setLanguage(new Locale("zh", "HK"))tts.setLanguage(new Locale("yue", "HK"))。 TRADITIONAL_CHINESE 很可能指的是写作,而不是口语。例如,台湾使用繁体字,但口头语言是普通话 (zh_TW)。香港说粤语,因此应使用 "HK" 变体。 Google 的 tts 最近的变化将粤语 ("yue") 视为完全不同的语言。