日期:2021-04-20 17:11 浏览量:1538
小程序开发制作非常的简单,因为小程序已经把哪些源生app才能有的功能给转换成了js的写法,js只要是一个网站开发人员就会使用的语言,所以说小程序开发那么火那么容易开发也是有道理的,下面就讲讲小程序录音及录音播放功能的实现
1、先获取录音及播放录音的对象
//获取全局唯一的录音管理器 RecorderManager const recorderManager = wx.getRecorderManager() //创建内部 audio 上下文 InnerAudioContext 对象。 const innerAudioContext = wx.createInnerAudioContext()
2、开始录音代码
//开始录音的时候
start: function () {
const options = {
duration: 10000,//指定录音的时长,单位 ms
sampleRate: 16000,//采样率
numberOfChannels: 1,//录音通道数
encodeBitRate: 96000,//编码码率
format: 'mp3',//音频格式,有效值 aac/mp3
frameSize: 50,//指定帧大小,单位 KB
}
//开始录音
recorderManager.start(options);
recorderManager.onStart(() => {
console.log('recorder start')
});
//错误回调
recorderManager.onError((res) => {
console.log(res);
})
},3、停止录音代码
stop: function () {
recorderManager.stop();
recorderManager.onStop((res) => {
this.tempFilePath = res.tempFilePath;
console.log('停止录音', res.tempFilePath)
const { tempFilePath } = res
})
},4、播放录音代码
play: function () {
innerAudioContext.autoplay = true
innerAudioContext.src = this.tempFilePath,
innerAudioContext.onPlay(() => {
console.log('开始播放')
})
innerAudioContext.onError((res) => {
console.log(res.errMsg)
console.log(res.errCode)
})
},5、在wxml中添加相关事件即可
<button bindtap="start" class='btn'>开始录音</button> <button bindtap="stop" class='btn'>停止录音</button> <button bindtap="play" class='btn'>播放录音</button>