加载许多小音频文件的好习惯

时间:2016-02-16 20:36:52

标签: javascript html html5

处理许多小音频文件(wav,mp3 ......)的负载有什么好方法?我想用88键建立一个基于网络的钢琴。每个密钥都与一个微小的wav文件相关联。我知道用88个请求命中服务器并不好。我正在考虑捆绑它们(文件串联或单个音频文件)并在javascript中拆分它们。这是一种常见做法,是否有一个javascript库?

1 个答案:

答案 0 :(得分:1)

只是一些一般性意见:

我敢打赌你已经确定你真的需要一个单独的文件为每个键,出于现实的原因? 否则,你可以考虑例如只需对每个八度音阶的C键进行采样并改变音高,以减少内存消耗。动态也伴随着很多现实主义,这意味着击键的速度。对于逼真的声音,对于不同的速度范围应该有单独的样本。使用按键采样方法,您将占用大量RAM。

如果您坚持原计划,也许您可​​以尝试创建一个大的WAV文件,其中每个键都是连续播放的。然后你可以找出每个音符的指数(样本开始/停止数/索引)并回放相应的范围。使用压缩格式,此方法的可行性取决于您使用的播放库。