js文字转语音并播放
这里调用的是百度文字转语音开放API
html:
1 <div> 2 <input type="text" id="ttsText"> 3 <input type="button" id="tts_btn" onclick="doTTS()" value="播放"> 4 </div> 5 <div id="bdtts_div_id"> 6 <audio id="tts_autio_id" autoplay="autoplay"> 7 <source id="tts_source_id" src="http://tts.baidu.com/text2audio?lan=zh&ie=UTF-8&spd=5&per=1&text=请输入文字" type="audio/mpeg"> 8 <embed id="tts_embed_id" height="0" width="0" src=""> 9 </audio> 10 </div>
js:
1 function doTTS() { 2 var ttsDiv = document.getElementById('bdtts_div_id'); 3 var ttsAudio = document.getElementById('tts_autio_id'); 4 var ttsText = document.getElementById('ttsText').value; 5 6 // 文字转语音 7 ttsDiv.removeChild(ttsAudio); 8 var au1 = '<audio id="tts_autio_id" autoplay="autoplay">'; 9 var sss = '<source id="tts_source_id" src="http://tts.baidu.com/text2audio?lan=zh&ie=UTF-8&per=3&spd=5&text=' + ttsText + '" type="audio/mpeg">'; 10 var eee = '<embed id="tts_embed_id" height="0" width="0" src="">'; 11 var au2 = '</audio>'; 12 ttsDiv.innerHTML = au1 + sss + eee + au2; 13 14 ttsAudio = document.getElementById('tts_autio_id'); 15 16 ttsAudio.play(); 17 }
代码中改变传参可更改配置:
lan=zh(语言zh:中文;en:英文;fr:法文;)
ie=UTF-8(字符集)
per=3(每3个字符停顿)
spd=5(语音播放速度,数字越大越快0-15)
text=“”(需要转换的文字)
欢迎体验由我个人开发的高颜值云开发工具小程序
![](https://img2018.cnblogs.com/blog/1324387/201905/1324387-20190524134827292-1343993864.png)