Язык TTS игнорируется - PullRequest
       7

Язык TTS игнорируется

0 голосов
/ 27 апреля 2018

Я не могу заставить работать TTS Locale.

  window.TTS.checkLanguage()

верните мне этот список ["ku,pt_BR,ta,ja_JP,sk_SK,tr_TR,ru_RU,ko_KR,hi_IN,fil_PH,fi_FI,ca,hr,es_ES,sk,ro_RO,zh_TW,sw,el_GR,fr_BE,en_GB,nl_NL,la,et_EE,pt_PT,fr_FR,bs,km_KH,vi_VN,en_AU,pl_PL,da_DK,sq,cy,en_US,bn_IN,si_LK,in_ID,yue_HK,uk_UA,bn_BD,sr,en_IN,cs_CZ,it_IT,ne_NP,de_DE,es_US,zh_CN,th_TH,sv_SE,nb_NO,hu_HU" ]

Теперь я пытаюсь запустить:

window.TTS.speak({
        text: 'hello world!!',
        locale: 'en-GB',
        rate: 1.3
    }, function () {
        // Do Something after success
    }, function (reason) {
        // Handle the error case
    });

«en-GB» существует, но читается как голос EN-US.

Я использую плагин tts для cordova (https://github.com/vilic/cordova-plugin-tts), но я думаю, что он выпущен для Android TTS. Есть идеи, почему это произошло?

1 Ответ

0 голосов
/ 08 мая 2018

Установка голосовых данных для en_GB на ваше устройство.

Согласно исходному коду плагин внутренне вызывает метод setLanguage, чтобы выбрать язык и страну для голоса. Метод возвращает следующий статус поддержки:

  • LANG_AVAILABLE
  • LANG_COUNTRY_AVAILABLE
  • LANG_COUNTRY_VAR_AVAILABLE
  • LANG_MISSING_DATA
  • LANG_NOT_SUPPORTED

Если на вашем устройстве нет голосовых данных для en_GB, метод может установить en_US в качестве запасного варианта и вернуть LANG_AVAILABLE. В этом случае TTS произносит текст en_US голосом.

...