export const SongChangeType = { backwards: 0, // no additional data forwards: 1, // no additional data shuffleOn: 2, // no additional data shuffleOff: 3, // no additional data index: 4 // songIndex }; /** * @enum {number} * @property {number} loadNewSongList - 0 -> [...song] * @property {number} pause - 1 -> isFinished * @property {number} stop - 2 -> (no data) * @property {number} play - 3 -> resetTime * @property {number} setTime - 4 -> time * @property {number} changeMIDIMessageSending - 5 -> sendMIDIMessages * @property {number} setPlaybackRate - 6 -> playbackRate * @property {number} setLoop - 7 -> [loop, count] * @property {number} changeSong - 8 -> [changeType, data] * @property {number} getMIDI - 9 -> (no data) * @property {number} setSkipToFirstNote -10 -> skipToFirstNoteOn * @property {number} setPreservePlaybackState -11 -> preservePlaybackState */ export const WorkletSequencerMessageType = { loadNewSongList: 0, pause: 1, stop: 2, play: 3, setTime: 4, changeMIDIMessageSending: 5, setPlaybackRate: 6, setLoop: 7, changeSong: 8, getMIDI: 9, setSkipToFirstNote: 10, setPreservePlaybackState: 11 }; /** * * @enum {number} */ export const WorkletSequencerReturnMessageType = { midiEvent: 0, // [...midiEventBytes] songChange: 1, // [songIndex, isAutoPlayed] timeChange: 2, // newAbsoluteTime pause: 3, // no data getMIDI: 4, // midiData midiError: 5, // errorMSG metaEvent: 6, // [event, trackNum] loopCountChange: 7, // newLoopCount songListChange: 8 // songListData };