Music Player Network
Previous Thread
Next Thread
Print Thread
Joined: Jan 2000
Posts: 9,515
Likes: 186
MPN Advisory Board
MP Hall of Fame Member
OP Offline
MPN Advisory Board
MP Hall of Fame Member
Joined: Jan 2000
Posts: 9,515
Likes: 186
Yours truly was tasked with creating a short video for the upcoming Music China trade show about MIDI 2.0. I think (hope!) it's a fairly succinct summary of MIDI's most salient characteristics at present.

FWIW, I think it's safe to say the features covered in the video will be what rolls out first when MIDI 2.0-capable products start hitting the world for real next year.


1 member likes this: Joe Muscara
Sound, Studio, and Stage Island
Joined: Feb 2005
Posts: 21,752
Likes: 132
Triple Secret Banninated
20k Club
Offline
Triple Secret Banninated
20k Club
Joined: Feb 2005
Posts: 21,752
Likes: 132
Nice work as usual, Craig! thu


The great thing about music is that there's always something to learn. The frustrating thing about music is that there's always something to learn!
Joined: Aug 2006
Posts: 269
Likes: 5
Senior Member
Offline
Senior Member
Joined: Aug 2006
Posts: 269
Likes: 5
That's a fantastic intro video, great work!

Joined: Dec 2012
Posts: 10,265
Likes: 171
MPN Advisory Board
10k Club
Offline
MPN Advisory Board
10k Club
Joined: Dec 2012
Posts: 10,265
Likes: 171
Finally watched. Very professional and enjoyable. 2thu


"Information is not knowledge
Knowledge is not wisdom
Wisdom is not truth
Truth is not beauty
Beauty is not love
Love is not music
Music is the best!"
Frank Zappa
Joined: Jan 2000
Posts: 9,515
Likes: 186
MPN Advisory Board
MP Hall of Fame Member
OP Offline
MPN Advisory Board
MP Hall of Fame Member
Joined: Jan 2000
Posts: 9,515
Likes: 186
Glad you like it! It sure makes life easier when you can draw on the expertise of the people who are actually engineering the spec smile

Joined: Sep 2016
Posts: 40
Likes: 1
Senior Member
Offline
Senior Member
Joined: Sep 2016
Posts: 40
Likes: 1
A most enjoyable video, thank you Craig.

I hope you won't mind if I ask a few questions of clarification?

1a) From about 2:30 we see a succession of devices 'communicating' using MIDI 2.0. As we see no cables is it safe to assume they're using WiFi or Bluetooth? Or are we to assume the cables are not visible?
Are the profiles defined yet?
b) I notice that the YC61 and the MG10 are two of the devices shown. Are they already MIDI 2 capable? Will they be?

2) At 3:59 we see MIDI DIN and USB sockets. Will MIDI 2 run across the former? My understanding was that it wouldn't. Has there been a change of mind?

3) Not associated with the video. I currently have a MIDI controller keyboard that has 'rotary encoders'. As I turn these, one click at a time, they change e.g. the MIDI CC that they're assigned to one bit at a time. To go from zero to 127 takes five full turns of the encoder.
If I change the CC being controlled to 16 bit, i.e. with values from zero to 65,535 just how will that be achieved using encoders, to the same degree of accuracy?

I can't see myself, of anyone else for that matter, rotating such a controller more than 2,500 times to go from one extreme to the other. (Perhaps one for the MMA engineers?)
Will we, for example, need three controls; coarse, medium and fine, for each parameter?
I have absolutely no idea how they intend to similarly implement 32 bit CCs. (Zero to 4,294,967,295.)

4) The last, which has nothing to do with the video nor how MIDI 2 is implemented, concerns the shortcoming of keyboards in that sharps and flats have to be enharmonic unlike, for example, a violin.
Why, I wonder, wasn't a mechanism included with MIDI 2 that allowed an effect that split the accidentals if needed? In the 18th, or was it the 19th century, afew keyboards were built which had split black keys.
This allowed, e.g. C# and Db to play their true tuning. I understand the MIDI tuning standards and how that can be set up.
It seems to me that a simple two bit switch could use 00 for ET, 01 for true sharp, 10 for true flat. A simple switch would make it straightforward to play.
Such an opportunity for change and sadly, it seems, missed from the spec.

Thanks,
JohnG
Confused of Wellingborough.

Last edited by JohnG11; 10/25/20 11:50 AM.

Akai EWI 4000, VL70m, AN1x, PX560.
Joined: Jan 2000
Posts: 9,515
Likes: 186
MPN Advisory Board
MP Hall of Fame Member
OP Offline
MPN Advisory Board
MP Hall of Fame Member
Joined: Jan 2000
Posts: 9,515
Likes: 186
Originally Posted by JohnG11
A most enjoyable video, thank you Craig.

I hope you won't mind if I ask a few questions of clarification?

Great questions!!

Quote
1a) From about 2:30 we see a succession of devices 'communicating' using MIDI 2.0.

It's more like an abstract representation of communication, but it most definitely could occur over Bluetooth LE or WiFi as well as USB or Ethernet (assuming the equipment was designed to work with those interfaces). The BomeBox from Bome Software already connects and maps MIDI devices over Ethernet, WiFi, and USB without the need of a computer. So for example, a computer could connect to a BomeBox via USB, which then communicates with a BomeBox elsewhere using Wi-Fi, and that BomeBox sends the data it received over WiFi to a DIN jack that hooks into an ancient synthesizer. I suspect the importance of networking will continue to grow in the years/decades ahead.

Quote
Are the profiles defined yet?

They're being defined by various working groups. Some are further along than others, for example, the drawbar organ one is pretty developed; the working group for MIDI guitar is still defining what needs to be in a profile. For example, how do you handle playing the same note on two different strings?

Quote
b) I notice that the YC61 and the MG10 are two of the devices shown. Are they already MIDI 2 capable? Will they be?

They are not MIDI 2.0, however, bear in mind that some MIDI 1.0 devices can be retrofitted to work with Profiles and other MIDI 2.0 features, like the improved timestamping to reduce jitter. Whether they will be retrofitted or not is, of course, up to the manufacturer or possibly third parties.

Quote
2) At 3:59 we see MIDI DIN and USB sockets. Will MIDI 2 run across the former? My understanding was that it wouldn't. Has there been a change of mind?

The Universal MIDI Packet handles both MIDI 1.0 and MIDI 2.0 messages, so I don't see any reason why that data couldn't be sent via DIN - although what's at the receiving end would recognize only the MIDI 1.0 parts. A lot of effort was spent to make sure that older gear could still be used in future systems, although of course, they wouldn't be able to take advantage of all the new features. I'll check for a more definitive answer, but I'm pretty sure that's correct.

Quote
3) Not associated with the video. I currently have a MIDI controller keyboard that has 'rotary encoders'. As I turn these, one click at a time, they change e.g. the MIDI CC that they're assigned to one bit at a time. To go from zero to 127 takes five full turns of the encoder.
If I change the CC being controlled to 16 bit, i.e. with values from zero to 65,535 just how will that be achieved using encoders, to the same degree of accuracy?

There are currently encoders that respond to how fast you turn them - turn them fast and they cover a lot of ground, turn them slowly and you have fine control. This to me is a big advantage of digital control over analog control, where you may need separate controls for coarse and fine adjustments. You could also have software that interprets controller changes in bigger "jumps." And, bear in mind that MIDI 2.0 is designed to last for decades. Controllers continue to get more defined. While rotary encoders may hit certain limits, something like pressure could be possibly be measured with 16 or 24-bit precision (if it isn't already, I don't know). Finally, consider digital audio--just because something has 24-bit resolution doesn't mean your analog-to-digital converter can take full advantage of all 24 bits. But, the resolution is available.

Quote
4) The last, which has nothing to do with the video nor how MIDI 2 is implemented, concerns the shortcoming of keyboards in that sharps and flats have to be enharmonic unlike, for example, a violin...Such an opportunity for change and sadly, it seems, missed from the spec.

I wouldn't be too sure about that. There is far more flexibility written into the spec regarding how notes are handled, being able to do microtonal stuff easily, that sort of thing. I doubt there's anything inherent in the spec that prevents something like split black keys from being implemented, it's more of a question of whether manufacturers feel the need to do so (like how a few implemented just intonation and other tunings, but the vast majority didn't).

But...I would urge you to join the MIDI Association at www.midi.org, get on the forums there, and start a discussion. Nothing happens unless people ask for it.

Joined: Sep 2016
Posts: 40
Likes: 1
Senior Member
Offline
Senior Member
Joined: Sep 2016
Posts: 40
Likes: 1
Thanks very much indeed for the response, Craig.

Actually I asked the question here because I seem to get a very (very) delayed response on the MMA forum (if at all).
You seem to be SO much more pro-active. To which you receive much Kudos from me!
As some might say, over here on the other side of the pond, "good on yer, mate!" (Cockney accent obligatory.) ;-)

1a) I wonder whether, from people with little or no knowledge of MIDI, this section (2:30 -) might be taken too literally, and they rush out to buy a YC61 (or MG10) with too high expectations?
Ditto with the DIN sockets. My understanding (from reading the specs.) is that they will never carry the new UMP's. Could be wrong tho'.
Could including them in the video again lead to false expectations? Just a thought.

Thank you for the section about encoders. I will wait (without bated breath) to see what the future brings.

Regarding true sharps and flats, it would have been really good (IMHO) to have addressed this as an optional but easy to implement feature in MIDI 2.
I rather dissapointed that nobody thought of it.

I had another thought regarding the MIDI note number.
Keep the current MIDI 1.0 allocation of note numbers (as planned) but utilise the top bit in MIDI 2.0 to indicate whether to sharpen of flatten the note concerned.
So, for example, note 59 with zero top bit is still B, press a pedal thus switching the top bit on, and it indicates B#.
Similarly note 60 with zero is C, with top bit on equals Cb. And so on for E & F.
For accidentals, note 61 would be C~# without the top bit, but Db with it.
It came to me over the weekend and isn't patented ... yet!

Actually I am an MMA member and a forum moderator. (I spend most of my time there getting rid of spam.)

JohnG.

Last edited by JohnG11; 10/26/20 01:48 PM.

Akai EWI 4000, VL70m, AN1x, PX560.
Joined: Aug 2013
Posts: 89
Likes: 3
S
Senior Member
Offline
Senior Member
S
Joined: Aug 2013
Posts: 89
Likes: 3
Originally Posted by JohnG11
...DIN sockets. My understanding (from reading the specs.) is that they will never carry the new UMP's. Could be wrong tho'

It is possible for the 5 pin DIN connectors to carry the new UMP format. But we have not written a specification for it yet. All specifications are written by members who volunteer their time, usually according to the market interest. If there seems to be sufficient market interest, then specs will get written. Some work has been done in this particular area and there seems to be some ongoing interest. I can't guarantee the future, but I suspect a spec for this will be written in the next year or two.

Originally Posted by JohnG11
Regarding true sharps and flats, it would have been really good (IMHO) to have addressed this as an optional but easy to implement feature in MIDI 2.
I rather dissapointed that nobody thought of it.

Many members of the MIDI Manufacturers Association discussed and researched all possible ideas and features (include that one) over the course of 15 years to come to this new MIDI 2.0 specification. I am pleased with the final design (but I am clearly biased) that offers new features while never forgetting the importance of backward compatibility.

Originally Posted by JohnG11
I had another thought regarding the MIDI note number.
Keep the current MIDI 1.0 allocation of note numbers (as planned) but utilise the top bit in MIDI 2.0 to indicate whether to sharpen of flatten the note concerned.
So, for example, note 59 with zero top bit is still B, press a pedal thus switching the top bit on, and it indicates B#.
Similarly note 60 with zero is C, with top bit on equals Cb. And so on for E & F.
For accidentals, note 61 would be C~# without the top bit, but Db with it.
It came to me over the weekend and isn't patented ... yet!

Your proposed design does not provide a B Flat, a B Sharp, and a B Natural (3 states for each note). I think the goal should be to allow all of those, otherwise certain musical accidentals are only available in certain key signatures. In an ideal world we would also want to support double flats and double sharps.

However, what is the underlying goal? I assume a primary goal (but certainly not the only one) is to allow for Just Intonation as an audio result. MIDI 1.0 already has the MIDI Tuning Standard which allows devices to perform with Just Intonation. Then MIDI 2.0 also supports this while adding several notable new features related to tuning. I am optimistic that MIDI 2.0 will prompt more devices to support more flexible tuning capabilities.

MIDI 2.0 has a lot of room for expansion and we are starting to work on the connection between traditional musical notation (with key signatures and musical accidentals) and MIDI messages. I expect that future MIDI 2.0 specifications will allow declaration of a key signature (so you will know whether that black key just above Middle C is a C Sharp or a D Flat) and notation details about each note. It might be a year or two before such a specification is released.

Originally Posted by JohnG11
Actually I am an MMA member and a forum moderator. (I spend most of my time there getting rid of spam.)

JohnG.

All MIDI Association work is done by volunteers. We really appreciate your great support on the forum.

Thanks,
Mike.


Mike Kent
- Chairman of MIDI 2.0 Working Group,
- Co-Author of USB Device Class Definition for MIDI Devices 1.0 and 2.0
- Member of MIDI Association Technical Standards Board
Joined: Jan 2000
Posts: 9,515
Likes: 186
MPN Advisory Board
MP Hall of Fame Member
OP Offline
MPN Advisory Board
MP Hall of Fame Member
Joined: Jan 2000
Posts: 9,515
Likes: 186
Thank you SynMike! It's quite an honor to see you here.

To all...remember that the spec is still under development. MIDI 1.0 was the same way, it didn't arrive fully formed but provided what people needed out of the box. Additional functionality like MIDI Time Code, Show Control, General MIDI, and such was added later. Recently, MPE became part of the MIDI 1.0 spec so it continued to evolve over three decades later, even while work was happening on MIDI 2.0.

I got the following information from some of the MMA's Giant Brains Who Know Much More than I Do smile

To be a MIDI 2.0 device, it has to implement MIDI 2.0-compliant features. MIDI 2.0 compliance requires the use of MIDI-CI for any one or more of:

1 )  Profile Configuration

2 )  Property Exchange

3 )  Protocol Negotiation to use the new high resolution MIDI 2.0 Channel Voice Messages

Profile Configuration and Property Exchange can be done over 5 PIN Din and do not need the new USB MIDI 2.0 Universal MIDI Packet.


So there you have it...at least in theory, some of the features of MIDI 2.0 can be done over 5 pin DIN at present.

Joined: Sep 2016
Posts: 40
Likes: 1
Senior Member
Offline
Senior Member
Joined: Sep 2016
Posts: 40
Likes: 1
Thank you SynMike for your response.

Originally Posted by SynMike
It is possible for the 5 pin DIN connectors to carry the new UMP format. But we have not written a specification for it yet. All specifications are written by members who volunteer their time, usually according to the market interest. If there seems to be sufficient market interest, then specs will get written. Some work has been done in this particular area and there seems to be some ongoing interest. I can't guarantee the future, but I suspect a spec for this will be written in the next year or two.

Yes, of course it's possible to rewrite the code that processes messages over the DIN interface, but not (I believe) with backward compatibility with MIDI 1.0. So a total rewrite which wouldn't work with older devices (like my AN1X).
(I used to be a data protocol programmer/analyst. My last job, before retirement, was working for InMarSat (freelance) a major satcomms provider.)

Quote
Many members of the MIDI Manufacturers Association discussed and researched all possible ideas and features (include that one) over the course of 15 years to come to this new MIDI 2.0 specification. I am pleased with the final design (but I am clearly biased) that offers new features while never forgetting the importance of backward compatibility.

Your proposed design does not provide a B Flat, a B Sharp, and a B Natural (3 states for each note). I think the goal should be to allow all of those, otherwise certain musical accidentals are only available in certain key signatures. In an ideal world we would also want to support double flats and double sharps.

It doesn't have to. B natural is already note 59. Append a bit, as described, and It's altered value becomes B#. C altered value becomes Cb.
We alreadt have note 58 C#, its altered value would be Bb. Note 61, C#'s altered value becomes Db.

Here, for example, is Wendy Carlos' 24 note scale using the well known Scala system

! carlos_alpha.scl
!
Wendy Carlos' Alpha scale with perfect fifth divided in nine, in two octaves
24
!
78.00000
156.00000
234.00000
312.00000
390.00000
468.00000
546.00000
624.00000
702.00000
780.00000
858.00000
936.00000
1014.00000
1092.00000
1170.00000
1248.00000
1326.00000
1404.00000
1482.00000
1560.00000
1638.00000
1716.00000
1794.00000
1200.00000


This could all be described (as already done using Scala) using the MIDI Tuning Standard (suitably modified?) in a 17 note scale (just the accidentals) or a 24 note scale including B, C, E & F.
(Please see the attachment showing Peter Preleur's diagram from The Art of Playing the Violin.)

Quote
However, what is the underlying goal? I assume a primary goal (but certainly not the only one) is to allow for Just Intonation as an audio result. MIDI 1.0 already has the MIDI Tuning Standard which allows devices to perform with Just Intonation. Then MIDI 2.0 also supports this while adding several notable new features related to tuning. I am optimistic that MIDI 2.0 will prompt more devices to support more flexible tuning capabilities.

The goal would be, for those who want it, to be able to play with tune in fixed key instruments. Not with only octaves in tune (2:1 ratio) and all other notes out of tune to a greater or lesser degree as is the case with E.T.

Quote
MIDI 2.0 has a lot of room for expansion and we are starting to work on the connection between traditional musical notation (with key signatures and musical accidentals) and MIDI messages. I expect that future MIDI 2.0 specifications will allow declaration of a key signature (so you will know whether that black key just above Middle C is a C Sharp or a D Flat) and notation details about each note. It might be a year or two before such a specification is released.

MIDI 1.0 already allows the specification of key signatures using meta data.
From the SMF 1.0 document.

FF 59 02 sf mi Key Signature
sf = -7: 7 flats
sf = -1: 1 flat
sf = 0: key of C
sf = 1: 1 sharp
sf = 7: 7 sharps
mi = 0: major key
mi = 1: minor key


Although they are not transmitted across the MIDI interface.

Quote
All MIDI Association work is done by volunteers. We really appreciate your great support on the forum.

Thank you,
JohnG.

Attached Images
Prelleur-violin.jpg
Last edited by JohnG11; 10/27/20 12:04 PM. Reason: speling

Akai EWI 4000, VL70m, AN1x, PX560.
Joined: Aug 2013
Posts: 89
Likes: 3
S
Senior Member
Offline
Senior Member
S
Joined: Aug 2013
Posts: 89
Likes: 3
Originally Posted by JohnG11
Originally Posted by SynMike
It is possible for the 5 pin DIN connectors to carry the new UMP format. But we have not written a specification for it yet. All specifications are written by members who volunteer their time, usually according to the market interest. If there seems to be sufficient market interest, then specs will get written. Some work has been done in this particular area and there seems to be some ongoing interest. I can't guarantee the future, but I suspect a spec for this will be written in the next year or two.

Yes, of course it's possible to rewrite the code that processes messages over the DIN interface, but not (I believe) with backward compatibility with MIDI 1.0. So a total rewrite which wouldn't work with older devices (like my AN1X).
(I used to be a data protocol programmer/analyst. My last job, before retirement, was working for InMarSat (freelance) a major satcomms provider.)

If we define a specification to use UMP on 5 pin DIN, MIDI-CI Protocol Negotiation will be used to switch from the original byte stream to UMP packet mode. By specification, connections default to MIDI 1.0. A MIDI 2.0 capable device connected to your AN1X by 5 pin DIN would start by using the original byte stream and MIDI 1.0 Protocol. Then before making a switch to using UMP, the device would use a MIDI-CI message to ask the AN1X if it understands MIDI 2.0. The AN1X would not recognize the request, would not return a correct reply, so the connection would remain in MIDI 1.0 byte stream. The switch to using UMP will only occur when 2 devices recognize the Protocol Negotiation process and agree to make the switch to using UMP.

Originally Posted by JohnG11
Originally Posted by SynMike
Your proposed design does not provide a B Flat, a B Sharp, and a B Natural (3 states for each note). I think the goal should be to allow all of those, otherwise certain musical accidentals are only available in certain key signatures. In an ideal world we would also want to support double flats and double sharps.

It doesn't have to. B natural is already note 59. Append a bit, as described, and It's altered value becomes B#. C altered value becomes Cb.
We alreadt have note 58 C#, its altered value would be Bb. Note 61, C#'s altered value becomes Db.

Okay, I understand. Interesting. It’s quite possible to add that to the current spec in the future. There are some other ideas on how we might achieve that and cover double sharps and double flats as well. At the same time there are some other ideas on how might use that bit for other purposes.

Originally Posted by JohnG11
MIDI 1.0 already allows the specification of key signatures using meta data.
From the SMF 1.0 document.

Although they are not transmitted across the MIDI interface.

Yeh, I think we will get that and most/all other Meta Data inside the MIDI stream in the future, not just in the MIDI file.

Mike.


Mike Kent
- Chairman of MIDI 2.0 Working Group,
- Co-Author of USB Device Class Definition for MIDI Devices 1.0 and 2.0
- Member of MIDI Association Technical Standards Board
Joined: Sep 2016
Posts: 40
Likes: 1
Senior Member
Offline
Senior Member
Joined: Sep 2016
Posts: 40
Likes: 1
Originally Posted by SynMike
If we define a specification to use UMP on 5 pin DIN, MIDI-CI Protocol Negotiation will be used to switch from the original byte stream to UMP packet mode. By specification, connections default to MIDI 1.0. A MIDI 2.0 capable device connected to your AN1X by 5 pin DIN would start by using the original byte stream and MIDI 1.0 Protocol. Then before making a switch to using UMP, the device would use a MIDI-CI message to ask the AN1X if it understands MIDI 2.0. The AN1X would not recognize the request, would not return a correct reply, so the connection would remain in MIDI 1.0 byte stream. The switch to using UMP will only occur when 2 devices recognize the Protocol Negotiation process and agree to make the switch to using UMP.

Aha! I'd quite missed the fact that the MIDI CI request was passed as a new class of Universal System Exclusive message. (Too quick a scan read I'm afraid.)
I've re-read the relevant section (5.3.1) of the M2-101-UM_v1-1_MIDI-CI_Specification and have (I think) understood.

Many thanks Mike.

Originally Posted by JohnG11
Originally Posted by SynMike
Your proposed design does not provide a B Flat, a B Sharp, and a B Natural (3 states for each note). I think the goal should be to allow all of those, otherwise certain musical accidentals are only available in certain key signatures. In an ideal world we would also want to support double flats and double sharps.

It doesn't have to. B natural is already note 59. Append a bit, as described, and It's altered value becomes B#. C altered value becomes Cb.
We already have note 58 C#, its altered value would be Bb. Note 61, C#'s altered value becomes Db.

Originally Posted by SynMike
Okay, I understand. Interesting. It’s quite possible to add that to the current spec in the future. There are some other ideas on how we might achieve that and cover double sharps and double flats as well. At the same time there are some other ideas on how might use that bit for other purposes.

The only trouble with my proposal is that the current MIDI tuning standard assumes that there are only 12 notes per octave.
What would be needed is an amendment, or perhaps an alternative, optional way of defining octaves with e.g. 17, 21 even 24 notes in it. I've also read of a 55 division octave!
(Alternate tunings one of the things negotiated in MIDI-CI?)
May I suggest the Association takes a look at the Scala mechanism as authored by Huygens-Fokker at http://huygens-fokker.org/scala/
There are, at last look, more than 4,500 tuning tables with alternate temperaments already defined.
The notes can be defined as cents to several decimal points or as true ratios.
Interestingly this mechanism is already used in the Garritan, Abbey Road, Yamaha CFX VST instrument. (12 notes/octave only)
It's certainly extremely interesting to try tunings like quarter comma meantone when playing early baroque music for instance.

Again very many thanks for your response, Mike.

JohnG.

Last edited by JohnG11; 10/28/20 11:05 AM.

Akai EWI 4000, VL70m, AN1x, PX560.

Moderated by  Anderton 

Link Copied to Clipboard
Powered by UBB.threads™ PHP Forum Software 7.7.5