首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何为TextToSpeech创建自定义语言?

如何为TextToSpeech创建自定义语言?
EN

Stack Overflow用户
提问于 2012-03-12 17:06:31
回答 1查看 974关注 0票数 1

我需要使用印度英语或印地语(母语)的安卓TTS语言。

但我没有找到任何与创建自定义语言相关的提示或源代码。

我该怎么做呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-03-12 17:16:54

首先,使用以下命令检查TSS API是否安装在您的模拟器设备中。

代码语言:javascript
复制
Intent checkIntent = new Intent();
checkIntent.setAction(TextToSpeech.Engine.ACTION_CHECK_TTS_DATA);
startActivityForResult(checkIntent, MY_DATA_CHECK_CODE);


mTts.isLanguageAvailable(Locale.INDIA)); //try Locale.INDIA or Locale.INDIAN_ENGLISH or Locale.HINDI as I have not used Indian languages or Indian English dialect in it before

这将返回TextToSpeech.LANG_COUNTRY_AVAILABLE,以指示这种语言的首选项已安装并可用。然后使用以下代码进行测试。

代码语言:javascript
复制
String myText1 = "Did you sleep well?";
String myText2 = "I hope so, because it's time to wake up.";
mTts.speak(myText1, TextToSpeech.QUEUE_FLUSH, null);
mTts.speak(myText2, TextToSpeech.QUEUE_ADD, null);

欲了解更多信息,请访问here

编辑要检查该语言在您的手机上是否可用,请使用getAvailableLocales(),如下所示

代码语言:javascript
复制
   Locale loc = new Locale("en");
   Log.i("-------------",Arrays.toString(loc.getAvailableLocales()));

它应该会在日志输出中显示结果

语言代码是ISO 639-1定义的两个字母的小写ISO语言代码(如"en")。国家代码是ISO 3166-1定义的由两个字母组成的大写ISO国家代码(例如"US")。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9664206

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档