[js常用]百度将文字转化为语音实例

Posted 糖羽仙

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[js常用]百度将文字转化为语音实例相关的知识,希望对你有一定的参考价值。

嗷嗷方便的文字转语音,不过用的时候记得到百度语音上申请key,免费的.之前在网络上看到有人写了一部分,自己丰富下,以后用也方便

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>百度语音测试</title>
  </head>
  <body>
    <div>
      <input type="text" id="ttsText">
      <input type="button" id="tts_btn" onclick="doTTS()" value="获取新的语音">
      <input type="button" id="tts_btns" onclick="zanting()" value="暂停">
      <input type="button" id="tts_btns" onclick="jixu()" value="继续/播放">
       <input type="button" id="tts_btns" onclick="shichang()" value="时长">
    </div>
    <div id="bdtts_div_id">
      <audio id="tts_autio_id" >
        <source id="tts_source_id" src="https://tsn.baidu.com/text2audio?tex=我喜欢你&lan=zh&per=4&cuid=1&ctp=1&tok=24.71726d18e11bf62415c11e3c2aa88121.2592000.1544946462.282335-14837008" type="audio/mpeg">
        <embed id="tts_embed_id" height="0" width="0" src="">
      </audio>
    </div>
  </body>
</html>
<script>

    function zanting() {
        var ttsAudio = document.getElementById(tts_autio_id);
        ttsAudio.pause();
    }
    function jixu() {
        var ttsAudio = document.getElementById(tts_autio_id);
        ttsAudio.play();
    }

    function shichang() {
          var ttsAudio = document.getElementById(tts_autio_id);
          alert(ttsAudio.duration);
    }

        function doTTS(){
      var ttsDiv = document.getElementById(bdtts_div_id);
      var ttsAudio = document.getElementById(tts_autio_id);
      var ttsText = document.getElementById(ttsText).value;
      
      // 这样为什么替换不了播放内容
      /*var ssrcc = ‘http://tts.baidu.com/text2audio?lan=zh&ie=UTF-8&spd=10&text=‘+ttsText;
      document.getElementById(‘tts_source_id‘).src=ssrcc;*/
      
      // 这样就可实现播放内容的替换了
      ttsDiv.removeChild(ttsAudio);
      var au1 = <audio id="tts_autio_id" autoplay="autoplay">;
      var sss = <source id="tts_source_id" src="https://tsn.baidu.com/text2audio?tex=+ttsText+&lan=zh&per=4&cuid=1&ctp=1&tok=24.71726d18e11bf62415c11e3c2aa88121.2592000.1544946462.282335-14837008" type="audio/mpeg">;
      var eee = <embed id="tts_embed_id" height="0" width="0" src="">;
      var au2 = </audio>;
      ttsDiv.innerHTML = au1 + sss + eee + au2;
      
      ttsAudio = document.getElementById(tts_autio_id);
      
      ttsAudio.play();
    }




</script>

 

以上是关于[js常用]百度将文字转化为语音实例的主要内容,如果未能解决你的问题,请参考以下文章

在线将文字转成语音的方法都有哪些?

浏览器中的语音识别功能

将图片上的文段信息转化为文字信息需要用到啥ai技术

什么软件可以将文字转化成语音播放出来?

IoT工具:PC端如何实现将播放的语音转化为文字?

手机微信语音批量转文字 使用百度语音识别