在微信小程序中,使用录音功能时,你可以通过录音管理器(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
});

在上述示例中,recorderManager.start 方法用于开始录音,你可以通过设置参数来指定录音的时长、采样率、通道数、编码码率和音频格式等。在录音开始后,如果达到指定的时长或调用 recorderManager.stop 方法,将触发 onStop 事件,从而获取录音文件的临时路径。

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

确保在使用录音功能前,已经获取了录音的授权。



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