RecorderManager.onFrameRecorded
基础库 1.0.0 开始支持本方法,这是一个同步方法。
监听已录制完指定帧大小的文件事件。如果设置了 frameSize,则会回调此事件,不设置则没有此回调。
语法
RecorderManager.onFrameRecorded(callback)
参数说明
callback
类型 | 默认值 | 必填 | 说明 | 最低支持版本 |
---|---|---|---|---|
function | 是 | 回调函数 | 1.0.0 |
回调函数参数说明
object 类型,属性如下:
属性名 | 类型 | 说明 | 最低支持版本 |
---|---|---|---|
isLastFrame | string | 是否是最后一帧 | 1.0.0 |
frameBuffer | buffer | 帧的数据 | 1.0.0 |
返回值
无
扫码体验
请使用字节宿主APP扫码
代码示例
<button type="primary" bindtap="startRecord">开始录音</button>
<view tt:if="{{frameNum > 0}}">接收到的帧数:{{frameNum}}</view>
// index.js
Page({
data: {
frameNum: 0,
},
startRecord() {
const recorderManager = tt.getRecorderManager();
const options = {
duration: 60000,
sampleRate: 12000,
numberOfChannels: 1,
encodeBitRate: 25000,
frameSize: 100,
};
recorderManager.start(options);
tt.showToast({ title: "开始录音" });
recorderManager.onFrameRecorded((frame) => {
let { isLastFrame } = frame;
this.setData({
frameNum: this.data.frameNum + 1,
});
isLastFrame && tt.showToast({ title: "录音结束" });
});
},
});
Bug & Tip
- Tip: 若设置的
frameSize
大于整个音频的大小,则在音频结束时一次性输出; - Tip: Android 仅支持 pcm 格式。
点击纠错
该文档是否对你的开发有所帮助?
有帮助
没帮助
该文档是否对你的开发有所帮助?
有帮助
没帮助