Important alert: (current site time 7/16/2013 3:05:00 AM EDT)
 

winzip icon

_+Compression Methods+_ V 1.04

Email
Submitted on: 8/12/2002 6:24:26 AM
By: Marco v/d Berg 
Level: Intermediate
User Rating: By 61 Users
Compatibility: VB 6.0
Views: 43368
 
     I've got a lot of questions about if there was an update on packers collection, well, here it is. I have updated most of the compressors to handle filesizes over 64K. improved a lot lot of speed isseus. added some new compressors. great speed update on some coders (mostly BWT). I've got a uge amount of mail from people who liked the first version of my programm and also people who sended me some tips to speed up some methods. so I can't take all the credits for this update. I hope you all like this update as much as the first version and if you want to vote for it, please do so, couse with the first version something went wrong with the server and the actual winners of the coding contest didn't get the recognation they deserved.
 
winzip iconDownload code

Note: Due to the size or complexity of this submission, the author has submitted it as a .zip file to shorten your download time. Afterdownloading it, you will need a program like Winzip to decompress it.Virus note:All files are scanned once-a-day by Planet Source Code for viruses, but new viruses come out every day, so no prevention program can catch 100% of them. For your own safety, please:
  1. Re-scan downloaded files using your personal virus checker before using it.
  2. NEVER, EVER run compiled files (.exe's, .ocx's, .dll's etc.)--only run source code.
  3. Scan the source code with Minnow's Project Scanner

If you don't have a virus scanner, you can get one at many places on the net including:McAfee.com

 
Terms of Agreement:   
By using this code, you agree to the following terms...   
  1. You may use this code in your own programs (and may compile it into a program and distribute it in compiled format for languages that allow it) freely and with no charge.
  2. You MAY NOT redistribute this code (for example to a web site) without written permission from the original author. Failure to do so is a violation of copyright laws.   
  3. You may link to this code from another website, but ONLY if it is not wrapped in a frame. 
  4. You will abide by any additional copyright restrictions which the author may have placed in the code or code's description.


Other 7 submission(s) by this author

 


Report Bad Submission
Use this form to tell us if this entry should be deleted (i.e contains no code, is a virus, etc.).
This submission should be removed because:

Your Vote

What do you think of this code (in the Intermediate category)?
(The code with your highest vote will win this month's coding contest!)
Excellent  Good  Average  Below Average  Poor (See voting log ...)
 

Other User Comments
8/12/2002 7:12:07 AMJohn Galanopoulos

Another excellent submission from another excellent coder. Thank you for sharing this valuable source with us. 5 from me (the least i could do). Keep feeding the community.
(If this comment was disrespectful, please report it.)

 
8/13/2002 1:35:08 AMGary Staunton

Totally cool and interesting to see the difference of compression ratio. I personally found that it's too much for me to rate on all the code, othwise I wouldn't get a chance until next week, so I'll rate on what I've seen and that's 5gs. - Excellent.
(If this comment was disrespectful, please report it.)

 
8/13/2002 3:12:56 AMAlmar Joling

I'd want to vote.. but right now the 'authorization' image does not show up.. I'll be back =-)
(If this comment was disrespectful, please report it.)

 
8/13/2002 4:03:21 AMMumtaz H Janjua

It is cool, I would love to come 10 time to vote this if it could add value.
Nice to have good people on forum
(If this comment was disrespectful, please report it.)

 
8/13/2002 6:56:39 AMAndrew

Wow! This is the very nice code. I have been wanting to know how compression worked for years. Thank you for sharing. 5 globes from me.
(If this comment was disrespectful, please report it.)

 
8/14/2002 4:34:42 AMJohn Priestley

Will you be writing LZX compression? LZX was one of the best Lh archivers on the Amiga. I believe M$ "aquired" the algolrythm and are using it in CABs.

I think the idea behind LZX was to group files together, scan them all to create the dictionary for compression which created smaller compressed files.


Excellent program though, 5 from me.
(If this comment was disrespectful, please report it.)

 
8/18/2002 10:03:16 AMgonchuki_

no votes this time... i expected more for a new version, not just 2 new compressors and little corrections to others.... in fact, the problem with the Arithmetic Bitwise compressor with rescale is still there. the problem is that it "compress" ok, but when i try to decompress i notice there was no such compression... i get corrupted data not the original one... pls, i like this compressor a lot because is fast and effective, but i can't use it if it corrupts my data!
(If this comment was disrespectful, please report it.)

 
8/20/2002 4:44:25 AMJosh Yu

Very interesting application. Can you do 3DES too?
(If this comment was disrespectful, please report it.)

 
9/3/2002 10:55:20 PM

does your VBC algorithm got any refrencess, what does VBC stand's for..?
and how do you write your vbc algorithm
example :
1. Determine which group the value is, eg: if value = 3 then flag = 1, value bit length = 3
2. Store the flag value, it is always 3 bits long
3. Subtract / minus the value by Start value

(If this comment was disrespectful, please report it.)

 
9/19/2002 5:34:11 AMOzan Yasin Dogan

Excellent code, the best compression
code i saw in PSC. Thank you for your
effort and sharing to us. 5
(If this comment was disrespectful, please report it.)

 
3/16/2003 9:21:37 PM

50 globes from me keep up the good work...
(If this comment was disrespectful, please report it.)

 
3/31/2003 6:07:05 PMshafqat raza

heloo sir
i have mailed u many times before this but there is no answer...(i really don't know why?) but sir i really want help notes or any other help material for packers .bcz i am working on compression and i espacialy need some new compressor's logic theory.if u do this for me i will be very thankfull to u..

raza
(If this comment was disrespectful, please report it.)

 
7/27/2003 9:28:52 PM

hi,
thank you for sharing this code with us. i have a question about the compression method because i'm new in compression:
- is dynamic huffman differ from adaptive huffman ?

(If this comment was disrespectful, please report it.)

 
9/5/2003 5:18:03 PMTushar Goswami

Great job Marco v/d Berg! I optimized my Remote Desktop application by 500% with the help of your Compression Methods :-) MANY THanks!!! May u win the PSC coding contest ;-)
(If this comment was disrespectful, please report it.)

 
11/19/2003 11:51:50 AMAlfred

Hi Marco
Excellent work - and a litle Bug in the CRC32 Function. Remove the -1 from the Ubound-Statement. See below:


Public Function calcCRC32(ByteArray() As Byte) As Long
Dim I As Long
Dim crc As Long
If CrcTableInit = False Then Call Init_CRCTable
crc = -1
For I = 0 To UBound(ByteArray) ' - 1 '******** REMOVE THE -1 ***************
crc = (((crc And &HFFFFFF00) \ &H100) And &HFFFFFF) Xor (CRCTable((crc And &HFF) Xor ByteArray(I)))
Next I
crc = crc Xor &HFFFFFFFF
calcCRC32 = crc
End Function

(If this comment was disrespectful, please report it.)

 
12/13/2003 4:12:09 AM

Hey, great code! And I really appreciate the fact that you post code, like this, and help people out. That's really cool. (And I'm gonna start posting more code, myself. I haven't did so in a while. Especially now that I'm downloading here so much...)

There is one thing, though. I was wondering if you know of any way to recompress files, or to compress archived files, to obtain a much lower compression? I'm desperately looking for something like that. I've seen it done. They turn like 100 meg files into these 50k files. (And I'd KILL for some source code to whatever they made those with!) And if you happen to know of anything that might help with that, I'd certainly appreciate it.

And thanks again. 5 stars from me! (Well, I guess I'll have to vote later, since it won't let me, for some reason... LOL Great code anyway, though!)
(If this comment was disrespectful, please report it.)

 
7/8/2004 8:57:40 AMLawrence Wagerfield

keeps on saying "cant find object or library" when ever i click on any thing
(If this comment was disrespectful, please report it.)

 
7/8/2004 9:00:11 AMLawrence Wagerfield

sorry, i meant PROJECT OR LIBRARY
(If this comment was disrespectful, please report it.)

 
7/8/2004 9:02:34 AMLawrence Wagerfield

which libraries/references do i need selected?
(If this comment was disrespectful, please report it.)

 
10/16/2004 1:11:18 PM

marco, great job with the compression codes...i am in need to convert the LZSS compression code to use with VBScript/ASP to compress a string and decompress it and show the output on the screen. please give some help in this regard.

thanks,
mp
(If this comment was disrespectful, please report it.)

 
3/26/2005 1:33:29 AM

Excellent!!!
(If this comment was disrespectful, please report it.)

 
3/31/2005 10:12:58 AMNick Bullar

Keep getting the
(If this comment was disrespectful, please report it.)

 
3/31/2005 10:13:44 AMNick Bullar

Keep getting the 'cant find project or
library' error too. Trying to run code in vb6 on a winxp machine. This code is mostly way beyond my level but i made a program to construct a bytearray table of a file then use one of the modules to compress it. I then have no idea how i can decompress it.
What i really i need is to get YOUR code working cos it looks great.
Any help would be appreciated.
(If this comment was disrespectful, please report it.)

 
11/2/2005 1:20:42 AMChad Gutowsky

FOR REAL, thankzzz.... Humans with this much time to give away are very rare. The logic is above the call, but you saved me massive time on my project. RLE Loop wins hands down for my needs. I can't thank you enough. Thanks for sharing. ^O^
(If this comment was disrespectful, please report it.)

 
10/12/2007 3:39:09 PMSCINER

Hello Marco!
Please write me on lenar2003@mail.ru please.
(If this comment was disrespectful, please report it.)

 
11/20/2007 11:59:37 PMjohn

please can i get in contact with the writter of this code. i am doing a
project on compression in school (lagos state polytechnic, Nigeria) and
would like his help. i am doing a comparison of various text compression
algorithms and would be greatful if he can provide information about
some
of the compressors he deigned into his code.
please need your help so i can beat deadline for submission.
i have material for some lke huffman, RLE LZW, arithm and if i can get your documentation fot the others you will besaving me. hope to hear from you
i hope this statement is not disrespectful. john
(If this comment was disrespectful, please report it.)

 
8/31/2008 4:15:11 PMAchmad Junus

I am sure that there are still room for speed improvement. I'll wait for next update ;-)
(If this comment was disrespectful, please report it.)

 
9/11/2008 6:16:55 AMMarco v/d Berg

Very nice code
(If this comment was disrespectful, please report it.)

 
10/22/2008 1:32:25 PMJeff Taylor

This rocks! Maybe the next level is to have decompression... 5 globes
(If this comment was disrespectful, please report it.)

 
10/22/2008 10:38:28 PMDavid

hello sir
you've got a complete collection of codes in this program.i am currently doing an analysis project on dynamic arithmatic bitwise compression.i was wondering if you have any data on this compressor,because i can only find out about arithmetic coding on the net..i would really appreciate it if you could help me sir.just contact me via email if want.thanx alot =)
(If this comment was disrespectful, please report it.)

 
12/8/2011 8:29:07 AMChaker

Thank you men.. very nice code
(If this comment was disrespectful, please report it.)

 

Add Your Feedback
Your feedback will be posted below and an email sent to the author. Please remember that the author was kind enough to share this with you, so any criticisms must be stated politely, or they will be deleted. (For feedback not related to this particular code, please click here instead.)
 

To post feedback, first please login.