|
|
import { MIDISequenceData } from "./midi_sequence.js"; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
export class MIDIData extends MIDISequenceData |
|
|
{ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
isEmbedded = false; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
constructor(midi) |
|
|
{ |
|
|
super(); |
|
|
this._copyFromSequence(midi); |
|
|
|
|
|
|
|
|
this.isEmbedded = midi.embeddedSoundFont !== undefined; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
export const DUMMY_MIDI_DATA = { |
|
|
duration: 99999, |
|
|
firstNoteOn: 0, |
|
|
loop: { |
|
|
start: 0, |
|
|
end: 123456 |
|
|
}, |
|
|
|
|
|
lastVoiceEventTick: 123456, |
|
|
lyrics: [], |
|
|
copyright: "", |
|
|
midiPorts: [], |
|
|
midiPortChannelOffsets: [], |
|
|
tracksAmount: 0, |
|
|
tempoChanges: [{ ticks: 0, tempo: 120 }], |
|
|
fileName: "NOT_LOADED.mid", |
|
|
midiName: "Loading...", |
|
|
rawMidiName: new Uint8Array([76, 111, 97, 100, 105, 110, 103, 46, 46, 46]), |
|
|
usedChannelsOnTrack: [], |
|
|
timeDivision: 0, |
|
|
keyRange: { min: 0, max: 127 }, |
|
|
isEmbedded: false, |
|
|
RMIDInfo: {}, |
|
|
bankOffset: 0, |
|
|
midiNameUsesFileName: false, |
|
|
format: 0 |
|
|
}; |