onload(){
//创建内部 audio 上下文 InnerAudioContext 对象。
// this.innerAudioContext = wx.createInnerAudioContext();
}
// base64转mp3音频
base64ChangeVideo(base64Data) {
const audioPath = wx.env.USER_DATA_PATH + '/ordernew.mp3'
const fs = wx.getFileSystemManager();
let that = this;
fs.writeFile({
filePath: audioPath,
data: base64Data,
encoding: 'base64',
success(res) {
that.setData({
src: audioPath
})
that.yuyinPlay();
},
})
},
// 播放语音
yuyinPlay: function (e) {
console.log("播放1", e);
if (this.data.src == '' && this.data.isplay) {
console.log("播放2", this.data.src, '222', this.data.isplay);
return;
}
this.setData({
msgText: 2, //正在对话`
annimationFlag: true,
haveflag: true
})
this.innerAudioContext.src = this.data.src; // 设置音频地址
let _this = this;
this.innerAudioContext.onError(function (res) {
console.log("报错吗", res)
_this.setData({
msgText: 1, //初始化
annimationFlag: false,
haveflag: false,
touchstart: false
})
// wx.showToast({
// title: '语音播放失败',
// icon: 'none',
// })
})
this.innerAudioContext.onTimeUpdate(() => {
// console.log('音频播放进度更新', this.data.src);
// console.log('音频进度', this.innerAudioContext.src);
});
this.innerAudioContext.onEnded(() => { // 添加播放结束的回调
console.log("播放结束")
this.setData({
msgText: 1, //初始化
annimationFlag: false,
haveflag: false,
src: ""
})
// 在这里执行播放完毕后的操作,比如关闭语音
this.innerAudioContext.stop(); // 使用 stop 方法停止音频并重置播放状态
});
this.innerAudioContext.play(); // 播放音频
},
微信小程序base64转mp3音频
最新推荐文章于 2025-04-27 15:32:39 发布