我正在为音乐家创建一个听力训练网站。在 PHP 中,它生成简单的 MIDI 文件,其中包含错误(跑调的音调),用户必须纠正该错误。它保存 MIDI 文件,用户可以播放它。这里,有趣的部分开始了。

问题:

  • 必须 使用MIDI,因为这些练习是在随机错误的情况下创建的。
  • 不能 将其转换为 mp3/ogg 服务器端,因为虚拟主机通常不会带有胆怯和蹩脚的捆绑(如果我错了,请纠正我)。该网站将是非营利性的(或者充其量利润非常低),因此专用托管不是一个选择。
  • 有数十亿种可能的组合,因此准备一个大型音频文件是不可能的。
  • 回放 应该 跨平台。
  • 想要 通过JS控制播放。

我尝试过的:

  • <embed><object> - 这样你就可以让浏览器选择插件。它不一致,你失去了对播放的大部分控制(更不用说视觉方面了)

  • <audio> - 根本不支持 MIDI

  • QuickTime 与古董 AC_QuickTime.js 1.2 相结合,它使用 <embed><object> 动态地 - 但是 我不想惹恼用户 安装额外的插件。

问题:

我可以使用其他方法/技术吗?

有帮助吗?

解决方案

所以我终于设置了一个 VPS,安装了 timidity 和 lame,一切都非常顺利。结果在这里: yesmaestro.com

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top