precomp-cpp
zlib-ng
Our great sponsors
precomp-cpp | zlib-ng | |
---|---|---|
14 | 13 | |
390 | 1,440 | |
- | 1.8% | |
0.0 | 9.4 | |
about 2 months ago | 14 days ago | |
C | C | |
Apache License 2.0 | zlib License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
precomp-cpp
-
Does epub compress well?
You should look at Precomp - an apparently abandoned, but awesomely working arhiver that is dedicated to compressing those ZIP-based formats, and compresses them twice-thrice as small as LZMA2 can.
- Any suggestion for compressing a large batch of photos and videos into a single zip?
- Compression for Documents
-
Putting 5,998,794 books on IPFS
You can also have a look at this packer. It compresses PDF and EPUB 2-3 times smaller than 7z at maximum settings, at half the speed. I keep all my books in it and never had a problem.
- .bin compression
-
libgen currently adds around 1,300 books a day
There is an opensource archiver called precomp that is designed specifically for e-documents and compresses them 2-3 times smaller than 7z in ultra mode. It works, and I keep my e-books in it. However, it seems nobody else does, and development has stopped due to lack of interest.
-
AWS switch from gzip to zstd – about 30% reduction in compressed S3 storage
There are tools like preflate [1] or precomp [2] that guarantees a bitwise identical reconstruction, of course modulo bugs.
[1] https://github.com/deus-libri/preflate
[2] https://github.com/schnaader/precomp-cpp/ (which internally makes use of preflate)
-
Which compression method for archiving OS ISOs?
You may use "precomp" in order to seek and uncompress those parts. Then you can use a better compression algorithm : http://schnaader.info/precomp.php
-
Is there any research as to what's the best way to compress each file type?
Precomp http://schnaader.info/precomp.php is a program which will seek compressed parts and decompress those parts in order to compress with another algorithm. This greatly improve compression ratio with the other algorithm.
-
How can I perfectly recreate a PNG losslessly compressed to JXL?
This may be of help. (a255854 and d649919)
zlib-ng
-
Show HN: Pzip- blazing fast concurrent zip archiver and extractor
Please note that allowing for 2% bigger resulting file could mean huge speedup in these circumstances even with the same compression routines, seeing these benchmarks of zlib and zlib-ng for different compression levels:
https://github.com/zlib-ng/zlib-ng/discussions/871
IMO the fair comparison of the real speed improvement brought by a new program is only between the almost identical resulting compressed sizes.
- Intel QuickAssist Technology Zstandard Plugin for Zstandard
-
Introducing zune-inflate: The fastest Rust implementation of gzip/Zlib/DEFLATE
It is much faster than miniz_oxide and all other safe-Rust implementations, and consistently beats even Zlib. The performance is roughly on par with zlib-ng - sometimes faster, sometimes slower. It is not (yet) as fast as the original libdeflate in C.
-
Zlib Critical Vulnerability
Zlib-ng doesn't contain the same code, but it appears that their equivalent inflate() when used with their inflateGetHeader() implementation was affected by a similar problem: https://github.com/zlib-ng/zlib-ng/pull/1328
Also similarly, most client code will be unaffected because `state->head` will be NULL, because they (most client code) won't have used inflateGetHeader() at all.
-
Git’s database internals II: commit history queries
I wonder if zlib-ng would make a difference, since it has a lot of optimizations for modern hardware.
https://github.com/zlib-ng/zlib-ng/discussions/871
-
Computing Adler32 Checksums at 41 GB/s
zlib-ng also has adler32 implementations optimized for various architectures: https://github.com/zlib-ng/zlib-ng
Might be interesting to benchmark their implementation too to see how it compares.
-
Convenient CPU feature detection and dispatch in the Magnum Engine
zlib-ng: https://github.com/zlib-ng/zlib-ng/blob/develop/functable.c
-
games-emulation/dolphin-9999 is failing to build because devs switched to minizip-ng and zlib uses minizip. I'm not sure how to get it to build now, details in post.
(2) There are many packages that rely upon zlib and minizip and switching those underlying dependencies is easier said than done. We can't drop zlib completely and switch: "The idea of zlib-ng is not to replace zlib, but to co-exist as a drop-in replacement with a lower threshold for code change." - https://github.com/zlib-ng/zlib-ng
-
Re: Zlib memory corruption on deflate (i.e. compress)
There are already active zlib forks (e.g. https://github.com/zlib-ng/zlib-ng), the problem is with having people move to them. It takes a lot of effort to move mindshare from the original version to a fork, there's some historical examples of it happening, but not a ton.
What are some alternatives?
PDF-Writer - High performance library for creating, modiyfing and parsing PDF files in C++
zstd - Zstandard - Fast real-time compression algorithm
p7zip - A new p7zip fork with additional codecs and improvements (forked from https://sourceforge.net/projects/sevenzip/ AND https://sourceforge.net/projects/p7zip/).
ZLib - A massively spiffy yet delicately unobtrusive compression library.
clawPDF - Open Source Virtual (Network) Printer for Windows that allows you to create PDFs, OCR text, and print images, with advanced features usually available only in enterprise solutions.
Minizip-ng - Fork of the popular zip manipulation library found in the zlib distribution.
xdelta - open-source binary diff, delta/differential compression tools, VCDIFF/RFC 3284 delta compression
libdeflate - Heavily optimized library for DEFLATE/zlib/gzip compression and decompression
mcm - MCM file compressor
brotli - Brotli compression format
qpdf-rs - Rust bindings for QPDF C++ library
uzlib - Radically unbloated DEFLATE/zlib/gzip compression/decompression library. Can decompress any gzip/zlib data, and offers simplified compressor which produces gzip-compatible output, while requiring much less resources (and providing less compression ratio of course).