问题描述
我有一个在ios上运行的客户端聊天,一个带RN的Android,另一个是在Web上使用ReactJS运行的客户端。 在一项功能中,用户可以录制语音音频(如Whatsapp),在测试多种格式后,只有“ audio / mp4”才能在两种平台(ios和android)上工作。 该错误是在Web应用程序中。声音是用MediaRecord API录制的,我得到一个斑点并通过{type:'audio / mp4'},该声音在网络上可以正常使用,但在移动客户端上不起作用。 代码:
navigator.mediaDevices.getUserMedia({ audio: true })
.then(stream => {
let audioChunks = []
this.recorder = new MediaRecorder(stream)
this.recorder.start();
let interval
this.recorder.ondataavailable = (e) => {
audioChunks.push(e.data);
}
this.recorder.onstop = (e) => {
//obtain file and convert to blob type: 'audio/mp4'
let blob = new Blob(audioChunks,{ "type": "audio/mp4" })
//save audio recorded
this.props.saveAudioRecorded(blob)
//clean audioChunks array
audioChunks = [];
//Stop stream
stream.getTracks().forEach(track => {
track.stop();
});
}
}
})
查看元数据,我发现文件未格式化为“ audio / mp4”,而是返回MKA类型,这就是它在移动设备上不起作用的原因。
现在,如何正确将音频转换为“音频/ mp4”和AAC编码?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)