固实压缩的压缩率受到哪些因素影响?

2021-06-21 09:39:08 +08:00
 boycottangent

试了一下固实压缩(环境是 macOS,使用 keka )

第一次压缩 2.7G 的文件夹,压缩后得到 900M 的 7z 文件。第二次同样的参数压缩另一个 2.6G 的文件夹,这次得到的文件大小却是 1.3 G 的。第三次还是这么压缩,一个 1.6G 的文件夹被压缩到 1.3G 。

问题是为啥我用同样的压缩参数设置,每次的压缩率却差这么多?还有哪些因素会影响这个过程?而且影响作用这么明显?

1231 次点击
所在节点    问与答
7 条回复
BrettD
2021-06-21 09:45:58 +08:00
取决于被压缩文件本身的熵
AoEiuV020
2021-06-21 09:46:02 +08:00
? 最影响压缩率的不是文件内容本身么,
你可以试试,创建一个 10G 大小内容全是 0 的文件,随便什么压缩算法,压缩率都远低于 1%的,
boycottangent
2021-06-21 09:57:50 +08:00
@BrettD
@AoEiuV020
我可以通俗理解为文件内容本身的大小吗,如果文件越大,压缩率就越低?对于文件夹来说,单个文件的平均大小越大,压缩率就会越低?
YvesX
2021-06-21 10:07:35 +08:00
boycottangent
2021-06-21 10:45:13 +08:00
@YvesX 大致明白了,所以其实还是得看文件内容,我还希望可以通过一定的设置让每一次的压缩率能高一点
NewYear
2021-06-21 10:52:08 +08:00
@boycottangent

熵是文件信息的复杂程度,一般自带压缩的格式,都已经压缩过一遍了,熵的复杂度高,无损的情况下是根本没多大可能压缩到更小的。

有损的话,文件就坏掉了。
boycottangent
2021-06-21 10:57:05 +08:00
@NewYear 其实我三次都是在压缩 WAV 格式的音频,本身是未压缩的编码格式。不过三次的压缩率差异实在太大导致我怀疑可能有其他原因。。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/784712

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX