我正在尝试使用MIDI.js在浏览器中播放声音。https://github.com/mudcube/MIDI.js
它在我的一台电脑上的chrome浏览器中工作,但在我的另一台电脑(那是一本chromebook)上不工作,或者在我两个朋友的电脑上的chrome浏览器上不工作。
它打印到控制台
"啊哦!出了问题!错误代码:1"MIDI.js:349
指的是MIDI.js 的这一部分
navigator.requestMIDIAccess(function (access) {
plugin = access;
output = plugin.getOutput(0);
if (callback) callback();
}, function (err) {
console.log("uh-oh! Something went wrong! Error code: " + err.code );
});
我发现这篇帖子似乎是指我遇到的问题,但我不太确定
https://plus.google.com/+ChrisWilson/posts/cs4J6sS9qmJ
它说出于某种原因交换代码的某些部分我无法理解
navigator.requestMIDIAccess( successCallback, failureCallback );
变为:
navigator.requestMIDIAccess().then( successCallback, failureCallback );
但是在替换了MIDI.js 344上的那个部分之后,我得到了错误消息
未捕获的类型错误:无法调用未定义的方法"then">
如果有任何关于如何解决这个问题的帮助,使其在所有浏览器中都能工作,或者至少在所有chrome浏览器中都可以,我们将不胜感激。谢谢
Chromebook还没有Web MIDI API支持(如果你没有启用,也没有在Mac或Windows上,如果你没有运行Canary,也没有Windows上)。