千家信息网

小程序中如何使用wx.getRecorderManager

发表于:2024-10-24 作者:千家信息网编辑
千家信息网最后更新 2024年10月24日,这篇文章主要为大家展示了小程序中如何使用wx.getRecorderManager,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带大家一起来研究并学习一下"小程序中如何使用wx.get
千家信息网最后更新 2024年10月24日小程序中如何使用wx.getRecorderManager

这篇文章主要为大家展示了小程序中如何使用wx.getRecorderManager,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带大家一起来研究并学习一下"小程序中如何使用wx.getRecorderManager"这篇文章吧。

基础库 1.6.0 开始支持,低版本需做兼容处理

获取全局唯一的录音管理器 recorderManager

recorderManager

recorderManager 对象的方法列表:

方法参数说明
startoptions开始录音
pause暂停录音
resume继续录音
stop停止录音
onStartcallback录音开始事件
onPausecallback录音暂停事件
onStopcallback录音停止事件,会回调文件地址
onFrameRecordedcallback已录制完指定帧大小的文件,会回调录音分片结果数据。如果设置了 frameSize ,则会回调此事件
onErrorcallback录音错误事件, 会回调错误信息

start(options) 说明:

属性类型必填说明
durationNumber指定录音的时长,单位 ms ,如果传入了合法的 duration ,在到达指定的 duration 后会自动停止录音,最大值 600000(10 分钟),默认值 60000(1 分钟)
sampleRateNumber采样率,有效值 8000/16000/44100
numberOfChannelsNumber录音通道数,有效值 1/2
encodeBitRateNumber编码码率,有效值见下表格
formatString音频格式,有效值 aac/mp3
frameSizeNumber指定帧大小,单位 KB。传入 frameSize 后,每录制指定帧大小的内容后,会回调录制的文件内容,不指定则不会回调。暂仅支持 mp3 格式。

其中,采样率和码率有一定要求,具体有效值如下:

采样率编码码率
800016000 ~ 48000
1102516000 ~ 48000
1200024000 ~ 64000
1600024000 ~ 96000
2205032000 ~ 128000
2400032000 ~ 128000
3200048000 ~ 192000
4410064000 ~ 320000
4800064000 ~ 320000

onStop(callback) 回调结果说明:

属性类型说明
tempFilePathString录音文件的临时路径

onFrameRecorded(callback) 回调结果说明:

属性类型说明
frameBufferArrayBuffer录音分片结果数据
isLastFrameBoolean当前帧是否正常录音结束前的最后一帧

onError(callback) 回调结果说明:

属性类型说明
errMsgString错误信息

示例代码:

const recorderManager = wx.getRecorderManager()recorderManager.onStart(() => {  console.log('recorder start')})recorderManager.onResume(() => {  console.log('recorder resume')})recorderManager.onPause(() => {  console.log('recorder pause')})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)

小程序是什么意思

小程序是一种不需要下载安装即可使用的应用,通过扫描二维码或是搜一搜立即使用,操作简单,便于传播,能够实现消息通知、线下扫码、公众号关联等七大功能。它基于微信运行的,类似于APP,想用就用,用完即走,不会占用内存。

以上就是关于"小程序中如何使用wx.getRecorderManager"的内容,如果该文章对您有所帮助并觉得写得不错,劳请分享给您的好友一起学习新知识,若想了解更多相关知识内容,请多多关注行业资讯频道。

0