- 当前 Bug 的表现(可附上截图)
- 预期表现
- 复现路径
- 提供一个最简复现 Demo
小程序录音时,设定frameSize后,在回调函数
recorderManager.onFrameRecorded
接收到的isLastFrame不正确。
即使是最后一个分片返回的也是false
代码片段
const options = { duration: 10000, // 录音的时长,单位 ms,最大值 600000(10 分钟) sampleRate: 16000, // 采样率 numberOfChannels: 1, // 录音通道数 encodeBitRate: 48000, // 编码码率 format: 'mp3' , // 音频格式 frameSize: 1 //200ms的切片大小 } |
recorderManager.onFrameRecorded(res => { const { frameBuffer, isLastFrame } = res console.log(res) ws.sendMessage(api.Frame, {}, { seq: seq++, isEnd: isLastFrame ? 1 : 0, data: wx.arrayBufferToBase64(frameBuffer), }) }) |
上面的ws.sendMessage是用websocket送信。
同样遇见了这个问题 有时候就不正常 明明录音结束了 返回的 依旧不是false
请问楼主知道怎么解析frameBuffer嘛
你好,麻烦提供出现问题的具体机型、微信版本号、系统版本号,以及能复现问题的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)
机型:iphone X
iOS版本:12.3.1
微信版本号:7.0.4
由于小程序通过websocket向后台发送数据,所有无法给出完整的代码段。
那麻烦在手机微信那里上传下日志: 我->设置->帮助与反馈右上角有个上报日志的入口,麻烦提供一下微信号,时间点
嗨,我这边测试了华为Nova3e和iPhonexr 微信版本都是7.0.5是没有问题的,更新下微信版本看看