gpt4 book ai didi

javascript - Android 上的 Chrome 无法播放来自对象 URL 的录制音频

转载 作者:太空宇宙 更新时间:2023-11-04 16:07:18 24 4
gpt4 key购买 nike

我正在使用 Recorder.js 通过音频 API 录制内容,我想让用户有机会在将录音上传到服务器之前收听他们的录音。录音代码很大程度上基于 supplied example ,但不是导出到 WAV 以供下载,而是使用 blob 并设置音频元素的 src 属性以进行播放。负责的代码(停止录制后调用)如下所示:

function createAudioPlayer() {
recorder && recorder.exportWAV(function (blob) {
var url = URL.createObjectURL(blob);
var au = document.getElementById('recording');
au.src = url;
});
}

结果是这样的: <audio id="recording" src="blob:https%3A//example.com/499ca96f-37b2-4515-bd1b-3c298f201dbd" controls="controls"></audio>

在 OS X 10.11 上的 Chrome 50 和 Firefox 46 以及 Windows 10 上的 Edge 13 中可以播放此音频。Android 6.0 上的 Chrome 50 可以正常录制和上传,但在 play() 时拒绝播放并出现以下错误在音频元素上调用:

Uncaught (in promise) DOMException: The element has no supported sources.

我试过添加 type="audio/wav"但这没有用。如果我从 blob 上传文件(使用文件 API 和 XHR)并使用 src服务器上 wav 文件的“正常”URL 属性也可以正常播放。应该更改什么以便用户可以在上传之前收听他们的录音?

最佳答案

尚不支持。我们正在进行修复它的工作,希望在 Chrome 51 中。(https://groups.google.com/a/chromium.org/forum/#!topic/chromium-reviews/Qi4dLcKjcCM)

关于javascript - Android 上的 Chrome 无法播放来自对象 URL 的录制音频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37140445/

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