91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

小程序中wx.getRecorderManager()錄音管理怎么用

發布時間:2022-01-19 17:18:49 來源:億速云 閱讀:450 作者:清風 欄目:開發技術

這篇文章主要為大家展示了小程序中wx.getRecorderManager()錄音管理怎么用,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶大家一起來研究并學習一下“小程序中wx.getRecorderManager()錄音管理怎么用”這篇文章吧。

1.小程序錄音管理介紹 wx.getRecorderManager()
基礎庫 1.6.0 開始支持,低版本需做兼容處理,獲取全局唯一的錄音管理器 recorderManager。
2.小程序錄音管理代碼
// 錄音管理
let record = function (recorderManager) {
  this.recorderManager = recorderManager
  this.recordStart()
}
record.prototype = {
  // 開始錄音
  start: function (startObj) {
    this.recorderManager.start(startObj)
  },
  //錄音開始事件
  recordStart: function () {
    this.recorderManager.onStart(() => {
      console.log(this.recorderManager, 'this.recorderManager')
    })
  }
}
3.Page onLoad配置
  //錄音管理,new 出 第二階段的實例
    recorderManager = wx.getRecorderManager()
    that.newRecord = new record(recorderManager)
     that.newRecord.recorderManager.onStop((res) => {
         console.log(res, '獲取錄制完的鏈接')
    })
    //播放錄音
    innerAudioContext = wx.createInnerAudioContext()
    innerAudioContext.onEnded(() => {
      console.log("音頻自然播放結束")
    })
4.現在開始錄音
startRecord() {
        let that = this,
          startObj = {
            duration: 60000,
            sampleRate: 44100,
            numberOfChannels: 1,
            encodeBitRate: 192000,
            format: 'mp3',
            frameSize: 50
          }
        //錄音開始
        that.newRecord.start(startObj)
        // 錄音計時器
        recordTimeInterval = setInterval(function () {
        }, 1000)
  },
5.停止錄音
  stopRecord() {
    clearInterval(recordTimeInterval);
    //停止錄音事件
    this.newRecord.recorderManager.stop()
  }
6.播放錄音
  // 播放錄音
          playVoice(e) {
            let that = this
            let srcPath = e.currentTarget.dataset.temppath, // 點擊當前傳遞的播放鏈接
                  duration = e.currentTarget.dataset.duration, // 錄音時間
                  index = e.currentTarget.dataset.index // 索引
            checkArr[index] = srcPath   //用于頁面判斷播放一個,另一個暫停
            // 播放
            innerAudioContext.obeyMuteSwitch = false
            innerAudioContext.src = srcPath
            innerAudioContext.play()
            // 時間減少器
            playTimeInterval = setInterval(() => {
              let playTime = that.data.playTime += 1
            }, 1000)
          }
7.停止播放
// 停止播放
          stopVoice(forIndex, e) {
            let index;
            e !== undefined ? index = e.currentTarget.dataset.index : index = forIndex
            clearInterval(playTimeInterval)
            checkArr[index] = undefined
            innerAudioContext.stop()
          }
8.只能播放一個的代碼
  // 只能播放一個
          onePlayFor(tempFilePath, src) {
            tempFilePath.forEach((el, i) => {
              if (el.tempFilePath !== src) {
                this.stopVoice(i)
              }
            })
          }
錄音與停止錄音使用小程序bind:touchstart='startRecord' bind:touchend='stopRecord' 事件

以上就是關于“小程序中wx.getRecorderManager()錄音管理怎么用”的內容,如果該文章對您有所幫助并覺得寫得不錯,勞請分享給您的好友一起學習新知識,若想了解更多相關知識內容,請多多關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

雷州市| 高淳县| 武强县| 化德县| 华阴市| 德清县| 黎城县| 邵阳市| 平乐县| 琼海市| 香港| 札达县| 黄冈市| 江陵县| 曲麻莱县| 肇庆市| 拉孜县| 罗田县| 北海市| 碌曲县| 长春市| 龙泉市| 会宁县| 南平市| 海阳市| 乐业县| 古浪县| 德江县| 河源市| 信丰县| 依兰县| 久治县| 株洲市| 新郑市| 德令哈市| 乌兰县| 修水县| 大化| 辰溪县| 安阳县| 镇原县|