收藏
回答

使用recorderManager录音时,真机调试报MediaRecorder错误?

真机调试信息

错误:

代码:

let recorderManager = wx.getRecorderManager()

 // 开始录音

    stratRecordAudio(e) {

      // 监听音频开始事件

      this.setData({

        isLoading: true

      })

      recorderManager.onStart(() => {

        console.log('开始录音')

      })

      recorderManager.onError((res) => {

        console.error('录音失败', res.errMsg)

        this.setData({

          isLoading: false

        })

      })

      recorderManager.onInterruptionBegin(() => {

        console.log('录音被占用')

      })

      const options = {

        duration: this.data.duration, //指定录音的时长,单位 ms

        sampleRate: 16000, //采样率

        numberOfChannels: 1, //录音通道数

        encodeBitRate: 96000, //编码码率

        format: 'mav', //音频格式,有效值 aac/mp3

        frameSize: 50, //指定帧大小,单位 KB

      }

      this.recordingTimer()

      recorderManager.start(options)

    }

    // 停止录音

    stopRecordAudio() {

      this.setData({

        isLoading: false

      })

      recorderManager.onStop((res) => {

        if(this.data.inCancel) {

          return

        }

        if(res.duration<2000) {

          wx.showToast({

            title: '录音时间太短,请长按录音',

            icon: 'none',

            duration: 3000

          })

          return

        }

        this.setData({

          filePath: res.tempFilePath,

          duration: res.duration,

        })

        this.handleUploadFile(res.tempFilePath)

      })

      this.recordingTimer(this.data.countTime)

      recorderManager.stop()

    }

回答关注问题邀请回答
收藏

1 个回答

登录 后发表内容