MidiNativeAudioBackend class abstract

Contract for a low-latency native MIDI backend.

This package already generates complete MIDI mapping in Dart. The native backend is optional and can be used to provide sample-accurate scheduling, SoundFont synthesis, and metronome playback with lower latency.

Implementers

Constructors

MidiNativeAudioBackend()

Properties

hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

clearScheduledEvents() Future<void>
Clears currently scheduled sequence events on native side.
dispose() Future<void>
Releases all native resources.
initialize({required String primarySoundFontPath, String? metronomeSoundFontPath, int sampleRate = 48000}) Future<bool>
Initializes native audio resources.
isReady() Future<bool>
Indicates whether native backend is initialized and ready.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
processTies() Future<void>
Triggers tie processing in the native sequencer.
scheduleMetronome({required int totalTicks, int countInBeats = 0}) Future<void>
Schedules metronome events for the current sequence.
scheduleNote({required int midiNote, required int startTick, required int durationTicks, required int velocity, int channel = 0, bool isTied = false}) Future<void>
Schedules a note event in PPQ ticks.
setTempo(int bpm) Future<void>
Sets current sequencer tempo.
setTicksPerQuarter(int ticksPerQuarter) Future<void>
Sets ticks-per-quarter resolution used by scheduled PPQ events.
setTimeSignature({required int numerator, required int denominator}) Future<void>
Sets current sequencer time signature.
start() Future<void>
Starts native playback.
stop() Future<void>
Stops playback and keeps resources allocated.
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited