Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.compression > #2285 > unrolled thread

BWTS in Free Pascal

Started byjacko <jackokring@gmail.com>
First post2014-04-18 05:09 -0700
Last post2014-04-18 13:46 -0700
Articles 2 — 1 participant

Back to article view | Back to comp.compression


Contents

  BWTS in Free Pascal jacko <jackokring@gmail.com> - 2014-04-18 05:09 -0700
    Re: BWTS in Free Pascal jacko <jackokring@gmail.com> - 2014-04-18 13:46 -0700

#2285 — BWTS in Free Pascal

Fromjacko <jackokring@gmail.com>
Date2014-04-18 05:09 -0700
SubjectBWTS in Free Pascal
Message-ID<59c1d2cc-09eb-40a1-b05e-a39c9002252d@googlegroups.com>
Well I've converted it, without the buffer index problem (search for || in the C source, and think about the for index), and added some simple but untested routines.

After BWTS I do delta coding. This makes all symbol runs into the symbol zero as a run, by storing each except the first as a delta from the last. This effectively does a lot of what MTF does. Then I do zero run length encoding (ZRLE). This just passes through any character except symbol zero, which is run length encoded by a one byte length, and the pattern zero zero is the block terminator.

It is as yet an untested unit. Inquire for details.

[toc] | [next] | [standalone]


#2290

Fromjacko <jackokring@gmail.com>
Date2014-04-18 13:46 -0700
Message-ID<bc4e658a-75e5-4c7e-b2fa-1e5fa3da89fa@googlegroups.com>
In reply to#2285
Think "run of x" => "(run - 1) of 0" by calculating deltas, then doing a second BWTS before ZRLE encoding, you'd eventually reach a limit. The argument being that similar following context to different words which end the same is what causes oscillation between runs of zeros. As x maps almost to zero, and as RLE does not shrink a two byte run, then the saving of using ZRLE is not having to store run lengths for any other symbol but zero. MTF is also slower than simple delta of character calculation, and the general RLE process can introduce more data due to tracking infrequent value runs. The question then becomes, what advantage does the speed costly variable width symbol entropy post coding add?

[toc] | [prev] | [standalone]


Back to top | Article view | comp.compression


csiph-web