关于微信小程序录音与播放录音的开发,小程序中提供了两种录音的API。
旧版录音功能
首先启动录音,然后停止录音即可拉到音频的临时地址
启动录音:
var that = this;
wx.startRecord({
success: function (res) {
// 调用了停止录音接口就会触发这个函数,res.tempFilePath为录音文件临时路径
var tempFilePath = res.tempFilePath
that.setData({
src: tempFilePath
})
},
fail: function (res) {
//录音失败的处理函数
}
})
停止录音:
wx.stopRecord()
播放录音:
wx.playVoice({
filePath: src // src可以是录音文件临时路径
})
新版录音
获取全局唯一的录音管理器,然后录音都依赖他,而播放录音则需要内部 audio 上下文 innerAudioContext 对象。
获取全局唯一的录音管理器:
var that = this;
this.recorderManager = wx.getRecorderManager();
this.recorderManager.onError(function(){
// 录音失败的回调处理
});
this.recorderManager.onStop(function(res){
// 停止录音之后,把录取到的音频放在res.tempFilePath
that.setData({
src: res.tempFilePath
})
console.log(res.tempFilePath )
});
开始录音:
this.recorderManager.start({
format: 'mp3' // 如果录制acc类型音频则改成aac
});
结束录音:
this.recorderManager.stop()
播放音频:
this.innerAudioContext = wx.createInnerAudioContext();
this.innerAudioContext.onError((res) => {
// 播放音频失败的回调
})
this.innerAudioContext.src = this.data.src; // 这里可以是录音的临时路径
this.innerAudioContext.play()
DEMO地址
github:https://github.com/yubang/appletRecordDemo
小程序工具提供多类型商城/门店小程序制作,可视化编辑 1秒生成5步上线。通过拖拽、拼接模块布局小
程序商城页面,所看即所得,只需要美工就能做出精美商城。
全国7x24小时客服热线
所有故障均24小时内解决
项目一次性收费安心
技术人员均从业5年以上
通过技术营销传播企业服务价值
丰富的行业实战经验积累
基于需求研发多款产品
针对需求提供精细化服务