5 ms·
> All sorts of talented musicians have done incredible things with MIDI. The resolution of MIDI has been just fine for people with real chops. MIDI 2.0 isn't go
by Exmoor 7y ago
> All sorts of talented musicians have done incredible things with MIDI. The resolution of MIDI has been just fine for people with real chops. MIDI 2.0 isn't going to solve the real problem: talent vacuum.
I find it difficult to believe that someone with even a passing knowledge what MIDI does would have this opinion. Most of the variables are only 7 bits of resolution which produces jarring jumps when you try to adjust parameters in real time.
I remember taking a college class 20 years ago where we talked about the deficiencies of MIDI and what MIDI 2.0 should look like. It's been 20 years since that conversation and it's mind boggling to me that MIDI is only getting updated now.
- colanderman 7y agoNote that more bits don't eliminate jumps on their own. You need to also send changes at a higher rate to take advantage of those bits, which in turn translates to the need for higher speed encoders, more processing time spent dealing with the data, etc. A different way to eliminate jumps is simply to low-pass filter the values on the receiver, and read out values from the filter at whatever rate your synthesizer engine can handle. The precision of most controls does not matter that much; you just want to eliminate zipper noise, and this does that. (Of course there are some controls which need the extra resolution. Filter cutoff comes to mind… even 10 bits I've found limiting. Strangely, even though MIDI 1.1 specifies some 14-bit CCs, filter cutoff is not one of these.)
- derefr 7y ago> Note that more bits don't eliminate jumps on their own. You need to also send changes at a higher rate to take advantage of those bits, which in turn translates to the need for higher speed encoders, more processing time spent dealing with the data, etc. That presumes a continuous information stream being sampled. But the sample-depth problem affects discrete notes, too—it's pretty easy to notice how coarse-grained the quiet end of variation is on a MIDI keyboard or drum controller's attack pulse.
- kstrauser 7y agoAlso, MIDI has the nice, round speed of 31,250 bps. Since it uses start and stop bits, that's 3,125 bytes per second. A "note on" message to start playing a note is three bytes long: a 4 bit "this is a note on" field, followed by a 4 bit MIDI channel number, then an 8 bit note number, then an 8 bit velocity ("how hard I hit the key") number. "Note off" messages, sent when you want to stop playing a note, is identical except for the first 4 bit status field. So, if everything's perfect, playing and releasing one single note will take 6 bytes out of the available 3,125 available each second, or 1.92ms. That's why a lot of so-called "black MIDI" songs are probably literally unplayable through an actual hardware MIDI interface. But forget about playing and releasing notes. Say you're triggering a MIDI drum machine and a synth. Sounds like violins have a slow "attack" - that is, you don't go instantly from "no sound" to "full sound", but ramp up over a short interval. Imagine a violinist that has to start moving their bow, or a trumpeter that has to start blowing. It doesn't matter if you send a synthesizer a set of "note on" messages saying "play a middle C major chord" for violin sounds and they don't all get there simultaneously, because it was going to take them all a little bit to start playing anyway. Drums are a different story. If you expect a kick and hi-hat to play at exactly the same time, you don't have that many milliseconds between their starts before a normal human listener can start to really notice it. So, the worst case scenario is that you'd have a piece of sequenced music that plays two drums, a piano chord, a bass line, and a violin chord at the same time. This is were sound engineers start getting hyper nitpicky about stringing the equipment together so that: - The two drums fire off in adjacent time slices so that they sound as simultaneous as possible. - The piano notes come next, from lowest (because if it's a sampled sound, low notes will be played back more slowly and therefore have a slower attack) to highest. - The bass sound comes next because those don't usually have a super aggressive attack. - Violins come last, and it doesn't really matter because they're lazy and they'll take a few hundred milliseconds to really kick in anyway. The worst case scenario is: - One drum fires off. - The rest of the instruments fire off in reverse order of their attacks, like high piano, bass, high violin; medium piano, medium violin; low piano, low violin. - The other drum fires off. Because MIDI is so glacially slow compared to every other protocol commonly used, it's going to sound absolutely terrible. MIDI is amazing in so many way, but it has some very severe technical limitations by modern standards. I can't believe it's taken this long for a replacement to come along.
- neltnerb 7y agoYeah, the 7-bit amplitudes really wreck things. I switched from MIDI to OSC basically because of the better resolution, though I eventually gave up due to the lack of support for the protocol.
- kazinator 7y ago7 bits can encode 0 == "off", plus a 127 dB amplitude range in 1 dB increments. In a musical mix, -20 dB down, plus "off", is all you need; anything turned down more than about 20 dB relative to everything else disappears. +/- 20 dB of cut and boost spread into 127 bits is ridiculously good resolution.
- neltnerb 7y agoSo I get what you're saying, but this isn't my experience. There's no room to use small changes in volume for expressiveness at the low end of the volume scale, since attacks/sustains/release shape is more quantized. So if your piece has fff and ppp in it (which is probably a full 40dB range) the ppp part will sound super flat while the fff part might sound great.