小程序模板网

微信小程序录音与播放录音

2018-05-02 没咒念

小程序中提供了两种录音的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()


易优小程序(企业版)+灵活api+前后代码开源 码云仓库:starfork
本文地址:https://www.eyoucms.com/wxmini/doc/course/24167.html 复制链接 如需定制请联系易优客服咨询:800182392 点击咨询
QQ在线咨询