html - Google Chrome (Windows) - 如何添加缺失的语音合成声音

标签 html google-chrome text-to-speech speech-synthesis

我将 HTML5 语音合成 API 与 Google Chrome (Windows) 结合使用。不幸的是,当我测试可用的声音时 - 我没有看到挪威语 语音(例如)

所以我的问题是 - 是否可以添加缺失的声音 在 Chrome 中?或者该列表对所有 Chrome (Windows) 安装都有效吗?

在我的 Android 设备上 - 可用语音列表要大得多。 然而,在 Windows 设备上,一些重要的声音丢失了。

下面列出了我在 Windows 版 Google Chrome 上看到的声音:

pl-PL en-US 去DE en-US en-GB en-GB ES-ES es-美国 FR-FR 嗨输入 id-ID 它-IT ja-JP ko-KR NL-NL PL-PL PT-BR 茹-茹 zh-CN zh-HK zh-TW

谢谢你, 迈克

最佳答案

该列表特定于浏览器版本,同一浏览器的版本例如Chrome 在不同操作系统上会有不同的列表。好像只有Safari和Chrome是多语言的,Opera和Firefox有英文语音,IE没有。 Mac 和 Ubuntu 版 Chrome 的声音比 Windows 版 Chrome 多得多。想必较新版本的 Chrome 比旧版本有更多的声音。

我写了一个jsbin来显示浏览器的声音:
https://jsbin.com/ginanegoqu/edit?js,output

if ('speechSynthesis' in window) {
    // Start an html table for languages details
    var text = '<table border=1><tr><th>Default<th>Language<th>Local<th>Name<th>URI</tr>';
    // Get voices; add to table markup
    function loadVoices() {
        var voices = speechSynthesis.getVoices();
        voices.forEach(function(voice, i) {
          // Add all details to table
          text += '<tr><td>' + voice.default + '<td>'
              + voice.lang + '<td>' + voice.localService
              + '<td>' + voice.name + '<td>' + voice.voiceURI;
        });
    }
    loadVoices();
    langList.innerHTML = text;
    // Chrome loads voices asynchronously.
    window.speechSynthesis.onvoiceschanged = function(e) {
        loadVoices();
        langList.innerHTML = text;
    }
}

关于html - Google Chrome (Windows) - 如何添加缺失的语音合成声音,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44865583/

相关文章:

html - Bootstrap 导航栏在移动设备上透明

javascript - 在输入类型 ="number"的 Chrome 软键盘中显示 <Go> 而不是 <Next>

text-to-speech - 波网的输入是什么?

javascript - 在 Chrome 中使用目标 "blob:"将 anchor href 设置为 "_blank"URL 的问题

google-chrome - 如何将 Chrome 扩展另存为 .exe 文件?

java - Android 中可离线使用的文本转语音

android - Android 中没有语音 TTS

html - 如何在 Bootstrap 3 网格系统中分隔这些图像?

html - 响应式导航

html - Logo 文字与图片对齐