【问题标题】:Android text to speech for Indonesian印度尼西亚语的 Android 文本转语音
【发布时间】:2014-07-18 02:20:30
【问题描述】:

嘿,我正在尝试为 3 种不同的语言创建一个 tts 他们是英语、西班牙语和印度尼西亚 我对英语和西班牙语没问题 他们工作正常,但我的印尼语有误 我尝试了不同的方法和不同的语言环境组合,但仍然没有运气

这是我在印度尼西亚的代码:

Locale locInd = new Locale("IDN");

int result = tts.setLanguage(locInd);

我试过 locale("in","ID"); , locale("ind","IDN"); , locale("in_ID); 但仍然没有运气 每次我尝试时,输出都是英语而不是印尼语

我使用 jellybean(4.2.2) 模拟器来运行它 当我运行模拟器时,语言环境中有in_ID

编辑: 我发现了我的问题,在 pico TTS indonesian 中没有安装 有没有每次不支持语言的教程 会弹出要求安装吗?

【问题讨论】:

标签: android locale text-to-speech android-4.2-jelly-bean


【解决方案1】:
MainActivity.tts.setLanguage(new Locale("id","ID"));

我用过,效果很好!

显然您的手机必须支持印尼语。我试了两部不同的手机,其中一部不会说印尼语

【讨论】:

    【解决方案2】:

    每当您更改语言环境时,在将文本初始化为语音时设置语言:

    textToSpeech = new TextToSpeech(context, new TextToSpeech.OnInitListener() {
         @Override
         public void onInit(int status) {
             switch (status) {
                 case TextToSpeech.SUCCESS: {
                     synchronized (this) {
                             int result = textToSpeech.setLanguage(set the indonesia id here);
                      // Take action based on the result of initialisation
    
                     }
                 }
                 break;
                 default: {
                     Toast.makeText(appContext, appContext.getResources().getString(R.string.tts_init_failed), Toast.LENGTH_LONG).show();
                 }
                 break;
             }
         }
     });
    

    【讨论】:

      【解决方案3】:

      如果您使用 "id", "ID"Locale("id", "ID") 并且无法正常工作,您可以尝试此代码

      科特林:

      private fun askSpeechInput(){
          if(!SpeechRecognizer.isRecognitionAvailable(this)){
              Toast.makeText(this, "Speech recognition is not available", Toast.LENGTH_SHORT).show()
          }else{
              val i = Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH)
              i.putExtra(RecognizerIntent.EXTRA_LANGUAGE, "id-ID")
              i.putExtra(RecognizerIntent.EXTRA_PROMPT, "Coba ucapkan sesuatu")
              launchSomeActivity.launch(i)
          }
      }
      

      这对我有用

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-09-21
        • 2019-06-04
        • 1970-01-01
        • 2021-11-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多