html Web音频API -合并两个音频缓冲区

7jmck4yq  于 2023-02-06  发布在  其他
关注(0)|答案(3)|浏览(183)

我有音频文件,我正在使用Web音频API在浏览器上播放它们。现在我想同时播放所有的音频文件。
我得到了所有的音频文件使用网络音频API的音频缓冲区。我可以通过所有的循环,可以播放它们,但我想合并到一个单一的音频缓冲区,然后播放所有的音频缓冲区。
有没有人想到在Web音频API中合并两个音频缓冲区?

2w3rbyxf

2w3rbyxf1#

如果你想同时播放所有的,只需将每个缓冲区连接到context.destination(或者连接到目的地的大多数其他节点),然后同时启动它们。

idv4meu8

idv4meu82#

如果你只需要播放它,你应该把两个源都连接到目的地。
要真正将两个缓冲区合并为另一个缓冲区,可以使用offlineAudioContext或自己合并数组,如下所示

gmxoilav

gmxoilav3#

如果您对两个或多个音频PCM阵列求和,即每个样本的buffer1[i] + buffer2[i],则您将得到包含两个声音的第三个音频。
例如,您甚至可以在每个轨道上使用倍增因子来控制其音量。
希望这能帮上忙,这只是个开始。

相关问题