如何解决Android Chrome 中的 AudioContext 音频卡顿
我在 ionic 应用程序中使用 AudioContext 将原始 PCM 音频数据流式传输到后端,如果客户端是 Android 上的谷歌浏览器,则生成的音频会出现很多卡顿现象。所有其他 Android 浏览器都可以正常工作(尝试过 firefox、edge 和三星浏览器),所有桌面浏览器也可以正常工作,包括谷歌浏览器。
startRecording() {
navigator.mediaDevices
.getUserMedia({
audio: {
echoCancellation: true,},})
.then((s) => {
this.stream = s;
this.record();
this.startRecordingStream(this.stream);
});
startRecordingStream(s) {
let audioContext = new AudioContext();
this.scriptprocessor = audioContext.createscriptprocessor(2048,2,1);
let input = audioContext.createmediastreamsource(s);
input.connect(this.scriptprocessor);
this.scriptprocessor.connect(audioContext.destination);
this.scriptprocessor.addEventListener("audioprocess",this.streamAudioData);
}
我尝试在客户端记录缓冲区,它周期性地散布零。
我还在我的设备上测试了这个示例 https://mozdevs.github.io/MediaRecorder-examples/filter-and-record-live-audio.html,它使用了 audioContext,它似乎在 android 上的 google chrome 上遇到了相同的音频口吃。
是否有任何解决方法?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。