1

如何在网络应用程序中合成语音?

有没有办法使用 HTML5 Web Speech API?

例如,如果我想合成句子“A quick brown fox jumps over the lazy dog”,如果不播放预先录制的某人正在阅读该句子的文件,我怎么能做到这一点

4

2 回答 2

4

就像现在一样,作为Web Speech API 规范一部分的SpeechSynthesis功能 还没有在任何浏览器中实现。

但是,您可以查看这个 Chrome 扩展程序

编辑:

似乎最新的 Chrome Canary 版本可能包含该功能,但它仅指定该功能已启动(http://www.chromestatus.com/features),我无法找到有关它的更多实质性信息。

编辑2:

正如@cdf 在评论中提到的那样,您现在似乎可以通过启动带有--enable-speech-synthesis标志的 chrome 来使用该功能。请看这篇文章

编辑3:

这似乎现在在 Webkit 中,但目前不在 iOS 上。甚至在 iOS 上的 Chrome 中也没有。演示@BrandonAaskov

于 2013-05-15T21:45:14.077 回答
1

该代码适用于 Chrome 和 Safari(取自我的应用ttsreader):

if (!('speechSynthesis' in window)) {
        // Synthesis not supported. 
            alert('Speech Synthesis is not supported by your browser. Switch to Chrome or Safari');
        }

var msg = new SpeechSynthesisUtterance('hello world');
msg.volume = 1; // 0 to 1
msg.rate = 0.9; // 0.1 to 10
msg.pitch = 1; //0 to 2
msg.lang = "en-GB";
msg.text = "I will speak this out";
speechSynthesis.speak(msg);
于 2015-08-09T06:22:38.600 回答