微信小程序录音,播放的实现

今天给自己定下了一个目标,想着根据微信小程序官方的API,针对单独的小功能写一个小demo。
今天准备写的是关于录音这一块:wx.getRecorderManager 接口

微信小程序录音,播放的实现_第1张图片
官方提示

1.首先使用方法获取对象

const recorderManager = wx.getRecorderManager()
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.暂停录音

pause: function () {
    recorderManager.pause();
    recorderManager.onPause((res) => {
     
    console.log('暂停录音')

    })
  },

4.继续录音

resume: function () {
    recorderManager.resume();
    recorderManager.onStart(() => {
      console.log('重新开始录音')
    });
    //错误回调
    recorderManager.onError((res) => {
      console.log(res);
    })
  },

5.停止录音

//停止录音
  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)
    })
  },

wxml中代码:







wxss中代码:

.btn{
  margin-top: 10rpx;
}

你可能感兴趣的:(微信小程序录音,播放的实现)