A Flutter plugin to send and receive MIDI
Alternatives To Fluttermidicommand
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
Plugins16,7861,556615a month ago58June 06, 20221bsd-3-clauseDart
Plugins for Flutter maintained by the Flutter team
Flutter Desktop Embedding7,07862 months ago10August 18, 20223apache-2.0C++
Experimental plugins for Flutter for Desktop
Flutter Ui Nice3,388
a year ago7Dart
More than 130+ pages in this beautiful app and more than 45 developers has contributed to it.
20 days ago23gpl-3.0TypeScript
Generate responsive pages and apps on HTML, Tailwind, Flutter and SwiftUI.
Sqflite2,5877991393 days ago125September 19, 2022142bsd-2-clauseDart
SQLite flutter plugin
Flutter_inappwebview2,4371463 days ago51May 05, 2022674apache-2.0Dart
A Flutter plugin that allows you to add an inline webview, to use a headless webview, and to open an in-app browser window.
Flutter Study2,254
3 years ago5
Flutter Study
Flutter_local_notifications2,154108529 days ago221September 23, 202245bsd-3-clauseDart
A Flutter plugin for displaying local notifications on Android, iOS, macOS and Linux
Flutter Intellij1,857
5 days ago518bsd-3-clauseJava
Flutter Plugin for IntelliJ
Cloudbase Framework1,827216 months ago130August 23, 202237otherJavaScript
腾讯云开发云原生一体化部署工具 🚀 CloudBase Framework:一键部署,不限框架语言,云端一体化开发,基于Serverless 架构。A front-end and back-end integrated deployment tool. One-click deploy to serverless architecture. https://docs.cloudbase.net/framework/index
Alternatives To Fluttermidicommand
Select To Compare

Alternative Project Comparisons


A Flutter plugin for sending and receiving MIDI messages between Flutter and physical and virtual MIDI devices.

Wraps CoreMIDI/android.media.midi/ALSA in a thin dart/flutter layer. Supports

  • USB and BLE MIDI connections on Android
  • USB, network(session), virtual MIDI devices and BLE MIDI connections on iOS and macOS.
  • ALSA Midi on Linux
  • Create own virtual MIDI devices on iOS

To install

  • Make sure your project is created with Kotlin and Swift support.
  • Add flutter_midi_command: ^0.4.8 to your pubspec.yaml file.
  • In ios/Podfile uncomment and change the platform to 11.0 platform :ios, '11.0'
  • On iOS, After building, Add a NSBluetoothAlwaysUsageDescription and NSLocalNetworkUsageDescription to info.plist in the generated Xcode project.
  • On Linux, make sure ALSA is installed.

Getting Started

This plugin is build using Swift and Kotlin on the native side, so make sure your project supports this.

Import flutter_midi_command

import 'package:flutter_midi_command/flutter_midi_command.dart';

  • Get a list of available MIDI devices by calling MidiCommand().devices which returns a list of MidiDevice
  • Start bluetooth subsystem by calling MidiCommand().startBluetoothCentral()
  • Observe the bluetooth system state by calling MidiCommand().onBluetoothStateChanged()
  • Get the current bluetooth system state by calling MidiCommand().bluetoothState()
  • Start scanning for BLE MIDI devices by calling MidiCommand().startScanningForBluetoothDevices()
  • Connect to a specific MidiDevice by calling MidiCommand.connectToDevice(selectedDevice)
  • Stop scanning for BLE MIDI devices by calling MidiCommand().stopScanningForBluetoothDevices()
  • Disconnect from the current device by calling MidiCommand.disconnectDevice()
  • Listen for updates in the MIDI setup by subscribing to MidiCommand().onMidiSetupChanged
  • Listen for incoming MIDI messages on from the current device by subscribing to MidiCommand().onMidiDataReceived, after which the listener will recieve inbound MIDI messages as an UInt8List of variable length.
  • Send a MIDI message by calling MidiCommand.sendData(data), where data is an UInt8List of bytes following the MIDI spec.
  • Or use the various MidiCommand subtypes to send PC, CC, NoteOn and NoteOff messages.
  • Use MidiCommand().addVirtualDevice(name: "Your Device Name") to create a virtual MIDI destination and a virtual MIDI source. These virtual MIDI devices show up in other apps and can be used by other apps to send and receive MIDI to or from your app. The name parameter is ignored on Android and the Virtual Device is always called FlutterMIDICommand. To make this feature work on iOS, enable background audio for your app, i.e., add key UIBackgroundModes with value audio to your app's info.plist file.

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.

Popular Plugin Projects
Popular Flutter Projects
Popular Libraries Categories
Related Searches

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.
Flutter Plugin