A virtual piano for flutter, that renders the keys of a piano and with support for interaction and highlighting.
Features
Keys are based on MIDI note values so middle C (4) is 63.
Key callback are onNoteReleased
, onNotePressed
and onNotePressSlide
.
onNoteReleased
and onNotePressSlide
has two arguments, the relevant note and the vertical position of the touch/slide on the key. The latter can be used for simulating variable velocity or polyphonic aftertouch.
Usage
VirtualPiano(
noteRange: const RangeValues(21, 108),
highlightedNoteSets: const [
HighlightedNoteSet({44, 55, 77, 32}, Colors.green),
],
onNotePressed: (note, pos) {
// Play note
},
)