HTML5 Speech Synthesis API voice/languages support

5.7k Views Asked by At

I'm trying to use speech synthesis in html5 to talk messages in Arabic however, it is not working. I run the following script in to check languages supported by chrome and Arabic isn't one of them.

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)

and this is the script I used

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

Is there a way to install voice/language in Arabic to get this feature to work. If not, can anyone lead me to embedded text to speech service for websites, it has to support Arabic? or anything that will do it? I've contacted readspeech but their prices are higher than my budget

1

There are 1 best solutions below

2
On

Not sure if Arabic will be supported, but to get a list:

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