首页 > 解决方案 > 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();
                    }
                } 
            });

此代码以英语口音说文本,这是无法理解的。谁能帮我检查设备中是否安装了特定的语音数据?或者,如果我的观点做错了,请纠正我。

提前致谢。

标签: androidlocalizationtext-to-speechgoogle-developers-consolegoogle-text-to-speech

解决方案


泰米尔语的语言环境代码是

String localCode = "ta-IN";

推荐阅读