Webaudio:createMediaElementSource比XMLHttpRequest更快

时间:2015-12-29 03:25:31

标签: javascript html5-audio web-audio

每当我使用XMLHttpRequest播放音乐时,我必须至少等待10秒才能听到声音。

  • 短音立即加载。
  • 较大的声音(3分钟)播放前至少需要10秒钟。

在加载时间中起作用的因素有哪些?我的意思是我在localhost中这样做。声音应立即回放,因为我没有下载任何东西。显然,脚本运行的时间对于大小声音来说都是相同的。

我注意到使用createMediaElementSource可以大大加快速度并立即播放声音。

那是怎么回事?

1 个答案:

答案 0 :(得分:2)

有问题的音频文件有多大?如果它很大,你可能会为decodeAudioData支付很高的价格。

使用createMediaElementSource(),您可以以块的形式解码音频文件。一旦认为它有足够的缓冲区可以播放到最后,它就会开始播放。

但是使用decodeAudioData,您必须等到整个文件被解码。