Well, I did the impossible. I just make data compression for computers jump to the next level of efficency. To give you an idea, Here’s an example test file set:
The original file set is 7889 KB (this set is Jumpman: 2049 – which means it has everything for a game in it.)
Zipped, the file is 255kb.
Run my program over it, it inflates to 319kb
Now, zip it again. 184kb
Run the program over it again – 230kb
Zip it again – 131kb
Program again – 163kb
Zip it – 98kb.
Just for reference, if you Zip up a file that’s already been zip compressed, you MAYBE gain 1% the first time, and none the second time (in fact, it gets larger because it can’t further optimize the file, but still has to add all the headers!)
It works on ANYTHING – that includes something that can just barely be compressed, like MP3 files. Imagine how pissed the RIAA is gonna be when the realize that people could EASILY email a 192bit rate MP3 file ripped from CD without having slow download times? Or the MPAA 😉
Right now, it’s slow. I just did a prototyped version in VB real quick to see what sort of results I got – the program takes much longer to run than to zip the file. Oh, and to give you an idea how simple the concept is – the program is only about 100 lines long. I’m about to reduce that considerably, mainly by simplifying a couple of sections of the code. Plus it’s disk access is done in one of the slowest possible fashions, basically reading each byte in binary mode in VB. Needless to say, I’ll need to redo the whole thing in C so it’s considerably faster. But damned if it doesn’t work!
But – how does it work? Well, that part I’m not revealing just yet. First I’ve got to figure out how to convert this into money, one way or another. I really hate the idea of software patents (because they are too damned long – if they were two years, I might buy into the idea.), so I’m not exactly sure how to protect possible income here – I’d really like to get it out there, have 6 months of sales, etc. before someone else releases something similar.
Oh, and here’s what is really interesting – the program really doesn’t care what type of compression system it’s working with – it could be .zip, .arj, .lha, etc – it all works the same. So I could potentially tie it with any standard or non-standard existing compression system, and let it do it’s job. In fact, what I think I’d like to find is not the most efficent system nessisarily, but the fastest, and tie it together. That way, even though you are compressing it multiple times, if the decompressor or compressor is fast enough, it’s not going to hurt things too much.
Needless to say – I’m excited. I’m setting on what could potentially be a gold mine, and possibly the end to the bandwidth crunch. With this, the issue isn’t bandwidth, the issue becomes computing horsepower. And since that’s getting more and more prevalant, well… this comes at about the right time 🙂