OS4 DepotLogo by Angel 
(anonymous IP: 3.149.234.251,0) 
 HomeRecentStatsSearchMirrorsContactInfoDisclaimerConfigAdmin
 Menu

 Features
   Crashlogs
   Bug tracker
   Locale browser
 

 Categories

   o Audio (343)
   o Datatype (51)
   o Demo (203)
   o Development (595)
   o Document (22)
   o Driver (97)
   o Emulation (147)
   o Game (1004)
   o Graphics (497)
   o Library (115)
   o Network (232)
   o Office (66)
   o Utility (923)
   o Video (69)

Total files: 4364

Full index file
Recent index file

 Links

  Amigans.net
  OpenAmiga
  Aminet
  UtilityBase
  IntuitionBase
  AmigaBounty


Support the site


 Readme for:  Development » Misc » miniz.lha

miniz

Description: Lossless, high performance data compression source
Download: miniz.lha       (TIPS: Use the right click menu if your browser takes you back here all the time)
Size: 1017kb
Version: 1.15
Date: 20 Sep 15
Author: Rich Geldreich / AOS4 compile by Guillaume 'zzd10h' Boesel
Submitter: Guillaume 'zzd10h' Boesel
Email: guillaume/boesel fr
Homepage: http://code.google.com/p/miniz/
Category: development/misc
License: Public domain
Distribute: no
Min OS Version: 4.0
FileID: 9482
 
Comments: 0
Snapshots: 0
Videos: 0
Downloads:  (Current version)
 (Accumulated)

[Show comments] [Show snapshots] [Show videos] [Show content] [Show crashlogs] 
Author : Rich Geldreich

From http://code.google.com/p/miniz :

miniz.c is a lossless, high performance data compression library in a single
source file that implements the zlib (RFC 1950) and Deflate (RFC 1951)
compressed data format specification standards. 
It supports the most commonly used functions exported by the zlib library, but
is a completely independent implementation so zlib's licensing requirements do
not apply. miniz.c also contains simple to use functions for writing .PNG format
image files and reading/writing/appending .ZIP format archives. miniz's
compression speed has been tuned to be comparable to zlib's, and it also has a
specialized real-time compressor function designed to compare well against
fastlz/minilzo.

Features
Completely free: Public domain in jurisdictions that recognize copyright laws,
with a license patterned after the public domain SQLite project, see
unlicense.org.
A portable, single source file header file library written in plain C. I've
tested with clang v3.3, various versions of gcc, mingw, MSVC 2008/2010, and TCC
(Tiny C Compiler) v0.9.26, under both Linux and Windows x86/x64. Earlier
versions of miniz where also tested on OSX, and miniz.c has shipped in several
iOS games.
Easily tuned and trimmed down by configuring macros at the top of the source
file.
A drop-in replacement for zlib's most used API's (tested in several open source
projects that use zlib, such as libpng and libzip).
Fills a single threaded performance vs. compression ratio gap between several
popular real-time compressors and zlib. For example, at level 1, miniz.c
compresses around 5-9% better than minilzo, but is approx. 35% slower. At levels
2-9, miniz.c is designed to compare favorably against zlib's ratio and speed.
See the miniz performance comparison page for example timings.
Not a block based compressor: miniz.c fully supports stream based processing
using a coroutine-style implementation. The zlib-style API functions can be
called a single byte at a time if that's all you've got.
Easy to use. The low-level compressor (tinfl) and decompressor (tdefl) have
simple state structs which can be saved/restored as needed with simple memcpy's.
The low-level codec API's don't use the heap in any way.
Entire inflater (including optional zlib header parsing and Adler-32 checking)
is implemented in a single function as a coroutine, which is separately
available in a small (~550 line) source file: tinfl.c
A fairly complete (but totally optional) set of .ZIP archive manipulation and
extraction API's. The archive functionality is intended to solve common problems
encountered in embedded, mobile, or game development situations. (The archive
API's are purposely just powerful enough to write an entire archiver given a bit
of additional higher-level logic.)

Example Projects

example1.c: Demonstrates miniz.c's compress() and uncompress() functions (same
as zlib's), also a crude decompressor fuzzy test.

example2.c: Demonstration of miniz.c's ZIP archive API's. Adds a bunch of files
to test.zip, dumps file stat info on each file in the archive, then extracts a
single file into memory.

example3.c: Command line tool for file compression/decompression. Demonstrates
how to use miniz.c's deflate() and inflate() functions to handle streaming
compression/decompression.

example4.c: Demonstrates memory to callback decompression of compressed zlib
streams (can decompress files generated by example3). Simple demo of tinfl.c,
which is just the Inflate functionality pulled from the larger miniz.c. tinfl.c
is a full single-function Inflate implementation with zlib header parsing and
Adler32 checking in ~550 lines of code+comments.

example5.c: Demonstrates how to use the lowest level (non-zlib compatible) API's
for file to file compression. The low-level API's are less forgiving, but more
flexible, faster, and don't ever touch the heap. The low-level API's are
implemented as coroutines, so they can be efficiently used for any sort of
streaming scenario.

example6.c: Simple PNG writing demonstration.
As of v1.13 I also include one of the test app (miniz_tester.cpp) I used to
regression test miniz. This command line tool is only intended for testing, and
it wasn't intended to be an example, but I'm releasing it in case someone finds
it useful.




Copyright (c) 2004-2024 by Björn Hagström All Rights Reserved
Amiga OS and its logos are registered trademarks of Hyperion Entertainment