有没有其他方法可以加载webaudioAPI,除了xmlhttprequest ??
似乎xmlhttprequest只能与本地服务器一起玩“localhost / blablabla”我希望让我的游戏可以在本地播放而不需要像'file:/// E:/ blablabla'这样的服务器
THX
问候
答案 0 :(得分:1)
好吧,您可以将文件重新编码为数据:URL。
答案 1 :(得分:0)
使用音频API时你的目标是什么?有两件事可以用作来源。首先,您可以使用Source节点,您可以指定192000Hz PCM。如您所知,这是由arraybuffer解码的。.decodeAudioData
。这需要大量的时间和精力。第二种更简单的方法是使用<audio>
标记。你可以给它一个src(甚至使用file:/// E:/ blablabla),它加载速度非常快或者用data-url指定它(也比context.decodeAudioData
快得多)。
示例HTML:
<audio src="E:/blablabla.mp3"></audio>
示例JS:
window.audiotag = document.getElementsByTagName('audio')[0];
function audioReady() {
window.AudioContext = window.AudioContext||window.webkitAudioContext;
context = new AudioContext();
source = context.createMediaElementSource(audiotag);
source.connect(context.destination);
audiotag.play();
}
audiotag.onload = audioReady();
这只是让音频从音频标签播放,但当音频标签连接到源节点时,它会自动静音并将音频发送到audio-api。