1、使用原生API SpeechSynthesisUtterance与speechSynthesis实现
1、定义一个SpeechSynthesisUtterance的实例,在相应的属性上设置数值
lang:设置语言(中文:zh-CN)
text: 设置话语内容(最多32,767个字符)
rate:设置播报速度(0.1-10)
volume:设置音量(0-1)
pitch:音高(0-2)
2、使用speechSynthesis语音合成(文本到语音TTS)
speechSynthesis接收一个SpeechSynthesisUtterance的实例
方法:
speak():向语音中队列添加一个语音
cancel():清除所有语音列表
pause():暂停语音播报
resume():恢复语音播报
2、问题
-
会将六位数及以下的数字按中文播报出,如:123123,语音就是“十二万三千一百二十三”。
-
如果一些符号连在一起会识别成表情符号,如::(,语音就是“表情符号伤心”。
-
不支持IE浏览器
-
不同浏览器中声音上会有差异
-
多音字识别不准确
3、效果
-
相比于从后端获取tts需要等待,web端的