gpt4 book ai didi

javascript - Android 版 Chrome 在重放录音时出现错误

转载 作者:行者123 更新时间:2023-12-03 07:25:25 28 4
gpt4 key购买 nike

我正在使用 recorder.js 在网页上录制音频,我想为用户提供播放它的可能性。我有一个最小的测试用例,它在 Chrome 桌面上运行良好,但在 Android 上失败。录音看起来还可以。但音频标签似乎无法播放 blob(在 Android 上)。 https://www.quidoo.fr/html/test_recorder.html

window.AudioContext = window.AudioContext || window.webkitAudioContext;
navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia;
window.URL = window.URL || window.webkitURL;

var audio_context;
var recorder;

function init_recording(){
audio_context= new AudioContext();
navigator.getUserMedia({audio: true},
function (stream){
var source=audio_context.createMediaStreamSource(stream);
recorder=new Recorder(source); // defined in recorder.js
},
function(error) {
alert('No live audio input');
}
);
}

function onRecord(){
recorder.clear();
recorder.record();
}

function onStop(){
recorder.stop();
recorder.exportWAV(function(blob) {
var url = window.URL.createObjectURL(blob);
var myAudio=window.document.getElementById('myAudio');
myAudio.src=url;
});
}

init_recording();
<script src="https://www.quidoo.fr/js/libs/recorder.js"></script>
<button onclick="onRecord()">Record</button>
<button onclick="onStop()">Stop</button>
<audio id="myAudio" controls></audio>

我想知道这是否是 Android 版 Chrome 的 bug 或者我是否错过了什么。有没有办法绕过这个问题,而无需在重播之前上传它?

最佳答案

我不知道您是否仍然遇到这个问题,但我找到了几个替代方案,因为这是 Android 版 Chrome 中记录的错误。

编辑:我也刚刚找到了这个答案。这是迄今为止最简单的修复方法。 https://stackoverflow.com/a/38591006/4601393

这种替代方案并不完全用户友好,但如果您在移动设备上转到 chrome://flags 并启用“在 Android 上启用统一媒体管道”,音频标签将成功播放该网址(至少对我来说)它做了)。来源:https://bugs.chromium.org/p/chromium/issues/detail?id=253465

另一种替代方法是生成 blob 作为 URL,使用 XHR 下载 blob,为下载的 blob 生成 url,并使用音频源中的最后一个 url。我实际上并没有使用最后一种方法,但我在搜索过程中看到多个用户提到这种方式。

来源:https://bugs.chromium.org/p/chromium/issues/detail?id=227476 (评论21)

希望尽快实现修复。

关于javascript - Android 版 Chrome 在重放录音时出现错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36023303/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com