
MIDI 2.0 Specifications Available for Download - dmoreno
https://ask.audio/articles/midi-20-specifications-available-for-download
======
hjanssen
MIDI is such an interesting standard. Anyone who has anything to do with music
equipment can attest that it is literally everywhere. Every (decent) synth
nowadays has at least a midi input. You can sync practically everything with
MIDIs clock function (which was VERY painful to do beforehand, especially if
you tried to sync multiple synths). Its interesting to see if MIDI 2.0 can
follow up with that. Certainly, MIDI is here to stay and i cant wait to see
what cool things people are going to create with it!

~~~
tannhaeuser
> _Every (decent) synth nowadays has at least a midi input_

Well that sentence could've been straight from a music/computer mag from
early/mid 1980s - that's how old MIDI is, using DIN jackets and all.

Source: owned an Atari ST using Steinberg 24 track sequencing software to
control Yamaha DX-7 (every New Wave band had one of those on stage), early
digital drum machines, digital reverbs/echoes, and other devices around 1985.

~~~
croon
Cubase represent!

My dad was a music teacher and a big proponent of getting the school to
purchase Ataris for this reason.

He in later years also decided to build an electric organ with complete foot
pedals and all.

MIDI never says die.

------
thomasfl
The timing must be perfect for startups that create new kinds of MIDI input
devices that can support the new expressiveness controls that MIDI 2.0
supports. Roli probably a head start with their seaboard "keyboard" made in
neopren. The Osmose keyboard from Expressive E, also look promising. Osmose
looks like a traditional keyboard, but detects vibration on the keys.

~~~
atoav
As a (happy) owner of a Linnstrument I think supporting MPE would already be a
great thing as it removes a lot of the problems I had with traditional midi
(e.g. allows per finger pressure, pitchbend and mod instead of one pitchbend
for all notes played).

As I know Roger Linn however he is probably already in the process of writing
Midi 2.0 support for the Linnstrument firmware

~~~
thomasfl
The Linnstrument looks awesome. I am the happy owner of a Roli Music block,
that actually looks like a small and cute version of the Linnstrument.

------
K0SM0S
> MIDI 2.0 delivers more nuanced expressiveness for electronic instruments.
> It’s now possible to convey the same kind of subtle expression normally
> associated with acoustic instruments, thanks to higher-resolution dynamics
> and control data, vastly extended controller options (including per-note
> controllers for exceptional articulation), and simplified controller
> assignments.

This could be a musical revolution in the making, some 10-20 years from now.
Huge, huge implications for the entire industry and craftmanship of
"instruments". At the bottom of the market, this could be the proverbial end
of the 'cheap' analog stuff for the masses, a world of fantastically sounding
budget intruments). At the state of the art, a whole new category of
instruments with potentially crazy original software-defined features.

MIDI 2.0 would have been sci-fi not so long ago. It's fantastic that we are
here.

~~~
hootbootscoot
are you referring to a control protocol or a magical signal path effect?

you could always do what you described since at least 20 years now, as MIDI
need not describe your synths parameters controls

the issues with MIDI are not so much dynamics as timing resolution. 7 bits of
dynamics might not sound like much but I'm not confident in any known
musicians ability to express dynamics with more than 127 discrete levels
lol...

timing resolution of MIDI is great for more quantized musical styles, but for
accurately capturing nuanced rubato performances this is the area that needs
to be improved.

the primary issue with timing in physical MIDI interfaces is timing STABILITY.
this is arguably worse on a modern Mac with CoreMIDI than on an Atari
1020ST... This is directly a product of scheduler vagaries and even firmware.
MIDI should be locked to the sample clock, perhaps updating as often as once a
buffer or even less... (there was even a recent Macbook Pro that had it's
audio clock jittering all over the place due to a power-management IC hardware
rev, aka you can't download an update to fix THAT one, but I digress...)

~~~
K0SM0S
> 7 bits of dynamics might not sound like much but I'm not confident in any
> known musicians ability to express dynamics with more than 127 discrete
> levels lol...

Think one step further: when I hit a key on the piano, or a fret on a guitar,
virtually all other strings resonate to some degree, however minutely, and
this has to do with harmonic resonances, the geometry of the piano, etc.
(Fourier + chaos). Now the only way to convey that kind of subtlety currently
is either to digitize "as a whole" (microphone) or discretely (e.g. individual
string sensors); but each has its tradeoff that you don't get from the other
(no discreteness in your microphone, and the discrete approach probably won't
render any accoustic feel, let alone room shape, etc.

Basically, at a mathematical level, it seems like we should be able to get
_both worlds_ — a discrete yet complete description of an "instrument", which
obviously has to be designed for the purpose. It's really breaking wide open
the barrier between the physics of real-world tangible objects and the
mathematics of software objects, computation for music. You may thus simulate
analog stuff 'perfectly' (good enough to human ear), or quantize real analog
also 'perfectly' (enough).

Obviously you could do all of that now building your own stuff, instruments
and software and protocols. But having it baked in MIDI is a game changer in
terms of actual mainstream use, thus products to market.

------
lioeters
I've been following the development of MIDI 2.0 specs ¹ with interest (just
personal, not for work).

In the past year, I got fairly deep into Open Sound Control ², which has so
much fun potential and can practically be a superset of MIDI. In fact, I
implemented encode/decode from OSC <-> MIDI in C++ and Node.js for a hobby
project.

So I wonder, could MIDI and OSC converge in the future?

It seems to me that the latter being a generic protocol for any kind of
message, including musical data, that it could supercede depending on industry
adoption (like MIDI+OSC instruments)..

\---

¹ [https://www.midi.org/articles-old/details-about-
midi-2-0-mid...](https://www.midi.org/articles-old/details-about-
midi-2-0-midi-ci-profiles-and-property-exchange)

² [http://opensoundcontrol.org/](http://opensoundcontrol.org/)

------
dacohenii
I'm glad to see the MIDI spec is available for download! It was my
understanding that the only way to get the specification for MIDI 1.0 was to
buy a hard copy of the spec, and that sales of the book were the only way the
MIDI association made money. Looks like now both are free.

I think I had heard that from an interesting youtube lecture on how MIDI
works, which I'll link to just in case anyone is interested:
[https://www.youtube.com/watch?v=ZPteB_LpHoM](https://www.youtube.com/watch?v=ZPteB_LpHoM)

------
hootbootscoot
yeah, great... "protocol negotiation" lol... this wants to be OSC 2.0 or maybe
just everything to everyone?

See, MIDI has an elegant simplicity in that you can connect 1 stupid wire
(either pin 2 or 3, IIRC) to your micro-controller and before you can even say
"debounce" you can be triggering envelopes...

MIDI, as in normal old-assed MIDI is low-level.

Look, I get it! if ONLY we had the full 8 bits for CC's instead of only 7,
etc...

The temptation to "improve and update everything" results in the crap 2020
software engineering artifacts that we leave as our legacy: firmly reminding
eternity about just how far we believed that modern trendy habits are always
the best for everyone always in everything...

I would have joked about making your "profiles" in XML, but then as we know
it's 2020 so that would be JSON, lol...

------
FraKtus
When can we expect to see it in macOS / Windows?

Any big actor did already commit to it (Abelton, Cubase)?

------
polyterative
does midi 2 suffer from MIDI timing jitter? Using modular (eurorack) now and
that issue made midi unusable for me

~~~
dmoreno
It has a mechanism to reduce it, quite probably adding some latency. But
better always 8ms of latency than random jitter between 1ms to 8ms.

This will also help with WiFi + rtpmidi and bluetooth.

From the (oldish) midi.org article[1]:

> The Universal MIDI Packet format adds a Jitter Reduction Timestamp
> mechanism. A Timestamp can be prepended to any MIDI 1.0 Protocol message or
> MIDI 2.0 Protocol message for improved timing accuracy.

1: [https://www.midi.org/articles-old/details-about-
midi-2-0-mid...](https://www.midi.org/articles-old/details-about-
midi-2-0-midi-ci-profiles-and-property-exchange)

