音频循环在Javascript中循环播放没有延迟

时间:2014-11-29 09:46:57

标签: javascript html audio buzz.js soundjs

我目前正在帮朋友开发一个网络应用程序,我需要大约6个音轨(所有使用相同的时间签名)来连续循环并保持同步。为了给出上下文,它是一个字体 - 音乐配对应用程序,只要选择了字体,相关的音频循环就会开始播放,当用户不断选择字体时,音轨层会开始像一首歌。

我尝试过使用SoundJS和Buzz声音库,但我一直遇到同样的问题:循环之间总是有一点延迟。如果我的所有音轨长度都相同,那就没问题了,但是它们不是很快,所以很快就会出现不同步的情况。

这似乎是一个已知问题,但我似乎无法找到解决问题的方法。我遇到了Hivenfour的SeamlessLoop 2.0,但是 - 除非我完全错误地使用它 - 它实际上似乎没有用(设置一个卷会返回错误)。

如果有人有这方面的经验,我会非常感谢任何意见!谢谢:))

1 个答案:

答案 0 :(得分:0)

SoundJS WebAudioPlugin采用了一种前瞻性方法,可以无缝循环播放网络音频,在here中对音频时序非常有帮助。 另请注意,某些压缩格式会将白噪声插入声音中。我相信mp3会这样做。 WAV得到广泛支持,但没有。

对于HTMLAudioPlugin,我们像浏览器允许的那样平滑循环,但它与WebAudio的精度不同。

希望有所帮助。