async loadBdVoice(){
var text = this.detailData.detail.replace(/<.*?>/g,""); //html富文本内容转成纯文本
const contentText = text.split('。'); // 长文本内容不能播放,只好按文章的句号分割成小段
console.log(contentText)
const v =await Voice({
voiceSet: {
tex: contentText[0] //可以播放第一段,那么后面的怎么播放呢?
},
audioSet: {
volume: 1
},
audioCallback: {
onPlay: ()=>{ //属性名去掉 - , 不知道为什么全名显示不了
console.log('音频开始播放了')
}
},
// lineUp: true // 加入语音队列
returnAudio: true // 返回音频对象
});
this.baiduVoice = v;
},
//然后调用: this.baiduVoice.play() 和 this.baiduVoice.pause();
//QQ:120287127
1 个回复
取舍 - 我们都如流星短暂 但谁能像它闪耀
首先 你说可以停止, 那么想必已经拿到了音频对象, 然后呢一次播放有字数限制的,所以太长的文本得分割一下, 然后就是 实现下 队列机制,搞个数组 监听播放完成事件 继续下一个