gpt4 book ai didi

javascript - 使用XMLHttpRequest加载多个音频文件并将其附加以在Web Audio API中播放

转载 作者:行者123 更新时间:2023-12-02 23:06:24 24 4
gpt4 key购买 nike

我有一个网站,可以按照确定的顺序加载3个不同的音频文件(每个1秒),然后合并到一个音频缓冲区中(一个接一个)

为了演示我想要做什么,这是示例代码片段:

var AudioContext = window.AudioContext || window.webkitAudioContext;
var audioContextApp = new AudioContext();

var buffer1 = audioContextApp.createBufferSource();
var buffer2 = audioContextApp.createBufferSource();
var buffer3 = audioContextApp.createBufferSource();

var request1 = new XMLHttpRequest;
request1.open('GET', URL_FIRST_SOUND, true);
request1.onload = function() {
var undecodedAudio = request1.response;
audioContextApp.decodeAudioData(undecodedAudio, function(buffer) {
buffer1.buffer = buffer;
});
}
request1.load()

// DO the same thing with request2, request3 to load second and third sound.


现在,我不知道如何正确地将这3个音频缓冲区附加到一个缓冲区中,然后让用户播放合并的音频。

最佳答案

好吧,我自己想出了一个解决方案。当我将每个缓冲区连接到audioContext.destination时,我可以简单地指定第二个音频播放的时间,即当前时间加上第一个AudioBuffer的持续时间。

关于javascript - 使用XMLHttpRequest加载多个音频文件并将其附加以在Web Audio API中播放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43014404/

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