A Flutter plugin for sending and receiving MIDI messages between Flutter and physical and virtual MIDI devices.
Wraps CoreMIDI and android.media.midi in a thin dart/flutter layer. Works with USB and BLE MIDI connections on Android, and USB, network(session) and BLE MIDI connections on iOS.
This plugin is build using Swift and Kotlin on the native side, so make sure your project supports this.
MidiCommand().deviceswhich returns a list of
MidiCommand().onMidiDataReceived, after which the listener will recieve inbound MIDI messages as an UInt8List of variable length.
MidiCommand.sendData(data), where data is an UInt8List of bytes following the MIDI spec.
MidiCommandsubtypes to send PC, CC, NoteOn and NoteOff messsages.
See example folder for how to use.
For help getting started with Flutter, view our online documentation.
For help on editing plugin code, view the documentation.
Gradle and Kotlin update. AndroidX
Added missing stopScanForDevices function on iOS
Updated kotlin version. Specific MidiMessage type now exist as separate subtypes of MidiMessage. Added StopScanning function. Updated example.
Fixed stream broadcast bug
Added Support for BLE MIDI devices on iOS
Readme and formatting
Initial Release. Functioning discovery and connection to MIDI devices on Android and iOS, as well as BLE MIDI devices on Android. Functioning sending and receiving of MIDI data
Demonstrates how to use the flutter_midi_command plugin.
This project is a starting point for a Flutter application.
A few resources to get you started if this is your first Flutter project:
For help getting started with Flutter, view our online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.
Add this to your package's pubspec.yaml file:
dependencies: flutter_midi_command: ^0.0.8
You can install packages from the command line:
$ flutter pub get
Alternatively, your editor might support
flutter pub get.
Check the docs for your editor to learn more.
Now in your Dart code, you can use:
|0.0.8||Apr 9, 2019|
|0.0.7||Jan 30, 2019|
|0.0.6||Jan 30, 2019|
|0.0.5||Jan 29, 2019|
|0.0.4||Nov 25, 2018|
|0.0.3||Nov 13, 2018|
|0.0.2||Nov 9, 2018|
|0.0.1||Nov 7, 2018|
Describes how popular the package is relative to other packages. [more]
Code health derived from static analysis. [more]
Reflects how tidy and up-to-date the package is. [more]
Weighted score of the above. [more]
We analyzed this package on Jun 17, 2019, and provided a score, details, and suggestions below. Analysis was completed with status completed using:
Detected platforms: Flutter
References Flutter, and has no conflicting libraries.
flutter format to format
Support latest dependencies. (-5 points)
The version constraint in
pubspec.yaml does not support the latest published versions for 1 dependency.
Package is pre-v0.1 release. (-10 points)
While nothing is inherently wrong with versions of
0.0.*, it might mean that the author is still experimenting with the general direction of the API.