在我的Nexus5x中,用于孟加拉语内容的TTS工作正常,但其他手机则不行。
在另一种情况下,三星手机只能说英语单词,而不能说孟加拉语单词。
有人能帮我解决这类问题吗?
谢谢。
代码:

@Override
    public void onInit(int i) {
        if (i == TextToSpeech.SUCCESS) {

        int result = mTextToSpeech.setLanguage(new Locale("bn_IN"));//https://stackoverflow.com/questions/7973023/what-is-the-list-of-supported-languages-locales-on-android

        floatRead.setImageResource(R.drawable.ic_volume_off);

        if (result == TextToSpeech.LANG_MISSING_DATA
                || result == TextToSpeech.LANG_NOT_SUPPORTED) {
            Log.i("TTS", "This Language is not supported");
            AppApplication.getInstance().showToast("This Language is not supported");
        }
        read(mNewsDetails.title, true);
        read(mNewsDetails.plain_text, false);

    } else {
        floatRead.setImageResource(R.drawable.ic_read);
    }
    }

`
void read(String text, boolean flush) {
        if (flush == true) {
            if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP)
                mTextToSpeech.speak(text, TextToSpeech.QUEUE_FLUSH, null, null);
            else
                mTextToSpeech.speak(text, TextToSpeech.QUEUE_FLUSH, null);
        } else {
            if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP)
                mTextToSpeech.speak(text, TextToSpeech.QUEUE_ADD, null, null);
            else
                mTextToSpeech.speak(text, TextToSpeech.QUEUE_ADD, null);
        }
    }

`

最佳答案

-google通过软件更新来更新设备上的google tts版本,以使区域设置可支持。
请验证谷歌TTS版本是否与正在测试的两个设备相同。
据我所知,googletexttospeech3.11.12增加了对孟加拉语的支持以及其他各种改进。
参考:
Google TTS
-三星设备支持:
三星文本语音引擎
谷歌文本语音引擎
它们实际上有不同的语言环境支持集。

09-06 23:55