flutter_midi_command_web 1.0.2
flutter_midi_command_web: ^1.0.2 copied to clipboard
The web implementation of flutter_midi_command, using the browser Web MIDI API to send and receive MIDI messages.
flutter_midi_command_web #
Web implementation of flutter_midi_command backed by the browser Web MIDI API.
What it supports #
- Enumerating MIDI input/output ports as
MidiDevice - Connecting/disconnecting to discovered devices
- Receiving MIDI packets from input ports
- Sending MIDI packets to output ports
- Emitting setup-change events when browser MIDI ports appear/disappear
What it does not support #
- Virtual MIDI devices (
addVirtualDevice/removeVirtualDevice) - iOS/macOS network session APIs (
isNetworkSessionEnabled/setNetworkSessionEnabled) - BLE via
flutter_midi_command_bleon web
Browser requirements #
- HTTPS origin (or localhost during development)
- Browser with Web MIDI API support (typically Chrome/Edge)
- User permission granted for MIDI access
If the browser does not expose navigator.requestMIDIAccess, API calls will throw UnsupportedError.
Notes on permissions and SysEx #
The implementation requests MIDI access with SysEx enabled (sysex: true).
If SysEx permission is denied by the browser/user policy, initialization may fail and surface as an error from devices/connectToDevice.
Testing #
This package includes backend-injected unit tests in test/flutter_midi_command_web_test.dart.
Run in a browser with:
flutter test --platform chrome