6

我正在尝试 chrome text-to-speech API,但即使是谷歌提供的演示 https://developer.chrome.com/trunk/extensions/examples/extensions/ttsdemo/ttsdemo.html 对我也不起作用,我听不到任何声音,是吗?

我认为这不是我的浏览器的问题,因为如果我尝试收听模式,google.translate.com(我猜它基于相同的技术)对我有用。

任何想法?

谢谢

4

4 回答 4

10

从 Chrome 33 开始,Chrome 的语音合成 API 可在 JavaScript 中使用。

快速示例:

window.speechSynthesis.speak(
   new SpeechSynthesisUtterance('Oh why hello there.')
);

细节:

HTML5 Rocks:语音合成 API 简介

于 2014-06-11T20:39:04.553 回答
1

. . 嗨,尤金尼奥。

. . 此 API 仅可用于扩展。您可以将您的逻辑移植到扩展程序内部(当然,人们必须安装它才能使用),创建一个将功能公开给“外部世界”的扩展程序(人们仍然需要安装扩展程序才能正确使用您的应用程序)或简单地使用客户端合成器(例如speak.js)。

. . 您可以使用 WebAudio API(或事件标签)并调用 Google Translate TTS 端点,但这不是公共 API,它不能保证。由于谷歌的一些限制,它可以简单地停止工作,他们可以更改 API 或端点和 yadda yadda。如果仅用于测试,那可能会这样做,但如果它是一个更大的项目(或商业项目),我强烈建议不要使用该选项。

. . 祝你好运。

于 2013-08-28T21:29:56.097 回答
1

只是添加一些链接,因为我也找不到正确的信息。

您可以使用 Chrome 的所谓“语音合成 api”,参见演示:https ://www.audero.it/demo/speech-synthesis-api-demo.html

更多信息:

希望有所帮助,并希望这些链接能在未来继续存在。

于 2016-02-23T15:54:51.773 回答
1

今天(2015 年 10 月)有 55% 的设备支持语音合成 API:http: //caniuse.com/#feat=speech-synthesis

这是示例:

// Create the utterance object
var utterance = new SpeechSynthesisUtterance();
utterance.text = 'Hello, World!';

// optional parameters
utterance.lang = 'en-GB'; // language, default is 'en-US'
utterance.volume = 0.5;   // volume, from 0 to 1, default is 1
utterance.rate = 0.8;     // speaking rate, default is 1 

// speak it!
window.speechSynthesis.speak(utterance);
于 2015-10-23T13:37:03.870 回答