Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/noerw/web-stepseq
MIDI step-sequencer running in the browser.
https://github.com/noerw/web-stepseq
Last synced: 9 days ago
JSON representation
MIDI step-sequencer running in the browser.
- Host: GitHub
- URL: https://github.com/noerw/web-stepseq
- Owner: noerw
- License: gpl-3.0
- Created: 2015-07-08T19:15:46.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2016-01-22T12:45:08.000Z (almost 9 years ago)
- Last Synced: 2024-06-11T17:10:20.851Z (5 months ago)
- Language: JavaScript
- Homepage:
- Size: 232 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# web-stepseq
This is a simple step-sequencer with MIDI in- & output, that runs in the browser.
It utilizes the [webMidi API](http://www.w3.org/TR/webmidi/) (draft specification, but mostly stable) and angularJS.**Currently only works in chromium v43, newer versions do not register the midi devices!**
At the moment (July 2015) only chromium/chrome supports the webMidi API. In the meantime there is a [polyfill](https://github.com/cwilso/WebMIDIAPIShim/), which should provide the needed functionality in other browsers (not tested).
Tested in chrome (win 64bit) and chromium (ubuntu 14.04 64bit) 43.0.2357 with a M-Audio Axiom keyboard.
### midi config
To configure the app to the mapping of your own midi input device, you have to look into `app.js#l52`.
In the object `mMap`, the mapping for midi inputs is configured:For each functionality that is supported, you can configure the corresponding MIDI channel (index starts at 0), type of command (mostly CC-messages), and the corresponding CC-values.
If you are not familiar with the MIDI protocol, you may want to look [here](https://de.wikipedia.org/wiki/Musical_Instrument_Digital_Interface#Nachrichtentypen)
**Note that** currently the combination of channel and command type (eg 11 for CC) must be unique.
This will be resolved in future releases.
Also this configuration will be put into an external json file.