diff --git a/src/lzsa.c b/src/lzsa.c index 4d4a49d..0d85cf8 100755 --- a/src/lzsa.c +++ b/src/lzsa.c @@ -47,7 +47,7 @@ #define OPT_FAVOR_RATIO 4 #define OPT_RAW_BACKWARD 8 -#define TOOL_VERSION "1.0.9" +#define TOOL_VERSION "1.1.0" /*---------------------------------------------------------------------------*/ diff --git a/src/shrink_block_v1.c b/src/shrink_block_v1.c index a13f27d..c785f70 100644 --- a/src/shrink_block_v1.c +++ b/src/shrink_block_v1.c @@ -181,7 +181,7 @@ static void lzsa_optimize_forward_v1(lzsa_compressor *pCompressor, const int nSt } if (!nFavorRatio && nNumLiterals == 1) - nCodingChoiceCost += MODESWITCH_PENALTY * 3; + nCodingChoiceCost += MODESWITCH_PENALTY; lzsa_arrival *pDestArrival = &arrival[((i + 1) << MATCHES_PER_OFFSET_SHIFT)]; if (pDestArrival->from_slot == 0 || @@ -224,7 +224,7 @@ static void lzsa_optimize_forward_v1(lzsa_compressor *pCompressor, const int nSt int exists = 0; if (!nFavorRatio && !arrival[(i << MATCHES_PER_OFFSET_SHIFT) + j].num_literals) - nCodingChoiceCost += MODESWITCH_PENALTY * 3; + nCodingChoiceCost += MODESWITCH_PENALTY; for (n = 0; n < 3 && arrival[((i + k) << MATCHES_PER_OFFSET_SHIFT) + n].from_slot && arrival[((i + k) << MATCHES_PER_OFFSET_SHIFT) + n].cost <= nCodingChoiceCost; diff --git a/src/shrink_block_v2.c b/src/shrink_block_v2.c index a1e2a59..13e721d 100644 --- a/src/shrink_block_v2.c +++ b/src/shrink_block_v2.c @@ -213,7 +213,7 @@ static void lzsa_optimize_forward_v2(lzsa_compressor *pCompressor, const unsigne } if (!nFavorRatio && nNumLiterals == 1) - nCodingChoiceCost += MODESWITCH_PENALTY * 3; + nCodingChoiceCost += MODESWITCH_PENALTY; int exists = 0; for (n = 0; @@ -284,7 +284,7 @@ static void lzsa_optimize_forward_v2(lzsa_compressor *pCompressor, const unsigne int exists = 0; if (!nFavorRatio && !arrival[(i << MATCHES_PER_OFFSET_SHIFT) + j].num_literals) - nCodingChoiceCost += MODESWITCH_PENALTY*3; + nCodingChoiceCost += MODESWITCH_PENALTY; for (n = 0; n < NMATCHES_PER_OFFSET && pDestSlots[n].from_slot && pDestSlots[n].cost <= nCodingChoiceCost; diff --git a/src/shrink_context.h b/src/shrink_context.h index 05542b2..a63ddac 100644 --- a/src/shrink_context.h +++ b/src/shrink_context.h @@ -58,7 +58,7 @@ extern "C" { #define LAST_MATCH_OFFSET 4 #define LAST_LITERALS 1 -#define MODESWITCH_PENALTY 1 +#define MODESWITCH_PENALTY 3 /** One match */ typedef struct _lzsa_match {