首頁  >  文章  >  web前端  >  在微信小程式中如何實現錄音與播放錄音功能

在微信小程式中如何實現錄音與播放錄音功能

亚连
亚连原創
2018-06-15 16:21:573574瀏覽

這篇文章主要介紹了微信小程式錄音與播放錄音功能,小程式中提供了兩種錄音的API,舊版錄音功能和新版錄音功能,需要的朋友可以參考下

#小程式中提供了兩種錄音的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()

上面是我整理給大家的,希望未來會對大家有幫助。

相關文章:

在JS中如何實作offset與勻速動畫

在Bootstrap中如何實作表格合併儲存格

在JavaScript中如何實現取得select下拉方塊中第一個值

#在AngularJS中如何做到即時取得並顯示密碼

以上是在微信小程式中如何實現錄音與播放錄音功能的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn