Web语音API语音合成-获取语音列表



我有一个奇怪的问题与网络语音api。我设置了一些代码来发出一串文本——很少,它会发出正常的声音("Alex"来自Mac OS X的听写和语音设置),但通常,它会发出"Albert"的声音。

我正在看这里列出的w3c web语音api:

https://dvcs.w3.org/hg/speech-api/raw-file/tip/speechapi.html dfn-ttsgetvoices

有一个接口叫做

SpeechSynthesisVoiceList {}

我试图访问这个功能,但我不能。

我如何访问这个语音列表?我用的是铬金丝雀,我已经尝试了很多方法。我期望的工作是:

var u = new SpeechSynthesisUtterance();
  console.log(u.getVoices());

var u = new SpeechSynthesisVoiceList();
  console.log(u);

我还运行了:

console.log(window)

和我看到了很多关于网络语音api和语音合成的东西,但没有关于声音的。

您应该使用speechSynthesis.getVoices()来获取所有声音的列表。这是Google Chrome 33的输出:

[{
    "default": true,
    "localService": false,
    "lang": "en-US",
    "name": "Google US English",
    "voiceURI": "Google US English"
}, {
    "default": false,
    "localService": false,
    "lang": "en-GB",
    "name": "Google UK English Male",
    "voiceURI": "Google UK English Male"
}, {
    "default": false,
    "localService": false,
    "lang": "en-GB",
    "name": "Google UK English Female",
    "voiceURI": "Google UK English Female"
}, {
    "default": false,
    "localService": false,
    "lang": "es-ES",
    "name": "Google Español",
    "voiceURI": "Google Español"
}, {
    "default": false,
    "localService": false,
    "lang": "fr-FR",
    "name": "Google Français",
    "voiceURI": "Google Français"
}, {
    "default": false,
    "localService": false,
    "lang": "it-IT",
    "name": "Google Italiano",
    "voiceURI": "Google Italiano"
}, {
    "default": false,
    "localService": false,
    "lang": "de-DE",
    "name": "Google Deutsch",
    "voiceURI": "Google Deutsch"
}, {
    "default": false,
    "localService": false,
    "lang": "ja-JP",
    "name": "Google 日本人",
    "voiceURI": "Google 日本人"
}, {
    "default": false,
    "localService": false,
    "lang": "ko-KR",
    "name": "Google 한국의",
    "voiceURI": "Google 한국의"
}, {
    "default": false,
    "localService": false,
    "lang": "zh-CN",
    "name": "Google 中国的",
    "voiceURI": "Google 中国的"
}, {
    "default": false,
    "localService": true,
    "lang": "",
    "name": "native",
    "voiceURI": "native"
}]

最新更新