【问题标题】:Compression algorithm for files smaller than 10MB with largest compression ratio小于10MB文件压缩率最大的压缩算法
【发布时间】:2013-05-18 16:49:29
【问题描述】:

我可以使用什么无损压缩算法来压缩小于 10MB 的文件,从而提供最大的压缩比?

它是否会花费大量的 CPU 周期或内存并不重要。

【问题讨论】:

  • 如果您对此事有更好的建议或其他信息或想法,请回答。

标签: file compression comparison


【解决方案1】:

我看过 LZMA 和 PAQ8。 LZMA 是一种流行的算法,在特定设置下具有非常不错的压缩率。它被 7zip 使用,它的 Java 和 C 库很容易访问。

另一方面,PAQ8 在我读过的大多数基准测试(尤其是http://www.maximumcompression.com)上都优于 LZMA,但牺牲了 CPU 和内存。我觉得 PAQ​​8 更适合我的需求,但它似乎仍处于开发阶段且不稳定(而且我找不到它们的源代码,因此我可以在 C 或 Java 上实现它)

【讨论】:

  • paq8 一直在不断更新和改进,但与稳定性关系不大。基本上,添加了新模型并修复了影响压缩速度的小错误。过去 10-13 年所有版本的来源都在 PAQ8 作者的网站上 - mattmahoney.net/dc/#paq
【解决方案2】:

看看xrt 3.2。应该是稳定的。

【讨论】: