ππ¨πΆ Web MIDI API wrapper based on themidibus
π Example available on http://pqml.github.io/midibus.js/ π
# using npm $ npm install --save midibus # or using yarn $ yarn add midibus
// using ES6 modules import * as midi from 'midibus' // using CommonJS modules var midi = require('midibus')
<script src="https://unpkg.com/midibus"></script> <script> // You can find the library in window.midibus midibus.access(function() {}) </script>
const midi = require('midibus') // Assure that the browser have gained access to the MIDI interface midi.access((err) => { // Catch Error if (err) throw err // Show available inputs & outputs console.log('Available inputs', midi.inputs) console.log('Available outputs', midi.outputs) // Create a new midi bus with available input & output const magicBus = midi.bus(midi.inputs[0], midi.outputs[0]) // You can also omit the input or the output parameter const myKeyBoard = midi.bus(midi.inputs[1], null) // When a kb note is received, pipe it to magicBus, with a constant velocity myKeyBoard.on('noteOn', ({channel, pitch}) => { magicBus.send('noteOn', midi.msg(channel, pitch, 80)) }) })
MIT.