我是在我的 javascript 代码中使用 MIDI 的新手,我想创建一个应用程序,它只根据用户的输入生成一个 MIDI 文件。我看过使用MIDI.js,但我不确定我是否需要任何库。理想情况下,我希望能够使用音符值而不是十六进制 MIDI 代码……我需要在其中使用转换器plugin.js
吗?
我目前的研究表明生成的声音字体是建议的方法。但是,我想导出/生成一个 MIDI 文件以在专业 DAW 中使用。
谢谢你的帮助。
我是在我的 javascript 代码中使用 MIDI 的新手,我想创建一个应用程序,它只根据用户的输入生成一个 MIDI 文件。我看过使用MIDI.js,但我不确定我是否需要任何库。理想情况下,我希望能够使用音符值而不是十六进制 MIDI 代码……我需要在其中使用转换器plugin.js
吗?
我目前的研究表明生成的声音字体是建议的方法。但是,我想导出/生成一个 MIDI 文件以在专业 DAW 中使用。
谢谢你的帮助。
您可以使用我找到的一个名为MidiWriterJS的库。
这是非常容易使用:
最简单的安装方法是使用npm。
$ npm install midi-writer-js
然后
var MidiWriter = require('midi-writer-js');
var tracks = [];
for(t of <your existing track array>){
var notes = [];
for(n of <your existing note array for the track>){
notes.push(new MidiWriter.NoteEvent({pitch: <array of all notes in the chord>, duration: <how long the chord should last>});
}
var newTrack = new MidiWriter.Track();
newTrack.addEvent(notes, function(event, index){ return {sequential: true}; });
tracks.push(newTrack);
}
var writer = new MidiWriter.Writer(tracks);
writer.saveMIDI(<filename>);