4

我想说“A13”,“A”用“英语”发音,“13”用“粤语”发音;下面是我使用的代码,但它只给了我普通话的“13”。

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

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

我已经按照下面的链接安装了“粤语”的 tts 包,但我仍然不会在我的应用程序中设置“粤语”。但是,如果我使用 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/

4

1 回答 1

9

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

于 2016-04-14T20:02:35.167 回答