0

首先,我的所有经验都是开发 Ruby on Rails Web 应用程序,本质上是提供文本数据——我还没有任何富媒体经验。

我正在研究开发一个音乐符号应用程序(用于练习并且因为我对当前的许多选项不满意),并且正在尝试确定是构建一个原生应用程序还是一个网络应用程序。由于我所有的编程经验都在 Web 开发中,如果可以的话,我更愿意将它制作成一个 Web 应用程序,因为如果我选择原生,除了通常的开发陷阱之外,我还需要找到一个体面的跨平台解决方案本地人。

我怀疑即使使用 HTML5,我也无法获得足够的处理能力来使基于浏览器的音频引擎变得可行。它需要能够播放和排序的不是歌曲的单个大 .wav 文件,而是多个短的 .wav 文件同时按顺序播放。不需要录制 - 只需回放。

但由于我以前从未这样做过,我真的不知道这是否可能。所以,我想向更有经验的 HTML5 媒体开发人员提出这个建议:

对于现代浏览器(我不太关心对旧浏览器的支持),这样的音频引擎是否可行?(例如,当前的 JS 库和 HTML5 音频 API 是否足以构建这样的东西?)或者这样的东西在浏览器中是否过于消耗 CPU/内存?

谢谢!

4

3 回答 3

1

根据我的经验,桌面版 Chrome 和 Firefox 都可以很好地处理嵌入在音频标签中的多个排序的 .wav 文件。您可以使用 JavaScript 触发它们,而且一切似乎都很好。

不幸的是,Mobile Safari 似乎对同时播放多个音频标签不满意,Android 版 Chrome 也有类似的限制。这是一年前的事情,所以现在情况可能有所不同。

由于我们的目标是 iPad,因此我们最终使用 Phonegap 将一些原生声音库混入我们的 HTML 和 JavaScript 应用程序中。一个让我们大吃一惊的问题:如果您想要循环播放音频样本,请坚持使用 .wav 文件;.mp3 文件在开始和结束时都有一些沉默,这真的很难摆脱。

于 2013-10-15T21:49:37.710 回答
1

我一直在研究 Web Audio Api 来构建合成器,它仍然非常原始且难以使用。引入 Web Audio 时,基础设施似乎得到了提升,但自那以后发展不大。网络上的移动音频很少被提及、太笨重或不受支持。

同时,JS 在 V8 引擎下变得明显更快,JS 加载可以根据需要进行,异步且非阻塞,这可能会解决您的许多 CPU/内存问题。查看 NodeJS 和各种模块加载器,例如 webpack、ES6,以获取更多信息。

我认为基于网络的音乐应用将会受到关注,因为网络可以支持多个用户。这可能是继续推进这些浑水的一个很好的理由......特别是如果你正在谈论并发连接。

于 2015-07-28T01:53:51.697 回答
0

请参阅Molgav跟踪器。它适用于台式机和移动设备,它使用数百种采样乐器,它具有适用于小型移动触摸屏的 UI。看看例子听起来如何。

于 2015-08-03T20:11:20.990 回答