html5实现百度语音播报功能

记录一下,html5调用百度语音接口实现语音播报功能,简单的完整案例(老案例)
由于百度接口的统一管理该代码url已经失效,url参数增加百度账号token等个人获取信息

老案例:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>百度语音播报</title>
</head>
<body>
    <div>
        <button onclick="VoiceAnnouncements('好雨知时节,当春乃发生。随风潜入夜,润物细无声。野径云俱黑,江船火独明。晓看红湿处,花重锦官城。')">点我播放</button>
        <button id="stop">点我暂停</button>
        <button id="come">暂停后可以点我继续刚才的播放</button>
    </div>
    <script src="/Content/jquery-3.2.1.min.js"></script>
    <script>
        $(function () {
            $("#stop").click(function () {
                tape.pause();//暂停当前音频
            });
            $("#come").click(function () {
                tape.play();//继续播放当前音频
            });
        });
        
        var tape = null;//声明一个参数方便可以对当前播放的语音进行暂停,继续播放等操作。
        function VoiceAnnouncements(text) {
            if (tape != null) {//防止用户多次点击播放语音播放重复,如果当前语音正在播放则再点击播放时会先判断然后暂停当前播放的音频重新播放
                if (!tape.paused) {
                    tape.pause();
                }
            }
            
            var url = "http://tts.baidu.com/text2audio?lan=zh&ie=UTF-8&text=" + encodeURI(text);        // baidu文字转语音
            var audio = new Audio(url);
            tape = audio;
            audio.src = url;
            
             //Uncaught (in promise) DOMException: play() failed because the user didn't interact with the document first. 报这个错的时候可以加click 
            //audio.click();
            audio.play();//播放音频
        };

    </script>
</body>
</html>


最新url示例:

在这里插入图片描述
感兴趣的可以跟进百度语音技术文档:https://ai.baidu.com/ai-doc/SPEECH/Gk38y8lzk

总结

audio的暂停播放相关属性 https://www.runoob.com/jsref/dom-obj-video.html
  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值