语音合成浏览器 API 在 Chromium 和 Firefox 中不起作用

Luk*_*uke 5 browser manjaro text-to-speech

Speech Synthesis API,在此处使用演示进行测试,在 Manjaro Linux KDE 和 Firefox 或 Chromium 中均不适用于我。Friend 在 Linux Mint xfce 上测试了相同的演示,它在 Firefox 中对他有效。

在我的机器上,speechSynthesis.getVoices()在开发控制台中执行返回一个空数组。我可能会错过系统中的某些软件包吗?

小智 3

您可以安装espeak

$ sudo <package manager install> espeak
Run Code Online (Sandbox Code Playgroud)

在 Chromium 发布时带有--enable-speech-dispatcher标记和利用onvoiceschanged事件

window.speechSynthesis.onvoiceschanged = e => {
  const voices = window.speechSynthesis.getVoices();
  console.log(voices);
}
window.speechSynthesis.getVoices();
Run Code Online (Sandbox Code Playgroud)