Inside: SereneScreen Fan Forum

Inside: SereneScreen Fan Forum (https://www.feldoncentral.com/forums/index.php)
-   Marine Aquarium 2 for Windows Archive (https://www.feldoncentral.com/forums/forumdisplay.php?f=2)
-   -   An interesting experiment.... (https://www.feldoncentral.com/forums/showthread.php?t=345)

Coelacanth 11-25-2001 06:16 PM

An interesting experiment....
 
Some of you might remember that ".The .Product" demo that a forum member (I forget who) posted a while back. It is a 1.9MB 3D graphics demo that was miraculously packaged as a 64K executable.

That demo is at http://www.theproduct.de.

Well, I used the packer they used, UPX, to compress fish.scr. The savings weren't as miraculous as those acheived in The Product, but on the "best compression" setting it still packed the aquarium down from 1,036,288 bytes to 723,456 bytes. The fact that it didn't compress it down any further than that is probably a testament to Jim's already tight code.

But would it still work, packed? I deleted fish.scr (after backing it up, of course) and then threw the packed version into the windows\system directory. Lo and behold, it seems to work flawlessly.

Interesting...Considering Jim's desire to make the aquarium as small as possible, I wonder if something like this would be of use. Or has this already been considered?

pipeta 11-26-2001 02:25 PM

Sounds really good! The only question left is how bugless this compressor is? Some people couldn't get "The Product" to work on their computer. It might be a bug in "The Product" itself or with with the compressor. Maybe all of us, groopies, should get the compressed version as a kind of test to see how good and bugless it is but I am not sure if 300k is worth the effort...

Reichart 11-26-2001 11:37 PM

Commpression
 
Hello to all interested in this experiment (compression), and Coelacanth.

I'm the CTO at Prolific Publishing, Inc. I have been designing compression technology for about 20 years.

We are currently working on reducing the collective size of the Aquarium with installer to a size that would fit on a floppy (about 1.4 megs).

Consider something very simple. An image which is 640x480 and is 16 bit (32,000 colours plus mask) is 615K. What controls the compression size are many different factors. First, how complex the image is. In other words, how many "patterns" can be found in the image that can be removed, and replaced with tokens that represent that same data. The other thing is the willingness to reduce the quality. In the case of screen shots (User Inteface for example) you don't want to use lossy compression.

A compressor that does not know the nature of the data (such as WinZip) simply uses a blind compression technique such as LZ, or LZW, or Huffman.

Then there is audio. The Aquarium has a 500K audio file.

Then there is the program itself, which is a little over meg (containing all the images for all the fish, and the background).

30% savings is common for most blind compressors. My own technology will compress programs to about 50% of their original size. But we have not written our compressor for mass use.

We are days away from getting this thing squeezed to a nice small size that does not eat up all our bandwidth, and that allows people with slow modems to get the data quickly (our two big goals). Again consider that at 5 megs * 20K downloads a day = 100,000,000,000. You read it right! Every byte counts.

If you have questions about compression, you can email me directly. If you have general questions about the Aquarium please direct them on this forum, or to Service@SereneScreen.com. Thanks

Reichart@Prolific.com

feldon34 11-26-2001 11:55 PM

Version 99K of the Aquarium and before used a 500kb audio file that was ADPCM (Microsoft)-compressed down to about 170kb.

In order for Jim to add a volume bar to Version 99L, he had to dump all the audio code and move over to DirectSound. ADPCM couldn't be made to work with DirectSound, so the audio file has balooned to the full 500kb.

Worse, on many cards, even with the Aquarium sound completely disabled, it still initializes DirectSound in such a way that all other audio applications are silenced.

I believe one of the hopes of bringing Prolific aboard was not only the tremendous tasks of packaging, publishing, distributing, and hammering out advertising and marketing deals, but also programming assistance (Jim professes that he is but an artist with some programming knowledge). One of the hopes, early on, was that that the DirectSound code could be tuned to end up giving the benefits of both worlds (99K and 99L) and in a reasonable disk footprint.

One of the reasons for the 5MB installer on the CD is a lavish 1024x768 uncompressed snapshot of the Aquarium.

feldon34 11-27-2001 12:04 AM

I should say in the WAY that Jim added a volume bar. I actually suggested a few pseudocode scenarios for keeping the old more compatible code and just modifying it.

For example (not as far-fetched as it sounds), load the ADPCM file into memory and then apply percentages to all the data, say 25%, 50%, and 75%. You'd have 5 volume settings:

Mute (sound doesn't even initialize!)
25%
50%
75%
100%

(Hey, I've written code in QUICKBASIC to perform a manual gain level adjust on a WAV file before, it's surprisingly fast)

Jim said he couldn't do this because he couldn't get ADPCM audio to decode down to a WAV.

Sun Microsystems provides free code to read and decode its ADPCM audio format here:
http://www.hr/josip/DSP/adpcmREAD.html
ftp://tjev.tel.fer.hr/pub/dsp/adpcm/adpcm.tar.Z

Anyway, I don't know if it's DirectSound, per se, or cards that are full duplex but the drivers don't really support it or what!

Socrates 11-27-2001 12:13 AM

Re: Commpression
 
Quote:

Originally posted by Reichart
Hello to all interested in this experiment (compression), and Coelacanth.

I'm the CTO at Prolific Publishing, Inc. I have been designing compression technology for about 20 years.

We are currently working on reducing the collective size of the Aquarium with installer to a size that would fit on a floppy (about 1.4 megs).

Consider something very simple. An image which is 640x480 and is 16 bit (32,000 colours plus mask) is 615K. What controls the compression size are many different factors. First, how complex the image is. In other words, how many "patterns" can be found in the image that can be removed, and replaced with tokens that represent that same data. The other thing is the willingness to reduce the quality. In the case of screen shots (User Inteface for example) you don't want to use lossy compression.

A compressor that does not know the nature of the data (such as WinZip) simply uses a blind compression technique such as LZ, or LZW, or Huffman.

Then there is audio. The Aquarium has a 500K audio file.

Then there is the program itself, which is a little over meg (containing all the images for all the fish, and the background).

30% savings is common for most blind compressors. My own technology will compress programs to about 50% of their original size. But we have not written our compressor for mass use.

We are days away from getting this thing squeezed to a nice small size that does not eat up all our bandwidth, and that allows people with slow modems to get the data quickly (our two big goals). Again consider that at 5 megs * 20K downloads a day = 100,000,000,000. You read it right! Every byte counts.

If you have questions about compression, you can email me directly. If you have general questions about the Aquarium please direct them on this forum, or to Service@SerneeScreen.com. Thanks

Reichart@Prolific.com

Did you take a look at this thread about a freeware script creator that someone dug up.

https://www.feldoncentral.com/forums...7&pagenumber=2

Using standard windows installer scripts it compiles small enough to fit on a floppy without spending payroll time to do it. I don't know if it does all you need but it adds and removes reg entries, is very versatile, etc.

Reichart 11-27-2001 12:16 AM

Compressors
 
Yes.

Coelacanth 11-27-2001 12:28 AM

Cool. :)

Thanks for the info.


All times are GMT -6. The time now is 10:14 PM.

Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.