MIDI seems to be making a comeback. At least, that was my impression a couple of months ago when I attended the audio track of the Game Developers Conference. Setting a new record for attendance, GDC hosted over 24,000 game industry pros who flocked to San Francisco’s Moscone Center in March for a full week of presentations, tutorials, panels, […]
Tag Archives: MIDI
via scalable minds.
As an enthusiastic developer and piano player, I like to connect my interests. Since my sheet reading skills have always been rather moderate, I saw an opportunity to improve them with the new Web MIDI API. It allows the browser to communicate with a MIDI-enabled device (especially receiving MIDI notes from it).
Using this API, I built a side project called Piano-Trainer (Github link) which is a web app that renders random music sheets. The user has to play the notes on a real piano (provided that it supports MIDI) and gets feedback when played correctly. In theory it should also work with other MIDI-enabled instruments.
Piano-Trainer will measure the time it took you to play the displayed chords and display statistics to keep track of your progress. Think of it as Guitar Hero for the piano. Currently, the rhythm is not checked (so it does not matter if you need some seconds to play a chord). But being able to train the rhythm, is certainly a feature I want to work on in the future.
Overtone is an Open Source toolkit for designing synthesizers and collaborating with music. It provides:
- A Clojure API to the SuperCollider synthesis engine
- A growing library of musical functions (scales, chords, rhythms, arpeggiators, etc.)
- Metronome and timing system to support live-programming and sequencing
- Plug and play MIDI device I/O
- A full Open Sound Control (OSC) client and server implementation.
- Pre-cache – a system for locally caching external assets such as .wav files
- An API for querying and fetching sounds from http://freesound.org
- A global concurrent event stream
MIDI has officially hit the web browser! Well, at least in Google Chrome. With the latest version of Google Chrome, MIDI is enabled by default, whereas previously it needed to be enabled by setting a special flag in your browser. This opens up a huge variety of possibilities for not only art and music in the browser, but also allows any hardware that uses MIDI as its communication platform to control and be controlled by your browser. MIDI.org itself says “the Web-MIDI API is the most significant advancement of MIDI since… MIDI itself!”