Initializes a new sequencer without any songs loaded.
The synthesizer instance to use with this sequencer.
If the MIDI messages should be sent to an event instead of the synth.
This is used by spessasynth_lib to pass them over to Web MIDI API.
If true, SequencerEvent.midiMessage will be emitted.
Indicates if the sequencer has finished playing the song list.
The current loop count of the sequencer.
If set to Infinity, it will loop forever.
If set to 0, the loop is disabled.
This value will decrease with every loop.
OptionalonThis property can be defined as a function that listens for events. All events are defined in SequencerEvent.
The event that occurred.
A boolean indicating if the smart preloading should be enabled. It is highly recommended. This causes the sequencer to BasicMIDI.preloadSynth all the songs when loading them (except for those with embedded sound banks).
Defaults to true.
If the notes that were playing when the sequencer was paused should be re-triggered. This will re-trigger the notes at the same velocity when unpausing the sequencer.
Defaults to true.
ReadonlyshuffledThe shuffled song indexes. These will be played in order when the shuffle mode is enabled.
Indicates if the sequencer should skip to the first note on event. Defaults to true.
Sequencer's current song list.
ReadonlysynthThe synthesizer connected to the sequencer.
The current time of the sequencer. This is the time in seconds since the sequencer started playing.
This field can be set to trigger a change.
The current time of the sequencer. This is the time in seconds since the sequencer started playing.
This field can be set to trigger a change.
the time to set in seconds.
The length of the current sequence in seconds.
The currently loaded MIDI data.
A boolean indicating if the sequencer is currently paused.
The sequencer's playback rate. This is the rate at which the sequencer plays back the MIDI data.
This field can be set to trigger a change.
The sequencer's playback rate. This is the rate at which the sequencer plays back the MIDI data.
This field can be set to trigger a change.
the playback rate to set.
Controls if the sequencer should shuffle the songs in the song list.
If true, the sequencer will play the songs in a random order.
Songs are shuffled on a loadNewSongList call.
Controls if the sequencer should shuffle the songs in the song list.
If true, the sequencer will play the songs in a random order.
Songs are shuffled on a loadNewSongList call.
The current song index in the song list. If shuffle mode is enabled, this is the index of the shuffled song list.
This field can be set to trigger a change.
The current song index in the song list. If shuffle mode is enabled, this is the index of the shuffled song list.
This field can be set to trigger a change.
Loads a new song list into the sequencer.
The list of songs to load.
Pauses the playback.
Starts or resumes the playback of the sequencer. If the sequencer is paused, it will resume from the paused time.
Processes all messages at the current time. Call this every rendering quantum to process the sequencer events in real-time.
This module is responsible for playing back BasicMIDI sequences to SpessaSynthProcessor.