midifile-ts
Advanced tools
Comparing version 1.3.0 to 1.3.1
@@ -1,2 +0,1 @@ | ||
import { AnyEvent } from "./event"; | ||
declare const MIDIChannelEvents: { | ||
@@ -195,2 +194,111 @@ readonly noteOff: 8; | ||
}; | ||
interface Event<T extends string> { | ||
deltaTime: number; | ||
type: T; | ||
} | ||
interface MetaEvent<T extends string> extends Event<"meta"> { | ||
subtype: T; | ||
} | ||
/* Meta */ | ||
interface SequenceNumberEvent extends MetaEvent<"sequenceNumber"> { | ||
number: number; | ||
} | ||
interface TextEvent extends MetaEvent<"text"> { | ||
text: string; | ||
} | ||
interface CopyrightNoticeEvent extends MetaEvent<"copyrightNotice"> { | ||
text: string; | ||
} | ||
interface TrackNameEvent extends MetaEvent<"trackName"> { | ||
text: string; | ||
} | ||
interface InstrumentNameEvent extends MetaEvent<"instrumentName"> { | ||
text: string; | ||
} | ||
interface LyricsEvent extends MetaEvent<"lyrics"> { | ||
text: string; | ||
} | ||
interface MarkerEvent extends MetaEvent<"marker"> { | ||
text: string; | ||
} | ||
interface CuePointEvent extends MetaEvent<"cuePoint"> { | ||
text: string; | ||
} | ||
interface ChannelPrefixEvent extends MetaEvent<"midiChannelPrefix"> { | ||
value: number; | ||
} | ||
interface PortPrefixEvent extends MetaEvent<"portPrefix"> { | ||
port: number; | ||
} | ||
interface EndOfTrackEvent extends MetaEvent<"endOfTrack"> { | ||
} | ||
interface SetTempoEvent extends MetaEvent<"setTempo"> { | ||
microsecondsPerBeat: number; | ||
} | ||
interface SmpteOffsetEvent extends MetaEvent<"smpteOffset"> { | ||
frameRate: number; | ||
hour: number; | ||
min: number; | ||
sec: number; | ||
frame: number; | ||
subframe: number; | ||
} | ||
interface TimeSignatureEvent extends MetaEvent<"timeSignature"> { | ||
numerator: number; | ||
denominator: number; | ||
metronome: number; | ||
thirtyseconds: number; | ||
} | ||
interface KeySignatureEvent extends MetaEvent<"keySignature"> { | ||
key: number; | ||
scale: number; | ||
} | ||
interface SequencerSpecificEvent extends MetaEvent<"sequencerSpecific"> { | ||
data: number[]; | ||
} | ||
interface UnknownMetaEvent extends MetaEvent<"unknown"> { | ||
data: number[]; | ||
} | ||
/* Channel */ | ||
interface ChannelEvent<T extends string> extends Event<"channel"> { | ||
channel: number; | ||
subtype: T; | ||
} | ||
interface NoteOffEvent extends ChannelEvent<"noteOff"> { | ||
noteNumber: number; | ||
velocity: number; | ||
} | ||
interface NoteOnEvent extends ChannelEvent<"noteOn"> { | ||
noteNumber: number; | ||
velocity: number; | ||
} | ||
interface NoteAftertouchEvent extends ChannelEvent<"noteAftertouch"> { | ||
noteNumber: number; | ||
amount: number; | ||
} | ||
interface ProgramChangeEvent extends ChannelEvent<"programChange"> { | ||
value: number; | ||
} | ||
interface ChannelAftertouchEvent extends ChannelEvent<"channelAftertouch"> { | ||
amount: number; | ||
} | ||
interface PitchBendEvent extends ChannelEvent<"pitchBend"> { | ||
value: number; | ||
} | ||
interface UnknownChannelEvent extends ChannelEvent<"unknown"> { | ||
data: number; | ||
} | ||
/* Controller */ | ||
interface ControllerEvent extends ChannelEvent<"controller"> { | ||
controllerType: number; | ||
value: number; | ||
} | ||
/* Other */ | ||
interface SysExEvent extends Event<"sysEx"> { | ||
data: number[]; | ||
} | ||
interface DividedSysExEvent extends Event<"dividedSysEx"> { | ||
data: number[]; | ||
} | ||
type AnyEvent = SequenceNumberEvent | TextEvent | CopyrightNoticeEvent | TrackNameEvent | InstrumentNameEvent | LyricsEvent | MarkerEvent | CuePointEvent | ChannelPrefixEvent | PortPrefixEvent | EndOfTrackEvent | SetTempoEvent | SmpteOffsetEvent | TimeSignatureEvent | KeySignatureEvent | SequencerSpecificEvent | UnknownMetaEvent | NoteOffEvent | NoteOnEvent | NoteAftertouchEvent | ProgramChangeEvent | ChannelAftertouchEvent | PitchBendEvent | UnknownChannelEvent | ControllerEvent | SysExEvent | DividedSysExEvent; | ||
type StreamSource = DataView | number[] | ArrayBuffer | Uint8Array; | ||
@@ -236,3 +344,2 @@ /* Wrapper for accessing strings through sequential reads */ | ||
declare function write(tracks: AnyEvent[][], ticksPerBeat?: number): Uint8Array; | ||
export { MIDIChannelEvents, MIDIControlEventNames, MIDIControlEvents, MIDIMetaEventNames, MIDIMetaEvents, deserialize, MidiFile, MidiHeader, read, serialize, Stream, StreamSource, write }; | ||
export * from "./event"; | ||
export { MIDIChannelEvents, MIDIControlEventNames, MIDIControlEvents, MIDIMetaEventNames, MIDIMetaEvents, deserialize, Event, MetaEvent, SequenceNumberEvent, TextEvent, CopyrightNoticeEvent, TrackNameEvent, InstrumentNameEvent, LyricsEvent, MarkerEvent, CuePointEvent, ChannelPrefixEvent, PortPrefixEvent, EndOfTrackEvent, SetTempoEvent, SmpteOffsetEvent, TimeSignatureEvent, KeySignatureEvent, SequencerSpecificEvent, UnknownMetaEvent, ChannelEvent, NoteOffEvent, NoteOnEvent, NoteAftertouchEvent, ProgramChangeEvent, ChannelAftertouchEvent, PitchBendEvent, UnknownChannelEvent, ControllerEvent, SysExEvent, DividedSysExEvent, AnyEvent, MidiFile, MidiHeader, read, serialize, Stream, StreamSource, write }; |
{ | ||
"name": "midifile-ts", | ||
"version": "1.3.0", | ||
"version": "1.3.1", | ||
"description": "", | ||
@@ -5,0 +5,0 @@ "main": "dist/index.js", |
154806
35
2465