# getRecorderManager

获取全局唯一的 recorderManager 。通过 recorderManager 进行录音操作和管理。

注意事项:

  • recorderManager全局唯一跟共享
  • 如果多次调用 getRecorderManager ,则会获取同一个录音管理器的实例,对实例下同一方法的多次调用可能会导致回调被覆写。建议只使用一个录音管理器来操作录音

# 支持说明

应用能力 Android iOS PC 预览效果
小程序 3.9.0 3.7.0 X
扫码预览
用BoosHi扫码或PC端点击
网页应用 待开发 待开发 X 待提供

# 输入

# 输出

返回值:

名称 数据类型 描述
recorderManager object RecorderManager 对象
  ∟ start function 开始录音
  ∟ pause function 暂停录音
  ∟ resume function 继续录音
  ∟ stop function 停止录音
  ∟ onStart function 录音开始事件回调
  ∟ onPause function 录音暂停事件回调
  ∟ onResume function 录音恢复事件回调
  ∟ onStop function 录音停止事件回调,res对象带有一个类型为string的属性tempFilePath,表示录音文件的地址。
  ∟ onFrameRecorded function 监听已录制完指定帧大小的文件事件。
如果设置了 frameSize,则会回调此事件。
  ∟ onError function 监听录音错误事件

# 示例代码

const recorderManager = bz.getRecorderManager();

recorderManager.onStart(() => {
    console.log('recorder start')
});
recorderManager.onPause(() => {
    console.log('recorder pause')
});
recorderManager.onResume(() => {
    console.log('recorder onResume')
});
recorderManager.onStop((res) => {
    console.log('recorder stop', res)
    const { tempFilePath } = res
});
recorderManager.onFrameRecorded((res) => {
    const { frameBuffer } = res
    console.log('frameBuffer.byteLength', frameBuffer.byteLength)
});

const options = {
    duration: 10000,
    sampleRate: 44100,
    numberOfChannels: 1,
    encodeBitRate: 192000,
    format: 'aac',
    frameSize: 50
};

recorderManager.start(options);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
最后更新于 : 2/28/2023, 7:54:02 PM