录音

最近更新时间:2023-11-10 15:39:26

我的收藏

startRecord

该 API 使用方法为 wx.startRecord(Object object)
功能说明:开始录音。当主动调用 wx.stopRecord,或者录音超过1分钟时自动结束录音。当用户离开小程序时,此接口无法调用。
参数及说明:Object object。
属性
类型
默认值
必填
说明
success
function
-
接口调用成功的回调函数
fail
function
-
接口调用失败的回调函数
complete
function
-
接口调用结束的回调函数(调用成功、失败都会执行)
object.success 回调函数参数:Object res。
属性
类型
说明
tempFilePath
string
录音文件的临时路径 (本地路径)
示例代码
wx.startRecord({
success (res) {
const tempFilePath = res.tempFilePath
}
})
setTimeout(function () {
wx.stopRecord() // 结束录音
}, 10000)

stopRecord

该 API 使用方法为 wx.stopRecord(Object object)
功能说明:停止录音。
参数及说明:Object object。
属性
类型
默认值
必填
说明
success
function
-
接口调用成功的回调函数
fail
function
-
接口调用失败的回调函数
complete
function
-
接口调用结束的回调函数(调用成功、失败都会执行)
示例代码:
wx.startRecord({
success (res) {
const tempFilePath = res.tempFilePath
}
})
setTimeout(function () {
wx.stopRecord() // 结束录音
}, 10000)

getRecorderManager

该 API 使用方法为 RecorderManager wx.getRecorderManager()
功能说明:获取全局唯一的录音管理器 RecorderManager。
返回值:RecorderManager

RecorderManager

.onError

该 方法 使用方式为 RecorderManager.onError(function listener)
功能说明:监听录音错误事件。
参数及说明:function listener,录音错误事件的监听函数。Object res 参数。
属性
类型
说明
errMsg
string
错误信息

.onFrameRecorded

该 方法 使用方式为 RecorderManager.onFrameRecorded(function listener)
功能说明:监听已录制完指定帧大小的文件事件。如果设置了 frameSize,则会回调此事件。
参数及说明:function listener,已录制完指定帧大小的文件事件的监听函数。Object res 参数。
属性
类型
说明
frameBuffer
ArrayBuffer
录音分片数据
isLastFrame
boolean
当前帧是否正常录音结束前的最后一帧

.onInterruptionBegin

该 方法 使用方式为 RecorderManager.onInterruptionBegin(function listener)
功能说明:监听录音因为受到系统占用而被中断开始事件。以下场景会触发此事件:微信语音聊天、微信视频聊天。此事件触发后,录音会被暂停。pause 事件在此事件后触发。
参数及说明:function listener,录音因为受到系统占用而被中断开始事件的监听函数。

.onInterruptionEnd

该 方法 使用方式为 RecorderManager.onInterruptionEnd(function listener)
功能说明:监听录音中断结束事件。在收到 interruptionBegin 事件之后,小程序内所有录音会暂停,收到此事件之后才可再次录音成功。
参数及说明:function listener,录音中断结束事件的监听函数。

.onPause

该 方法 使用方式为 RecorderManager.onPause(function listener)
功能说明:监听录音暂停事件。
参数及说明:function listener,录音暂停事件的监听函数。

.onResume

该 方法 使用方式为 RecorderManager.onResume(function listener)
功能说明:监听录音继续事件。
参数及说明:function listener,录音继续事件的监听函数。

.onStart

该 方法 使用方式为 RecorderManager.start(Object object)
功能说明:监听录音开始事件。
参数及说明:function listener,录音开始事件的监听函数。

.onStop

该 方法 使用方式为 RecorderManager.onStop(function listener)
功能说明:监听录音结束事件。
参数及说明:function listener,录音结束事件的监听函数。Object res 参数。
属性
类型
说明
tempFilePath
string
录音文件的临时路径 (本地路径)
duration
number
录音总时长,单位:ms
fileSize
number
录音文件大小,单位:Byte

.pause

该 方法 使用方式为 RecorderManager.pause()
功能说明:暂停录音。

.resume

该 方法 使用方式为 RecorderManager.resume()
功能说明:继续录音。

.start

该 方法 使用方式为 RecorderManager.start(Object object)
功能说明:开始录音。
参数及说明:Object object
属性
类型
默认值
必填
说明
duration
number
60000
录音的时长,单位 ms,最大值 600000(10 分钟)
sampleRate
number
80000
采样率(pc不支持)
numberOfChannels
number
2
录音通道数
encodeBitRate
number
48000
编码码率,有效值见下表格
format
string
aac
音频格式
frameSize
number
-
指定帧大小,单位 KB。传入 frameSize 后,每录制指定帧大小的内容后,会回调录制的文件内容,不指定则不会回调。暂仅支持 mp3、pcm 格式
audioSource
string
auto
指定录音的音频输入源
采样率与编码码率限制
每种采样率有对应的编码码率范围有效值,设置不合法的采样率或编码码率会导致录音失败,具体对应关系如下表。
采样率
编码码率
8000
16000 ~ 48000
11025
16000 ~ 48000
12000
24000 ~ 64000
16000
24000 ~ 96000
22050
32000 ~ 128000
24000
32000 ~ 128000
32000
48000 ~ 192000
44100
64000 ~ 320000
48000
64000 ~ 320000

.stop

该 方法 使用方式为 RecorderManager.stop()
功能说明:暂停录音。