HTML5 Speech Synthesis API поддержка голоса / языков

Я пытаюсь использовать синтез речи в HTML5, чтобы говорить сообщения на арабском языке, однако, это не работает. Я запускаю следующий скрипт, чтобы проверить языки, поддерживаемые Chrome, и арабский не является одним из них.

window.addEventListener("DOMContentLoaded", function () {
  if (window.speechSynthesis != undefined) {
    document.getElementById("playback").addEventListener("click", function () {
      var stimmen = window.speechSynthesis.getVoices();
      for (var i = 0; i < stimmen.length; i++) {
        console.log("Voice " + i.toString() + " " + stimmen[i].name);
      }
    }, false)
  }
}, false)

и это сценарий, который я использовал

var msg = new SpeechSynthesisUtterance();
msg.text = 'تجربة اللغة العربية';
msg.lang = 'ar-SA';
window.speechSynthesis.speak(msg);

Есть ли способ установить голос / язык на арабском, чтобы эта функция работала. Если нет, может ли кто-нибудь привести меня к встроенному сервису преобразования текста в речь для веб-сайтов, он должен поддерживать арабский язык? или что-нибудь, что сделает это? Я связался с readspeech, но их цены выше моего бюджета

1 ответ

Не уверен, что арабский язык будет поддерживаться, но чтобы получить список:

// List available voices
speechSynthesis.onvoiceschanged = function () {
  var voices = this.getVoices();
  console.log(voices);
};

Другие вопросы по тегам