android - Android Google 文字转语音语言支持
问题描述
嗨,我正在开发一个基于 TTS 语音的应用程序,它支持 Google Text To Speech 支持的语言,
目前我正在通过以下代码获取所有可用语言的列表,
Set<Locale> locales = t1.getAvailableLanguages();
其中列出了包括泰米尔语在内的大约 54 组语言环境。但是当我尝试通过以下代码与应用程序说文本时,
t1 = new TextToSpeech(getApplicationContext(), new TextToSpeech.OnInitListener() {
@Override
public void onInit(int status) {
if (status != TextToSpeech.ERROR) {
// Lets say string i want to read is
String toSpeak = "வணக்கம்";
try {
//lets say i want to speak the Tamil Language here from the list given by t1.getAvailableLnaguages();
String localCode = "ta";
Locale locale = new Locale(localCode);
t1.setLanguage(locale);
t1.speak(toSpeak, TextToSpeech.QUEUE_FLUSH, null, "1");
} catch (JSONException e) {
e.printStackTrace();
}
}
});
此代码以英语口音说文本,这是无法理解的。谁能帮我检查设备中是否安装了特定的语音数据?或者,如果我的观点做错了,请纠正我。
提前致谢。
解决方案
泰米尔语的语言环境代码是
String localCode = "ta-IN";
推荐阅读
- typescript - 使用带有 TypeScript 和 Vue SFC 的全局枚举
- javascript - 从远程源有效地加载/缓存非小型数组?
- python - 如何使用 pandas 在数据框中添加 CSV 文件名作为列标题?
- python - plt 用斜线填充两条线之间的区域
- javascript - Android Webview评估Javascript无法在ES6模块文件中找到函数
- flutter - 无法在颤动中加载共享首选项
- c# - Redemption CreateItemFromTemplate 模拟
- javascript - 如何在没有数组的情况下附加到 JSON?
- java - 无法等待扩展背景页面加载 chrome 扩展。无法禁用扩展
- javascript - 从数组中重写对象