用户
 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,登录网站

小程序社区 首页 教程 查看内容

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

Rolan 2017-12-26 00:21

小程序中提供了两种录音的API旧版录音功能首先启动录音,然后停止录音即可拉到音频的临时地址启动录音:var that = this; wx.startRecord({ success: function (res) { // 调用了停止录音接口就会触发这个函数,res. ...

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

鲜花
鲜花
鸡蛋
鸡蛋
分享至 : QQ空间
收藏
原作者: yubang 来自: yubangweb

相关阅读