Random idea: Using MIDI for WAV file compression - Jon Galloway

Random idea: Using MIDI for WAV file compression

Since even mobile devices now have basic General MIDI support now, what about approximating digital audio as a stream of very short MIDI notes?

Encoding seems like it would be reasonably simple - do a best fit of each 100ms audio sample with a library of cached samples of a few hundred MIDI samples converted to raw WAV format, then stream the MIDI info. Obviously this could be optimized with some math smarts and statistical analysis on voice and music data. It wouldn't handle polyphonic music well, and would be pretty darn lo-fi, but it seems like a good way to compress audio since both sides of the communication have a common library of audio information.

Of course this is not so useful now that bandwidth is plentiful, but it still could make for at least an interesting BSCS project, right?

Usually any ideas I come up with are unworkable, have been patented the year before or are unpopular for some reason I don't understand. Which is this?

Published Thursday, August 11, 2005 5:55 AM by Jon Galloway
Filed under:

Comments

# re: Random idea: Using MIDI for WAV file compression

I seems to me that this is kinda what MP3, WMA and all other audio compressions are doing anyway but at a much more advanced level.

Thursday, August 11, 2005 4:48 AM by Peter Bridger

# re: Random idea: Using MIDI for WAV file compression

This would be about as good as the "Jump to Conclusions Mat" from Office Space. Unless I am missing something or being to hasty.

Mobile devices will soon have connections that equal that of our in-home broadband. With so many companies trying to advance this technology the race will certainly end with my son, who is now 4 years old, playing multiplayer games on his Sony PSP 2010 edition while we are heading for a day at the beach.

With advances that are soon to come, Midi will be a format that will have no place at all. Lets face it, we had PacMan and Asteroids not Halo and Counter-Strike. The generation taking control wants what I want though, quality. Don't a lot of mobile devices support MP3?

I know of at least 1 start-up in the bay area that is taking on a serious mobile "always on" solution in the form of hardware/software small enough for phones and such. I don't know any details but do know that they got millions in VC dough in a time when money for businesses doesn't go to those without strong ideas and proof of concept. The details I do have are that their senior IT guy has designed a network that has 99.9999% uptime and can handle a few billion concurrent connections. That is a very expensive task to achieve, something like 30 seconds of down time each year? As a point of reference 99.97% is easy to achieve by comparison. This is what you can expect from a cheap ISP. <a href="http://www.ensonix.com/high_availability_networks/">Those extra 9's really mean something!</a>

Thursday, August 11, 2005 5:30 AM by Collin

# re: Random idea: Using MIDI for WAV file compression

http://www.ensonix.com/high_availability_networks/

This blog should at least support anchor links. BLAH!

Thursday, August 11, 2005 5:31 AM by Collin

# re: Random idea: Using MIDI for WAV file compression

The "Jump to Conclusions Mat" of audio compression? Ouch.

I agree, this is likely not a useful idea since we're swimming in storage space and bandwidth these days. Oh, well.

I don't agree that this is similar to MP3 encoding. Sure, they're similar at the functional level - both are lossy methods of sound compression. The implementation is a lot different, however.

MP3 works by exploiting psychoacoustics to discard sound information we won't notice. It uses more bits to represent the sounds we'll actually hear, and fewer on sounds we won't miss. For instance, we're unlikely to notice decreased stereo separation at bass frequencies. At its basic level, though, it still needs to send bits that represent digital audio characteristics.

The idea I'm talking about is different in that it exploits the fact that both sides have a common library of instruments which could probably be used to replicate sounds with decent frequency. It wouldn't send digital audio at all, just instrument commands. It would seem like this would require much less data, since a few bytes can select an instrument, frequency, and velocity.

Also, the ideas differ in that the MP3 encoding technology is proven and widely used, while mine is untested, perhaps worthless, and will quietly die of neglect on my blog.

Most of my background on MP3 encoding came from reading the book "The Programmer's Guide to Sound" about 8 yhears ago, but these links are pretty good:
http://www.percuzzi.com/articles/MP3
http://www.soundonsound.com/sos/may00/articles/mp3.htm
http://www.vectorsite.net/ttdcmp3.html

Thursday, August 11, 2005 11:35 AM by Jon Galloway

# re: Random idea: Using MIDI for WAV file compression

To me, this seems similar to the "MOD" format which was very popular in the days of commodore AMIGA, and actually used also in the PC world by some programs called "trackers"
(http://en.wikipedia.org/wiki/Tracker). Basically the idea of a sampler, using small samples as notes.

Thursday, September 08, 2005 6:40 AM by Daniele Muscetta

# re: Random idea: Using MIDI for WAV file compression

Trackers are used to compose original music using MIDI tones for notes, right? The idea I'm proposing is to take a digital soundfile and approximate it as MIDI notes. I'm thinking about things like low fidelity voice, etc.

Thursday, September 08, 2005 12:55 PM by Jon Galloway

Leave a Comment

(required) 
(required) 
(optional)
(required)