Published 2023-10-16.
Last modified 2024-12-01.
Time to read: 5 minutes.
av_studio
collection.
Music synthesizers, also called synths, generate sounds and often include a keyboard or pressure-sensitive pads.
Analog and Digital Synths
I bought my first synth in 1979, an ARP 2600 v2. It was an analog synth; instead of containing a digital computing device like a CPU, it consisted of analog components such as oscillators and physical filters made from capacitors and inductors. I remember how very heavy it was—43 pounds (19 kg)!
Back in those days and earlier, patch cords were often used to electrically connect the sound-generating components together in various combinations to shape the sound. Since then, the term patch has also been used for digital synths to refer to the sounds that they can make. For example, a synth might have patches for ‘saxophone’ and ‘piano’, and a drum machine might have patches for ‘snare’ and ‘hi-hat’.
For my undergraduate engineering thesis in 1979, I wrote a PDP-11 assembler program that turned a Digital Equipment PDP 11-45 into a virtual ARP 2600, complete with A/D and D/A, and a graphical user interface that utilized a Tektronix vector CRT and a light pen.
The main computer cabinet was 6 feet tall, almost 2 feet wide, and 2.5 feet deep. A second cabinet held the CRT, and the terminal rested nearby on a small table.
MIDI
Most synths today are digital, not analog, and comply with the MIDI standard, which was initially published in 1983. The MIDI specification has continued to evolve. The MIDI 1.0 Detailed Specification, published in 1985, clarified the original MIDI specification.
MIDI has been cited as an early example of open-source technology.
MIDI patches are organized into banks. Patch banks usually contain 128 patches, but some MIDI devices have 256 patches per bank. A preset is a MIDI patch that was programmed by the synthesizer vendor.
Patches can be remotely selected by MIDI program change messages.
The General MIDI standard, also known as GM or GM 1, was published in 1991. GM is a specification for MIDI instruments; it defines standardized instrument names and their corresponding MIDI program numbers.
Roland GS, introduced in 1991, is a superset of the General MIDI standard that added several proprietary extensions, including:
- The ability to address multiple patch banks; nine drum kits with 14 additional drum sounds each.
- Simultaneous percussion kits.
- Control Change messages for controlling the send level of sound effect blocks.
- Support for additional parameters (portamento, sostenuto, and soft pedal).
- Model-specific System Exclusive (SysEx) messages for setting various parameters of the synth.
Yamaha XG, introduced in 1994, is a GM superset that added several proprietary extensions, notably support for Yamaha's 600-series instruments and 32 simultaneous notes (polyphony).
The MIDI 1.0 Detailed Specifications
were published in 1996 and included the specification of the
Standard Midi File (smf
) format.
Standard MIDI Files contain all the MIDI instructions to generate notes,
control individual volumes, select instrument sounds,
and even control reverb and other effects.
The files are typically created by a
MIDI sequencer
and then played on some kind of MIDI synthesizer.
The GM 1 specification was superseded by GM 2 in 1999; however, GM 1 is still commonly used.
MIDI 1.1
The MIDI 1.1 specification was published May 1, 2006. Changes to the MIDI file format are MIDI-File Format sumarized here, including sequences, tracks, file formats, chunks, meta-events, messages, note numbers.
MIDI File Format Types 0 and 1
MIDI Type 1 files contain separate information for each track. For a MIDI Type 0 file, however, all the tracks are merged into a single track, although MIDI channel information is still retained. When a Type 0 file is loaded into a sequencer, it will take each channel’s information and put it on a separate track. So for a typical sequence with one track per MIDI channel, it will normally not matter if the sequence is saved as Type 0 or Type 1.
But if your source sequence has several tracks assigned to the same MIDI channel (for example several drum tracks playing the same program on the same channel, but with an individual drum sound on each track), then it is best to export it as a Type 1 file. If exported as Type 0, all tracks assigned to the same channel will be merged into a single track when the .MID file is loaded.
Standard MIDI-File Format Spec. 1.1, updated
– From MIDI Type 0 and MIDI Type 1 filesMIDI 2.0
In 2020, the MIDI 2.0 standard was introduced. The first products using the MIDI 2.0 standard began to reach the market in 2023. However, as I write this, MIDI 2.0 is still bleeding-edge technology. Most musicians should wait a few years before investing in products that use MIDI 2.0.
The MIDI 2.0 Property Exchange specification is part of the MIDI 2.0 family of specifications. It uses JSON over SysEx to get and set device properties.
In the future, once MIDI 2.0 becomes more commonly used, MIDI 2.0 Property Exchange will become important for the next generation of MIDI 2.0 patch librarians.
First MIDI 2 Devices
Roland A-88MKII MIDI Keyboard Controller
Nov. 16, 2023 – the Roland A-88MKII MIDI Keyboard Controller got a software update to MIDI 2.0 (the hardware was already MIDI 2.0 capable).
I was not able to find any description from Roland of this product’s MIDI 2.0 capabilities. The Owners manual makes no mention of MIDI 2.0. The Roland announcement did not say which download contains the update, however after examining them all, I found that only the A-88MKII System Program (Ver.2.00) mentioned MIDI 2.0. The download had absolutely no documentation. This is consistent with the finest tradition of Japanese hardware device manufacturers.
I do not know what “and more” means, but given what I know of Roland’s attitude towards software, I have low expectations.
Korg Keystage
December 2023 – the Korg Keystage claims to be the first keybaord that implements MIDI 2.0 Property Exchange. Ableton Live also supports MIDI 2.0 Property Exchange, and apparently the two products cooperate well. The rest of the MIDI 2.0 spec is not mentioned in the Korg product documentation.
The Owners Manaul does not mention MIDI 2.0 in the specifications. It only says that the Korg Keystate USB-MIDI driver must be used on Windows.
Another disppointing example of the Japanese hardware manufacturer attitude towards software.
Opportunity
Neither of the above products should be called MIDI 2.0 devices. They only implement a small portion of the important MIDI 2.0 features. Furthermore, software documentation and support is seriously deficient.
Perhaps the established manufacturers are concerned that MIDI 2.0 renders their existing product lineup obsolete. This is an opportunity for a new manufacturer to take advantage of.
MIDI Utilities
GN1:0
Günter Nagler wrote a free Windows utility called GN1:0. It converts a MIDI file from format 1 (multitrack) to format 0 (single track), and includes a simple MIDI Karaoke player. The program also presents information about the MIDI file. I found this program worked as advertised.