Why MIDI Suggestion 127 Notes

Are the values ​​of 127 notes in MIDI musically significant (a certain number of octaves or something else)? or was it set to 127 because of the binary file format, IE for calculation purposes?

+8
midi
source share
5 answers

127 = 2 7 - 1

This is the maximum positive value of an 8-bit signed integer and therefore is a significant limit in file formats - this is the highest value that you can store in a byte (on most systems) without making it unsigned.

+7
source share

In the MIDI protocol there are status bytes (think commands, such as a note or note), and there are data bytes (think parameters, such as pitch value and speed). The way to determine the difference between the two is the first bit. If this first bit is 1 , then it is a status byte. If the first bit is 0 , then this is a data byte. This leaves only 7 bits for the rest of the status or data byte.

So, in order to briefly answer your question, it is rather related to the protocol specification, but it happens that it is well suited for a good amount of available pitch values.

Now these pitch values ​​do not correspond to a specific step. Yes, it’s true that usually the value of step 60 will give you C4 or average C. Most synthesizers work this way, but certainly not all. It is not even a requirement that the synthesizer use the pitch value for steps! MIDI doesn't care ... it's just a protocol. You may be wondering how the advanced settings work ... they work fine. It is up to the synthesizer to create the right pitches for these alternative settings. MIDI simply provides a selection of 128 different values ​​to send.

Also, if you are wondering why it is so important that this first bit means what the data is ... There are real-time system messages that can be inserted in the middle of some other command. These are things like a clock, which are often used to synchronize LFOs among other things.

You can learn more about the types of MIDI messages here: http://www.midi.org/techspecs/midimessages.php

+18
source share

I think that you are missing the fact that MIDI was created in the early 1980s, and not for running on personal computers, but for running on musical instruments with extremely limited processing and storage capabilities. Storing 127 values ​​seemed to be GIANT then, especially when the largest keyboard usually has only 88 keys and most electronic instruments have only 48. If you think MIDI does something in a weird way, it's probably due to its Jurassic heritage.

Yes, it’s true that usually the value of step 60 will give you C4, or average C. Most synthesizers work this way, but certainly not all.

Yes ... there has always been a disagreement about where the middle C is in MIDI. On Yamaha keyboards, this is C3; on Roland keyboards, this is C4. Yamaha did it one way, and Roland did it one more.

Now these pitch values ​​do not correspond to a specific step.

Not initially. However, in the "General MIDI" standard, A = 440, which is the default setting. General MIDI also describes which patch is a piano, which is a guitar, and so on, so that MIDI files are portable across multi-character audio sources.

+3
source share

Simple efficiency.

As a serial protocol, MIDI was designed around simple serial chips of that time, which would receive 8 bits of data and transmit them as a stream from one separate serial pin of data with a forbidden speed. In the MIDI world, it was 31,250 Hz. He added a stop and the start of the bit so that all the data could move along one wire. It was designed as cheap and simple, and simplicity has been expanded in data format.

The most significant bit of the 8 data bits was used to signal whether the data byte was a command or data. So- To send a Middle C ON message on channel 1 with a speed of 56 bytes of command, the command is sent first and Note on was the top 4 bits of this command bit 1001. Note 1 in the most significant bit, followed by the channel identifier for channel 1 0000 (computers prefer to start counting from 0)

10010000 or 128 + 16 = 144

This was followed by actual Note data.

72 for average C or 01001000

and then the speed data is again indicated in the range 0 -127 with 0 MSB

56 in our case

00111000 So, that would let the wire down (ignoring the stop start and synchronization bit)

144, 72, 56

For the almost dead microcomputers of that time in electronic keyboards, the ability to separate a command from data by simply looking at the first bit was successful.

As said, 127 bits covers almost any western keyboard that you would like to mention. Thus, the completely logical meaning and survival of the protocols long after many serial protocols have disappeared into obscurity is a great compliment to http://en.wikipedia.org/wiki/Dave_Smith_(engineer) Dave Smith from sequential schemes who started the discussion with other manufacturers to install it all in place.

Modern music and composition will be significantly different without it and from them.

Enjoy it!

+2
source share

127 is enough to cover all the keys of the piano

0
source share

All Articles