Xref: utzoo sci.electronics:15659 comp.music:2155 Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!wuarchive!usc!apple!agate!pasteur!fir.Berkeley.EDU!maverick From: maverick@fir.Berkeley.EDU (Vance Maverick) Newsgroups: sci.electronics,comp.music Subject: Re: MIDI data compression idea Keywords: MIDI Message-ID: <8928@pasteur.Berkeley.EDU> Date: 15 Nov 90 20:32:52 GMT References: <1990Nov15.173346.11644@yenta.alb.nm.us> Sender: news@pasteur.Berkeley.EDU Reply-To: maverick@fir.Berkeley.EDU (Vance Maverick) Lines: 15 > Aren't MIDI messages horrendously inefficient? I seem to remember > reading that normal note data, in order to be distinguishable from > control messages, has to have the eighth bit turned off. But the > data is still logically grouped in eight-bit chunks, so you get > something like this: > > 0000xxxx > 0000yyyy No, note data is mostly 7 bits. (Some other data, like bender values, are 14 bits.) For example, pitch and velocity both have range 0-127. So for most information, you're only "wasting" one bit in eight. Four-bit nibbles are used for status code (eight values, all with high bit set) and channel numbers (a grossly inadequate sixteen). And these always share a byte, so it's pretty efficient on the whole.