MIDI.js - 无法更改乐器

时间:2013-12-17 20:08:38

标签: javascript midi

我正在尝试使用glockenspiel而不是默认原声钢琴初始化MIDI.js。但我没有声音

我在名为soundfont的目录中有glockenspiel-ogg.js和glockenspiel-mp3.js(从https://github.com/gleitz/midi-js-soundfonts下载)。

我在window.onload上运行以下代码。我哪里错了?

MIDI.loadPlugin({
soundfontUrl: "soundfont/",
instrument: "glockenspiel",
callback: function() {
MIDI.programChange(0, 10); 
MIDI.noteOn(0, 35, 127, 0);
}
});

2 个答案:

答案 0 :(得分:8)

很抱歉回答一个老问题,但我找到了一个更好的解决方案:

在插件加载后输入:

MIDI.programChange(0, MIDI.GeneralMIDI.byName["instrument_name"].number);

答案 1 :(得分:3)

显然,我正在查看MIDI乐器代码的错误列表。这里的维基百科页面有正确的代码:https://en.wikipedia.org/wiki/General_MIDI我试图使用数字10,但是glockenspiel是数字9.所以,这一行应该是:

MIDI.programChange(0, 9);