You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A. The simple Way: ability to send MIDI note on/off messages across multiple MIDI channels. B. The Professional Approach: ability to send real-time MIDI Tuning Standard System Exclusive messages.
A. Detailed example of multichannel MIDI mapping.
Background: use existing multichannel keyboard mapping implementation as reference.
Official support for the hardware Terpstra Keyboard includes the acclaimed physical modeling software engine Pianoteq. Their custom multichannel keyboard mapping for up to 16*128 notes implemented specifically for the Terpstra works like this:
Let's assume the simplest example with any N-tone scale and the reference frequency of 440 Hz.
Load your custom N-tone scale.
The Keymap menu has a new feature called "Extended layout for up to 16*128 notes". Tick the option "Multi-channel MIDI layout".
Play MIDI note 69 on channel 1, tone is 440 Hz. MIDI note 69+N gives 880 Hz, while 69-N 220.
Play MIDI note 69 on channel 2, tone is 880 Hz. MIDI note 69+N gives 1760 Hz, while 69-N 440.
Play MIDI note 69 on channel 16, tone is 220 Hz. MIDI note 69+N gives 440 Hz, while 69-N 110.
... and so on.
The reference frequency changes according to the scale's Interval of Equivalence (in this case 2/1) on the same MIDI note of every subsequent MIDI channel. The scale gets expanded according to its number of tones N in both directions. Other diapasons, as well as the MIDI note for scale's 1/1 can be controlled by loading an additional *.kbm mapping file.
This approach won't need pitch bending or anything fancy, just the ability to send MIDI note on/off messages across multiple MIDI channels. It will then be up to the user to load the *.scl tuning file from the WebApp in the external sound engine.
B. Send real-time MTS SysEx signals.
«MTS 3-byte single note tuning is the most accurate method.» (Scala Relay)
The MIDI Specification's "Single Note Tuning Change (real-time)" was designed for dynamic tuning.
«The MIDI Tuning Standard was ratified by the MIDI Manufacturers' Association in January 1992. Manufacturers have the option of supporting the tuning standard partially or in full.» http://www.microtonal-synthesis.com/MIDItuning.html
I've done a bunch of refactoring to get midi hooked in, and I have succeeded in sending standard note-on/off messages via web midi and have tried to send sysex messages for midi tuning. I've been using MainStage3 to test, but it doesn't take in sysex for tuning. I downloaded the trial for Pianoteq, and I've sent messages according to the spec, but I'm not sure if it is being interpreted correctly, if I'm looking in the wrong place to see the change, or if there's something implementation specific.
Web MIDI API: https://www.w3.org/TR/webmidi/
A. The simple Way: ability to send MIDI note on/off messages across multiple MIDI channels.
B. The Professional Approach: ability to send real-time MIDI Tuning Standard System Exclusive messages.
A. Detailed example of multichannel MIDI mapping.
Background: use existing multichannel keyboard mapping implementation as reference.
Official support for the hardware Terpstra Keyboard includes the acclaimed physical modeling software engine Pianoteq. Their custom multichannel keyboard mapping for up to 16*128 notes implemented specifically for the Terpstra works like this:
Let's assume the simplest example with any N-tone scale and the reference frequency of 440 Hz.
The reference frequency changes according to the scale's Interval of Equivalence (in this case 2/1) on the same MIDI note of every subsequent MIDI channel. The scale gets expanded according to its number of tones N in both directions. Other diapasons, as well as the MIDI note for scale's 1/1 can be controlled by loading an additional *.kbm mapping file.
This approach won't need pitch bending or anything fancy, just the ability to send MIDI note on/off messages across multiple MIDI channels. It will then be up to the user to load the *.scl tuning file from the WebApp in the external sound engine.
B. Send real-time MTS SysEx signals.
«MTS 3-byte single note tuning is the most accurate method.» (Scala Relay)
The MIDI Specification's "Single Note Tuning Change (real-time)" was designed for dynamic tuning.
«The MIDI Tuning Standard was ratified by the MIDI Manufacturers' Association in January 1992. Manufacturers have the option of supporting the tuning standard partially or in full.»
http://www.microtonal-synthesis.com/MIDItuning.html
For «an addition to the MIDI specification which allows the sharing of “microtunings” ... and the
switching of these tunings during real-time performance» see page 47 (pdf 79) of
The Complete MIDI 1.0 Detailed Specification v. 96.1 third edition
The text was updated successfully, but these errors were encountered: