javascripttext-to-speechspeech-synthesiswebspeech-api

speechSynthesis.getVoices (Web Speech API) doesn't show some of the locally installed voices


I'm trying to use Web Speech API to read text on my web page. But I found that some of the SAPI5 voices installed in my Windows 10 would not show up in the output of speechSynthesis.getVoices(), including the Microsoft Eva Mobile on Windows 10 "unlock"ed by importing a registry file. These voices could work fine in local TTS programs like Balabolka but they just don't show in the browser. Are there any specific rules by which the browser chooses whether to list the voices or not?


Solution

  • OK, I found out what was wrong. I was using Microsoft Edge and it seems that Edge only shows some of Microsoft voices. If I use Firefox, the other installed voices will also show up. So it was Edge's fault.