在微信小程序中,你可以通过 wx.getRecorderManager() 获取录音管理器实例。以下是一个简单的示例:
// 获取录音管理器
const recorderManager = wx.getRecorderManager();

// 监听录音开始事件
recorderManager.onStart(() => {
  console.log('录音开始');
});

// 监听录音结束事件
recorderManager.onStop((res) => {
  console.log('录音结束', res);

  const { tempFilePath } = res;

  // 可以在这里处理录音结束后的操作,比如上传到服务器
  console.log('临时文件路径:', tempFilePath);
});

// 监听录音错误事件
recorderManager.onError((res) => {
  console.error('录音错误', res.errMsg);
});

// 开始录音
recorderManager.start({
  duration: 60000, // 录音时长,单位毫秒,默认60秒
  sampleRate: 44100, // 采样率,有效值 8000/16000/44100,默认 44100
  numberOfChannels: 1, // 录音通道数,有效值 1/2,默认 1
  encodeBitRate: 192000, // 编码码率,有效值 8000/16000/192000,默认 192000
  format: 'mp3', // 音频格式,有效值 aac/mp3,默认 aac
});

在上述示例中,wx.getRecorderManager() 方法用于获取录音管理器实例。通过该实例,你可以监听录音开始、结束、错误等事件,以及调用相关方法控制录音的开始和停止。在录音结束后,会触发 onStop 事件,从而获取录音文件的临时路径。

请注意,在使用录音功能前,需要在小程序的 app.json 文件中添加相应的权限声明:
{
  "permissions": {
    "record": {
      "desc": "用于录制音频"
    }
  }
}



转载请注明出处:http://www.zyzy.cn/article/detail/893/微信小程序