使用JavaScript在浏览器中检测Midi-piano键盘事件的库

时间:2018-01-29 18:17:39

标签: javascript midi web-midi midi-instrument

我想将midi钢琴键盘插入计算机的USB端口,并通过在浏览器中显示内容来响应键事件。

是否有人知道允许JavaScript与前端/浏览器中的USB midi键盘事件进行交互的库?

类似的东西:
script.js文件链接到index.html:

$(document).on('midi-key-press', function(event) {
    alert('the key that you pressed was ' + event.whichKey);
});

谢谢!

1 个答案:

答案 0 :(得分:3)

Webkits浏览器具有原生api。

最好检查细节中的规格:https://webaudio.github.io/web-midi-api/

关于Firefox,这是长期以来被问到的。似乎支持即将来临。

https://bugzilla.mozilla.org/show_bug.cgi?id=836897

我用web midi api做了一些解决方法。它可以检测任何通道上的任何midi旋钮,并将改变页面的背景颜色。基于规范提供的脚本示例。

希望你能找到一些有趣的东西。

https://github.com/webdev23/midiKnobControl

公平地说,这是一个非常强大但很难处理的api。

这需要熟悉midi协议,熟悉midi设备,并掌握最新的javascript。了解网络音频api:https://developer.mozilla.org/en-US/docs/Web/API/Web_Audio_API

的工作原理也很重要

编辑:Mozilla就在其上:https://github.com/mozilla/standards-positions/issues/58