docs: clarify level 0/1 filter heuristic

This commit is contained in:
kyc001 2026-02-26 00:01:27 +08:00
parent ea9caac249
commit c081f1f873

View file

@ -13,8 +13,8 @@ Options:
compression. Lower levels are faster, higher levels provide better compression, though compression. Lower levels are faster, higher levels provide better compression, though
with increasingly diminishing returns. with increasingly diminishing returns.
0 => --zc 5 --fast (filter chosen heuristically) 0 => --zc 5 --fast (single filter, chosen heuristically)
1 => --zc 10 --fast (filter chosen heuristically) 1 => --zc 10 --fast (single filter, chosen heuristically)
2 => --zc 11 -f 0,1,6,7 --fast 2 => --zc 11 -f 0,1,6,7 --fast
3 => --zc 11 -f 0,7,8,9 --brute-level 1 --brute-lines 3 3 => --zc 11 -f 0,7,8,9 --brute-level 1 --brute-lines 3
4 => --zc 12 -f 0,7,8,9 --brute-level 1 --brute-lines 4 4 => --zc 12 -f 0,7,8,9 --brute-level 1 --brute-lines 4
@ -22,6 +22,13 @@ Options:
6 => --zc 12 -f 0-9 --brute-level 5 --brute-lines 8 6 => --zc 12 -f 0-9 --brute-level 5 --brute-lines 8
max => (stable alias for the maximum level) max => (stable alias for the maximum level)
For levels 0 and 1, the heuristic currently chooses exactly one filter based on bit depth:
bit depth >= 8 => Bigrams (7)
bit depth < 8 => None (0)
Since only one filter is enabled by default at these levels, '--fast' is usually a no-op
unless you manually enable additional filters, e.g. '-o0 -f 0,7'.
Manually specifying a compression option (zc, f, etc.) will override the optimization Manually specifying a compression option (zc, f, etc.) will override the optimization
preset, regardless of the order you write the arguments. preset, regardless of the order you write the arguments.
@ -137,6 +144,9 @@ Options:
Perform a fast compression evaluation of each enabled filter, followed by a single main Perform a fast compression evaluation of each enabled filter, followed by a single main
compression trial of the best result. Recommended if you have more filters enabled than compression trial of the best result. Recommended if you have more filters enabled than
CPU cores. CPU cores.
On preset levels 0 and 1 this is typically a no-op, because only one filter is enabled
by default at those levels.
--zc <level> --zc <level>
Deflate compression level (0-12) for main compression trials. The levels here are defined Deflate compression level (0-12) for main compression trials. The levels here are defined